SVM、変数相互作用およびトレーニングデータの適合


12

2つの一般的/より理論的な質問があります。

1)予測モデルを構築するときに、SVMが変数の相互作用をどのように処理するか興味があります。たとえば、f1とf2の2つの機能があり、ターゲットがf1、f2に依存し、f1 * f2(または何らかの関数h(f1、f2))に依存する場合、SVMは適合します(OOSだけでなくトレーニングデータにも)フィーチャにf1、f2、h(f1、f2)を含めると、f1とf2を含めるだけで改善されますか?SVMアルゴリズムは機能の相互作用を処理しますか?SVMがより高次元の空間で超平面を作成しようとする方法と同じように思えますが、質問したいとは思いません。

2)トレーニングデータにSVMをフィッティングするとき、十分な機能と最適なパラメーター(ブルートフォース検索など)を見つけると、SVMは常にトレーニングデータに簡単に適合しますか?正しいことを言ったかどうかはわかりませんが、基本的に、フィーチャに十分な分散/ノイズがある場合、SVMは常にトレーニングデータに100%適合しますか?逆に、SVMがトレーニングデータに100%適合しない場合、データにキャプチャされていないターゲット変数に影響する情報(または他の機能)があることを意味しますか?

ありがとう

小さな説明。カーネルSVMを具体的に参照しています

回答:


8

highBandwidthが示唆するように、それは線形SVMを使用するか、非線形SVMを使用するかによって異なります(カーネルが使用されない場合は慎重になります。SVMではなく最大マージン線形分類器です)。

最大マージン線形分類器は、他の線形分類器と違いはありません。データ生成プロセスが属性間に相互作用があることを意味する場合、それらの相互作用項を提供するとパフォーマンスが向上する可能性があります。最大マージン線形分類器はむしろリッジ回帰に似ていますが、過適合を避けるように設計されたペナルティ項にわずかな違いがあり(正則化パラメーターに適切な値が与えられる)、ほとんどの場合、リッジ回帰と最大マージン分類器は同様のパフォーマンスを提供します。

Kバツバツ=バツバツ+cddc

nn1次元平面は、超平面によって粉砕されます(任意の方法で分離されます)(VC次元を参照)。これを行うと、通常、過度のフィッティングが発生するため、避ける必要があります。最大マージン分類のポイントは、可能な限り最大の分離が達成されることを意味するペナルティ項を追加することにより、この過剰適合を制限することです(誤分類を生成するには、トレーニング例から最大の逸脱が必要です)。これは、過剰適合を過度に発生させることなく、データを非常に高次元の空間(線形モデルが非常に強力な場所)に変換できることを意味します。

Kバツバツ=expγバツバツ2

ただし、これはストーリーの一部にすぎません。実際には、一般的にソフトマージンSVMを使用します。この場合、マージン制約の違反が許可され、マージンを最大化することとのトレードオフを制御する正則化パラメーターがあります(これは、リッジ回帰)とスラック変数の大きさ(トレーニングサンプルの損失に似ています)。次に、リッジ回帰の場合と同様に、正則化パラメーターを調整することにより、たとえば交差検証エラー(またはleave-one-outエラーの限界)を最小化することにより、過剰適合を回避します。

したがって、SVM はトレーニングセットを簡単に分類できますが、通常は正規化とカーネルパラメーターが適切に選択されていない場合にのみ分類します。カーネルモデルで良好な結果を達成するための鍵は、適切なカーネルを選択し、次にカーネルと正則化パラメーターを調整して、データの過不足を回避することにあります。


ありがとう、ディクラン。それは非常に詳細で役に立ちました。質問に対する答えは理解できたと思います。簡単なフォローアップ。SVMに適切なカーネルを選択するにはどうすればよいですか?正則化/カーネルパラメーターに似ていますか(たとえば、相互検証による)。または、選択の理論的根拠はありますか?rbfカーネルがSVMを普遍的な近似器にする場合、カーネルの選択は調整するもう1つのパラメーターであると思いますが、確かではありません。おそらく言うことができるように、私はこれにかなり新しいです。
トマス

カーネルの選択は、多くの場合、問題の専門知識を分類器に組み込む良い方法です。たとえば、手書き文字認識システムの場合、画像の小さな回転や変換に不変なカーネルを使用したいでしょう。カーネルの自動選択は、相互検証(これは私が行うことです)またはleave-one-outエラーの限界(SVMに対して効率的に実行できます)によって実現できます。ただし、データセットが小さい場合、相互検証エラーをオーバーフィットするため、相互検証によるカーネルの選択が難しい場合があります。
ディクラン有袋類

多くのアプリケーションでは、線形カーネルまたはRBFカーネルがデフォルトの選択肢として適切であり、より広い範囲のカーネルを探索することから得られるものは比較的少ないことがよくあります(問題に関する専門知識がない場合)。
ディクラン有袋類

1

答えは、リニアSVMを使用しているかカーネルSVMを使用しているかによって異なります。線形SVMでは、提供する機能のみを使用し、相互作用は考慮しません。カーネルSVMでは、基本的に、選択したカーネルに応じて、さまざまな機能を使用しています。分離する超平面がある場合、つまりsgn=1Kβバツβ0 クラスを決定します β{12K}特徴である場合は、トレーニングデータを完全に適合させることができます。通常、機能は指定しませんが、カーネルを指定しますK それは次の機能に関連しています Kバツ1バツ2==1Kβバツ1βバツ2。カーネルヒルベルト空間の再現を検索します。

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