サポートベクターの数とフィーチャの数の関係


12

特定のデータセットに対してSVMを実行し、次の観察を行いました。分類器を構築するための機能の数を変更すると、結果のサポートベクトルの数も変更されます。

この種のシナリオを説明する方法を知りたいです。


これらの追加機能のタイプとスタイルは何でしたか?既存の機能の類似のバリエーション、または追加の解決力があると思われるいくつかの新しい機能はどこにありますか?
フィリップオークリー

これはドキュメント分類の問題であり、追加機能は単なる単語です。機能スペースを構築するためにunigramを使用しました。
user3269

変更を行った@marcの答えを考えると、ベクトルの数は特徴の数とともに増加し、またはその逆でした。
フィリップオークリー

@フィリップ、私の元の応答は間違っていました。編集された答えは今では正確だと思います。
マークシェイバーズ

回答:


13

SVMが解決する最適化問題を見ると:

minw,ξ,b{12w2+Ci=1nξi}

ST 全てのために、私は= 1 ... Nyi(wxib)1ξi,    ξi0,i=1,n

サポートベクトルは、それらのある対応ξ I > 0。言い換えれば、それらは誤分類されているか、境界に近いデータポイントです。xiξi>0

機能の完全なセットがあるとき、この問題に対する解決策を、いくつかの機能を捨てる場合と比較してみましょう。機能を破棄することは機能的に機能を維持することと同等ですが、破棄したい機能jにを追加します。 wj=0j

これら2つの最適化問題を比較し、数学を調べてみると、機能の数とサポートベクターの数の間に強い関係はないことがわかります。どちらの方向にも行くことができます。

簡単なケースを考えると便利です。負の特徴と正の特徴がそれぞれ(-1、-1)と(1,1)の周りに集まっており、3つのサポートベクトルを持つ対角分離超平面で分離可能な2次元の場合を想像してください。ここで、y軸機能をドロップすると、データがx軸に投影されるようになります。データがまだ分離可能である場合、たとえばx = 0の場合、各側に1つずつ、2つのサポートベクトルしか残されないため、yフィーチャを追加するとサポートベクトルの数が増えます。ただし、データが分離できなくなった場合、x = 0の間違った側にある各ポイントに対して少なくとも1つのサポートベクトルが得られます。この場合、yフィーチャを追加するとサポートベクトルの数が減ります。

したがって、この直感が正しい場合、非常に高次元の特徴空間で作業している場合、または高次元の特徴空間にマップするカーネルを使用している場合、データは分離可能になる可能性が高いため、特徴を追加する傾向があります別のサポートベクターを追加するだけです。一方、データが現在分離可能ではなく、分離性を大幅に改善する機能を追加すると、サポートベクターの数が減少する可能性が高くなります。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.