Support Vector Machineは不均衡なデータセットを処理しますか?


14

SVMは不均衡なデータセットを処理しますか?不均衡なデータセットを処理するパラメーター(Cや誤分類コストなど)はありますか?


1
データセットを「不均衡」にするのはなぜですか?
whuber

1
@whuberクラスの普及率が大きく異なる分類データセットは、しばしば不均衡と呼ばれます。
マーククレセン14年

1
@Marcそれは一般的に真実かもしれませんが、あいまいな概念です。「大きく変化する」とはいくらですか?特定の特別な状況を除いて、なぜそれが重要なのでしょうか?この質問の提案者が意味することを「不均衡」によって意味することを学ぶことは、意図された意味に関する知的な推測を受け入れるよりも重要だと思います。
whuber

@whuber不均衡なデータセットは、機械学習の一般的な概念です。たとえば、スパム検出などのためのアプリケーションの観点から。おそらく、確率ではなく誤分類エラーを対象とするアルゴリズムの優位性のため。これにより、エラーの重み付けが問題になります。
seanv507 14年

2
説明をありがとう、@ seanv。用語の問題は、実際には「ハンドル」は「適用できる」ということではなく、(1)予測パフォーマンスが大きく影響されるような少数派のクラスがあるという設定を暗示しているようです。他のクラスの存在、(2)少数派クラスの正確な予測が重要です。その意味では、「不均衡なデータセット」は問題のかなり不完全な説明ですが、この用語は何らかの通貨を獲得したように見えるため、文句を言うのは無意味です。
whuber

回答:


18

不均衡なデータセットの場合、通常、クラスごとに誤分類のペナルティを変更します。これはクラスウェイトSVMと呼ばれ、以下を最小限に抑えます。

wbξ=1Nj=1Nααjyyjκバツバツj+CposPξ+CnegNξstyj=1Nαjyjκバツバツj+b1ξ=1Nξ0=1N

ここで、Nはポジティブ/ネガティブトレーニングインスタンスを表します。標準のSVM では、Cの値は1つしかありませんが、現在は2です。マイノリティクラスの誤分類ペナルティは、マジョリティクラスよりも大きくなるように選択されています。PNC

このアプローチはかなり早い時期に導入されました。たとえば1997年の論文で言及されています。

エドガー・オスナ、ロバート・フロイント、フェデリコ・ギロシ。サポートベクターマシン:トレーニングとアプリケーション。テクニカルレポートAIM-1602、1997。(pdf

基本的に、これはマイノリティクラスのオーバーサンプリングと同等です。たとえば、これはすべてのポジティブを2回トレーニングセットに含めた後、C = C n e gで標準SVMをトレーニングすることと完全に同等です。Cpos=2CnegC=Cneg


クール、ありがとう!それに加えて、ロジスティック回帰、ネイビーベイ、ディシジョンツリーはそのような不均衡の問題を処理しますか?
RockTheStar 14年

ロジスティック回帰は確かに行いますが、ポジティブパターンとネガティブパターンの可能性に異なる重みをかけるだけです。
ディクランマースピアル14

ロジスティック回帰とSVMは固有の方法を提供します。私はこれらの他のすべてのメソッドについて心からは知りませんが、マイノリティクラスのオーバーサンプリングはほとんどすべてのメソッドで機能します(ただし、数学的には正確ではありません)。
マーククレセン14年

1
@Dikranに感謝します。Marc:はい、簡単なオーバーサンプリングは一般的に機能します。ただし、これは状況によって異なります。何が起こるかというと、少数派をオーバーサンプリングする際に、少数派データに「重み」を追加するということです(同じ場所に少数派ポイントを繰り返し複製します)。これは、基本的に少数の例の「考慮」を改善するのに役立ちます。ただし、分類の決定境界はかなり緊張します(十分に一般的ではありません)。つまり、過剰適合が発生する可能性があります。したがって、SMOTEのようないくつかの確率的サンプリング手法を考慮する必要があります。
RockTheStar 14年

10

SVMは、クラス頻度が不均衡なデータセットを処理できます。多くの実装では、正のクラスと負のクラスのスラックペナルティ(C)に異なる値を設定できます(これは、クラスの頻度を変更することに相当します)。クラス頻度が運用上の使用で予想される頻度であるテストセットで一般化パフォーマンスを最大化するために、これらのパラメーターの値を設定することをお勧めします。

私はこの上で論文を書いた多くの人々の一つであった、ここにある鉱山は、私はより良い/より最新のものを見つけることができれば、私が表示されます。Veropoulos、Campbell、Cristianini(1999)をお試しください


Dikranはなぜそれが漸近的に等価なのか...確かに異なるクラスエラーに異なる重みを付けるのとまったく同じですか?
seanv507 14年

これはクラスエラーの重み付けとまったく同じですが、データのリサンプリングとは異なります(開始時の重みは連続的に変化しますが、データは離散的です)。これは漸近的な期待値の結果の1つです(ほとんどの状況では特に有用ではないようです)。
ディクランマースピアル14
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.