かなり不均衡なデータにSVMを使用して予測モデルを構築しようとしています。私のラベル/出力には、ポジティブ、ニュートラル、ネガティブの3つのクラスがあります。ポジティブな例では、データの約10〜20%、ニュートラルでは約50〜60%、ネガティブでは約30〜40%になります。クラス間の誤った予測に関連するコストが同じではないため、クラスのバランスをとろうとしています。1つの方法は、トレーニングデータをリサンプリングし、元のデータセットよりも大きい、均等にバランスのとれたデータセットを作成することでした。興味深いことに、そうすると、他のクラスの予測が良くなる傾向があります(たとえば、データのバランスをとると、陽性クラスの例の数が増えましたが、サンプルの予測では、陰性クラスの方が優れていました)。誰もがこれが発生する理由を一般的に説明できますか?ネガティブクラスの例の数を増やすと、サンプルの予測外(たとえば、より良い予測)でポジティブクラスのようなものを取得できますか?
また、誤った分類に異なるコストを課すか、LibSVMでクラスの重みを使用することによって、不均衡なデータに対処する方法に関する他の考えにも非常にオープンです(適切に選択/調整する方法はわかりません)。