SVMをフィッティングするときに二重の問題に悩まされるのはなぜですか?


50

与えられたデータ点はとラベルY 1... Y N{ - 1 1 }、ハードマージンSVMプライマル問題ですx1,,xnRdy1,,yn{1,1}

s.t.

minimizew,w012wTw
s.t.i:yi(wTxi+w0)1

これは、i制約に対して最適化される変数を含む2次プログラムです。デュアルd+1i

S。T.

maximizeαi=1nαi12i=1nj=1nyiyjαiαjxiTxj
と次のプログラムである N + 1つのために最適化すべき変数と N不等式及び nは等式制約。
s.t.i:αi0i=1nyiαi=0
n+1nn

ハードマージンSVMを実装するとき、なぜ主問題の代わりに二重問題を解決するのですか?根本的な問題は私にとってより「直観的」に見え、二元性のギャップ、Kuhn-Tuckerの状態などについて心配する必要はありません。

それは場合は、二重の問題を解決するために私には理にかなってが、私はより良い理由があると思います。これは事実ですか?dn


26
簡単な答えはカーネルです。長い答えはkeeerneeels(-;

二重問題の最も重要なことは、元のデータをより高い次元の空間にマッピングすることを目指して、カーネルトリックを導入することです。
BigeyeDestroyer

回答:


40

@ user765195の回答で参照されている講義ノートに基づいて(ありがとう!)、最も明白な理由は次のように思われます:

wαixwTxd

αiαi=0x

wTx+w0=(i=1nαiyixi)Tx+w0=i=1nαiyixi,x+w0

サポート項が少ない場合、この項は非常に効率的に計算されます。さらに、データベクトルのみを含むスカラー積があるため、カーネルトリックを適用できます


6
待って待って。2つのサポートベクトルx1とx2があるとします。あなたは2つより少なくすることはできませんよね?<x1、x>および<x2、x>の計算は<w、x>より速いと言っていますか?
レオ

1
@Leo:とを使用<x1, x>していることに注意してくださいwTx。前者は、カーネル評価K(x1、x)のシンボルとして使用され、x1とxを非常に高次元の空間に射影し、射影された値のスカラー積を暗黙的に計算します。後者は通常のスカラー積であるためwx明示的に投影する必要があり、スカラー積は明示的に計算されます。カーネルの選択によっては、1回の明示的な計算で多くのカーネル評価よりもはるかに多くの計算が必要になる場合があります。
-blubb

1
ααα

2
「さらに、データベクトルのみが関係するスカラー積があるため、カーネルトリックを適用できます。」-それはまた、主定式化にも当てはまります。
Firebug

2
@Firebugからのコメントの詳細が必要な場合は、lib.kobe-u.ac.jp / repository / 90001050.pdf(primalの制約のないバージョン)の式10-12を確認してください。
MrDrFenner

13

13ページの2番目の段落と、これらのメモでそれを進める議論を読んでください。

http://cs229.stanford.edu/notes/cs229-notes3.pdf


17
これは非常に参考になり、明らかに質問に答えます。ここで答えをまとめることができれば、あなたの返事はもっと感謝されると思います:それはこのスレッドを単独で立たせます。
whuber

3

デュアル最適化が数値最適化の観点から魅力的である理由の1つを次に示します。詳細については、次のペーパーを参照してください。

Hsieh、C.-J.、Chang、K.-W.、Lin、C.-J.、Keerthi、SS、and Sundararajan、S.、「大規模線形SVMのデュアル座標降下法」、Proceedings of the第25回機械学習に関する国際会議、ヘルシンキ、2008年。

二重定式化には、単一のアフィン等式制約とn個の境界制約が含まれます。

1.アフィン等式制約は、二重定式化から「排除」できます。

これは、R ^(d + 1)にR ^ dを埋め込むことで、R ^(d + 1)のデータを見るだけで、各データポイントに単一の "1"座標を追加することで、R ^ d ----> R ^(d + 1):(a1、...、ad)| --->(a1、...、ad、1)。

トレーニングセットのすべてのポイントに対してこれを行うと、R ^(d + 1)の線形分離性問題が再生成され、分類器から定数項w0が削除され、双対からアフィン等式制約が削除されます。

2.ポイント1により、双対は、制約が束縛制約のみである凸二次最適化問題として簡単にキャストできます。

3.双対問題は、O(log(1 / epsilon))でイプシロン最適解を生成する双対座標降下アルゴリズムを介して効率的に解決できるようになりました。

これは、1つを除くすべてのアルファを修正すると、閉じた形式のソリューションが得られることに注意することによって行われます。次に、すべてのアルファを1つずつ循環させます(たとえば、ランダムに1つを選択し、他のすべてのアルファを修正し、閉形式解を計算します)。このようにして、「最適な状態に近い」ソリューションを「かなり早く」取得できることを示すことができます(前述の論文の定理1を参照)。

二重問題が最適化の観点から魅力的である理由は他にもたくさんあります。アフィン等式制約が1つしかないという事実を活用するものもあります(remaing制約はすべて束縛された制約です)。二重問題の「ほとんどのアルファ」はゼロです(サポートベクトルに対応するゼロ以外のアルファ)。

Computational Learning Workshop(2009)でのStephen Wrightのプレゼンテーションから、SVMの数値最適化に関する考慮事項の概要を把握できます。

PS:私はここに新しいです。このウェブサイトで数学表記を使用するのが得意ではないことをおApびします。


1
数学typsettingを使用する方法についての情報はここにある:math.meta.stackexchange.com/questions/5020/...
復活モニカ

-5

Andrew ngの講義ノートでの私の意見では、1 // || w ||の主な問題は凸でない問題であることが明確に言及されました。双対は凸問題であり、常に最適な凸関数を見つけるのは簡単です。


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