0

私のデータセットには2つのクラスがあります。非関心のものは90%、興味のクラスは約10%です。分類1つのクラスに向かって精度を最適化しますか?

私は既に1回だけでなく、バ​​ランスの取れたセット(例えば10セット)のリッチサンプリングを行っています。最終的な予測結果を得るために多数決を行う。多くのモデルを比較した結果、ツリーが最良の結果をもたらします。そして、私はすでに重要度スコアに基づいて最も重要な機能を選んでいます。

全体的な精度は75%ではありませんが、私が興味を持っているクラスの精度はわずか30%です。これは良くありません。ターゲットクラスの精度に合わせて最適化を行う方法は? Rのctreeパッケージの背後にあるアルゴリズムは、全体的な精度に向けて最適化を行うことだと思います。私もsvmのようなワンクラスの分類を試みましたが、うまくいかなかったのです。 BTW、私はRとPythonの両方を使用しました。しかし私は私の問題については関連するパッケージを見つけることはできません。興味のあるクラスの精度を最適化する独自のツリーアルゴリズムを作成する必要がありますか?ありがとう。

答えて

0

体重クラスにあなたに能力を与えるモデルがたくさんあります。これは一般にオーバーサンプリングより優れており、目的を直接的に変えるので、人工的にモデルを過体重にすることはありません。あなたがpythonを使用し、ツリーベースのアプローチのような場合、scikit-learnのランダムフォレストにはクラスウェイト機能があり、少数派クラスに比べて、目的の精度が得られない限り、単純に過体重になります。

+0

一般に、重み付けクラスはリサンプリングと同じことをしますか?だから私はオーバーサンプリングのステップをスキップし、不均衡なデータセットで直接モデルを構築し、重みを追加しますか? –

+0

いいえ、リサンプリングはスキューがあり、重み付けをサポートするモデルには使用しないでください。彼らは似ていますが同じではありません。アンダーサンプリングは重みの近似ですが、近似のみです。基本的な形でのオーバサンプリングもほぼ近似しており(特にいくつかの中間的な方法では)、一部のオーバーサンプラーは人工サンプル – lejlot

関連する問題