SVM用のカーネルを選択する方法は?


95

SVMを使用する場合、カーネルを選択する必要があります。

カーネルを選択する方法を疑問に思います。カーネル選択の基準はありますか?


問題の大きさは何ですか?(#変数、観測)?
user603

私は一般的な解決策、指定されていない特定の問題を求めています
xiaohan2012

回答:


54

カーネルは事実上類似性の尺度であるため、Robin(+1)が示唆する不変性の事前知識に従ってカーネルを選択するのは良い考えです。

専門知識がない場合は、放射基底関数カーネルが適切なデフォルトカーネルを作成します(非線形モデルを必要とする問題であることが判明したら)。

カーネルお​​よびカーネル/正規化パラメーターの選択は、相互検証ベースのモデル選択を最適化する(または半径マージンまたはスパン境界を使用する)ことで自動化できます。最も簡単なことは、Nelder-Meadシンプレックス法を使用して連続モデル選択基準を最小化することです。この方法は、勾配計算を必要とせず、適切な数のハイパーパラメーターに対して適切に機能します。調整するハイパーパラメーターがいくつかある場合、モデル選択基準の分散のために、自動化されたモデル選択により深刻な過剰適合が生じる可能性があります。勾配ベースの最適化を使用することは可能ですが、パフォーマンスを向上させることは通常、コーディングするだけの価値はありません)。

カーネルお​​よびカーネル/正規化パラメーターの自動選択は、モデル選択基準(通常は相互検証ベース)を非常に簡単にオーバーフィットするため、扱いにくい問題であり、当初よりも悪いモデルになる可能性があります。自動化されたモデル選択はパフォーマンス評価にバイアスをかけることもあるため、パフォーマンス評価でモデルの適合プロセス全体(トレーニングとモデル選択)を評価してください。詳細については、

GC CawleyおよびNLC Talbot、ハイパーパラメータのベイズ正則化によるモデル選択の過剰適合の防止、Journal of Machine Learning Research、第8巻、841〜861ページ、2007年4月。(pdf)

そして

GC CawleyとNLC Talbot、モデル選択の過剰適合とパフォーマンス評価におけるその後の選択バイアス、Journal of Machine Learning Research、vol。11、pp。2079-2107、2010年7月。(pdf)


放射状基底は、互いに遠く離れたベクトルではほぼ0であり、同一のベクトルで最大に達するため、どのように類似性の尺度であるかがわかります。しかし、その考えが線形アルゴリズム(カーネルとしてドット積を使用)にどのように適用されるかはわかりません。ドット積を類似性の尺度としてどのように解釈できますか?
Bananin

@Bananinドット積は、2つのベクトルの大きさの積とそれらの間の角度のコサインの積として記述できるため、ベクトルの方向に関して類似性を測定するものと考えることができます(ただし明らかに依存しますその大きさについて)
ディクラン・マースピアル

34

最適なものがわからない場合は、自動選択技術(クロス検証など)を使用できます。この場合、異なるカーネルで取得した分類器の組み合わせ(問題が分類の場合)を使用することもできます。

ただし、カーネルを使用する「利点」は、通常の「ユークリッド」ジオメトリを変更して、自分の問題に合うようにすることです。また、あなたの問題に対するカーネルの興味、問題の幾何学に特有なものを本当に理解しようとするべきです。これには次のものが含まれます。

  • 不変性:問題を根本的に変えない家族的な変換がある場合、カーネルはそれを反映する必要があります。回転による不変性はガウスカーネルに含まれていますが、他の多くのことを考えることができます:変換、ホモセティ、任意のグループ表現、....
  • 良いセパレータとは何ですか?分類問題で適切なセパレーター(つまり、適切な分類ルール)が何であるかがわかっている場合は、これをカーネルの選択に含める必要があります。SVMがフォームの分類子を提供することを覚えておいてください

f^(x)=i=1nλiK(x,xi)

線形セパレーターが適切なものであることがわかっている場合は、アフィン関数を提供するカーネルを使用できます(つまり、)。滑らかなKNNの精神で滑らかな境界線の方が良いと思う場合は、ガウスカーネルを取ることができます...K(x,xi)=x,Axi+c


あなたの答えでは、「カーネルで作業することの「利点」は、自分の問題に合うように通常の「ユークリッド」ジオメトリを変更することであると述べました。あなたの問題について、あなたの問題の幾何学に特有のものは何か。」はじめにいくつかの参考文献を教えてください。ありがとう。
ライハナ

11

SVMのハイパーパラメータ選択は、グリッド検索と組み合わせた相互検証によって行われると常に感じています。


2
同じ気持ちがあります
xiaohan2012

2
グリッド検索は悪い考えです。パフォーマンスが悪いエリアでの検索に多くの時間を費やします。Nelder-Meadシンプレックス法などの勾配のない最適化アルゴリズムを使用します。これは、実際にははるかに効率的です(MATLABのfminsearch()など)。
ディクランMarsupial

いいえ、グラフィカルモデルまたはガウス過程を使用して、予想される情報と組み合わせてグローバルな最適化を行います。(、Bergstraら、今後のNIPS「をハイパーパラメータ最適化のためのアルゴリズム」を参照してください)
bayerj

2

一般に、RBFカーネルは合理的な最初の選択肢です。さらに、線形カーネルはRBFの特殊なケースです。特に、特徴の数が非常に大きい場合は、線形カーネルを使用するだけです。


1
データが直線的に分離可能かどうかによって決まります。次元の数ではありません。フィーチャの数が非常に多い場合(データに応じて)、PCAまたはLDA(線形または非線形カーネルバリアント)の次元削減を最初に適用します
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.