サポートベクターマシン(SVM)の仕組みと、線形パーセプトロン、線形判別分析、ロジスティック回帰などの他の線形分類器との違いは何ですか?*
(* アルゴリズム、最適化戦略、一般化機能、および実行時の複雑さの根本的な動機の観点から考えています)
サポートベクターマシン(SVM)の仕組みと、線形パーセプトロン、線形判別分析、ロジスティック回帰などの他の線形分類器との違いは何ですか?*
(* アルゴリズム、最適化戦略、一般化機能、および実行時の複雑さの根本的な動機の観点から考えています)
回答:
サポートベクターマシンは、区別するのが最も難しいポイントにのみ焦点を当てていますが、他の分類器はすべてのポイントに注意を払っています。
サポートベクターマシンアプローチの背後にある直感は、分類器が最も難しい比較(図2で互いに最も近いBとAのポイント)に優れている場合、分類器は簡単な比較でさらに優れていることです(互いに離れているBとAのポイントを比較する)。
パーセプトロンと他の分類器:
パーセプトロンは、一度に1つのポイントを取得し、それに応じて分割線を調整することによって構築されます。すべてのポイントが分離されると、パーセプトロンアルゴリズムは停止します。しかし、それはどこでも停止する可能性があります。図1は、データを区切るさまざまな分割線があることを示しています。パーセプトロンの停止基準は単純です:「ポイントを分離し、100%分離されたらラインの改善を停止します」。パーセプトロンは、最適な分離線を見つけるように明示的に指示されていません。ロジスティック回帰および線形判別モデルは、パーセプトロンと同様に構築されます。
最適な分割線は、Aに最も近いBポイントとBに最も近いAポイント間の距離を最大化します。これを行うためにすべてのポイントを見る必要はありません。実際、遠くにあるポイントからのフィードバックを組み込むと、以下に示すように、ラインが少し離れすぎます。
サポートベクターマシン:
他の分類器とは異なり、サポートベクターマシンは、最適な分離線を見つけるように明示的に指示されます。どうやって?サポートベクターマシンは、「サポートベクター」と呼ばれる最も近いポイント(図2)を検索します(「サポートベクターマシン」という名前は、ポイントがベクターのようなものであり、最適な線が「依存する」またはは、最も近いポイントで「サポート」されています)。
最も近いポイントが見つかると、SVMはそれらを接続する線を描画します(図2の「w」というラベルの線を参照)。ベクトル減算(ポイントA-ポイントB)を行うことにより、この接続線を描画します。次に、サポートベクターマシンは、最適な分離線を、接続線を二等分する、つまり垂直な線として宣言します。
サポートベクターマシンは、新しいサンプル(新しいポイント)を取得するときに、BとAを可能な限り互いに離す線をすでに作成しているため、波及する可能性が低いため、より優れています。相手の領土への線。
私は自分自身を視覚的な学習者と考えており、サポートベクターマシンの背後にある直感に長い間苦労しました。SVM ClassifiersのDuality and Geometryと呼ばれる論文は、ついに光を見るのに役立ちました。そこで画像を取得しました。
Ryan Zottiの答えは、決定境界の最大化の背後にある動機を説明します。carlosdcの答えは、他の分類器との類似点と相違点を示します。この回答では、SVMのトレーニング方法と使用方法の数学的概要を簡単に説明します。
以下では、スカラーはイタリック体の小文字(例:)、ベクトルは太字の小文字(例:)、およびイタリック体の大文字(例:)。はとの転置です 。 ‖ wの ‖ = W T W
させてください:
では、以下のように、1は、SVMの決定境界を表すことができます。
クラスは次のように決定されます。
より簡潔に書くことができます。
SVMは、2つの要件を満たすことを目的としています。
SVMは、2つの決定境界間の距離を最大化する必要があります。数学的には、これはで定義される超平面と定義される超平面の間の距離を最大化することを意味します。この距離はと等しくなります。これは、を解くことを意味します。同様に、 です。
SVMはすべてのも正しく分類する必要があります。つまり、
これは、次の2次最適化問題につながります。
これはハードマージンSVMです。この2次最適化問題は、データが線形に分離可能である場合に解を認めるからです。
いわゆるスラック変数 導入することにより、制約を緩和できます。トレーニングセットの各サンプルには独自のスラック変数があることに注意してください。これにより、次の2次最適化問題が得られます。
これがソフトマージンSVMです。は、エラー項のペナルティと呼ばれるハイパーパラメーターです。(線形カーネルを使用したSVMでのCの影響は?およびSVM最適パラメーターを決定するための検索範囲は?)
元の特徴空間をより高次元の特徴空間にマッピングする関数を導入することにより、さらに柔軟性を追加できます。これにより、非線形の決定境界が可能になります。二次最適化の問題は次のようになります。
二次最適化問題は、ラグランジュ双対問題と呼ばれる別の最適化問題に変換できます(前の問題はprimalと呼ばれます)。
この最適化の問題は、(いくつかの勾配を設定することにより)単純化できます:
は(代表定理で述べられているように)。
したがって、トレーニングセットのを使用してを学習します。
(FYI:SVMをフィッティングするときに二重の問題に悩まされるのはなぜですか?簡単な答え:より高速な計算+カーネルトリックの使用が可能になります。
一旦学習され、一方が特徴ベクトルと新しいサンプルのクラスを予測することができる次のように
合計は、すべてのトレーニングサンプルを合計する必要があることを意味しますが、圧倒的多数のは(なぜSVMのラグランジュ乗数はまばらですか?)そのため、実際には問題になりません。(すべての特別なケースを構築できることに注意してください。)がサポートベクトルである場合、。上の図には3つのサポートベクターがあります。
最適化問題では、内積のみ使用されることがわかります。マッピング関数内積には、カーネルと呼ばれ、多くの場合示されます。
内積の計算が効率的になるようにを選択できます。これにより、低い計算コストで潜在的に高い機能空間を使用できます。これはカーネルトリックと呼ばれます。カーネル関数を有効にする、つまりカーネルトリックで使用できるようにするには、2つの重要なプロパティを満たす必要があります。から選択する多くのカーネル関数が存在します。補足として、カーネルトリックは他の機械学習モデルに適用される場合があり、その場合はカーネル化されたと呼ばれます。
SVMに関するいくつかの興味深いQA:
その他のリンク:
参照:
他の分類器との類似点と相違点に焦点を当てます。
パーセプトロンから:SVMはヒンジ損失とL2正則化を使用し、パーセプトロンはパーセプトロン損失を使用し、正則化に早期停止(または他の手法の中で)を使用できます。パーセプトロンには正則化の用語はありません。正則化の用語がないため、パーセプトロンはオーバートレーニングされることになります。したがって、一般化機能はthe意的に悪い場合があります。最適化は確率的勾配降下法を使用して行われるため、非常に高速です。良い面として、このペーパーは、わずかに修正された損失関数で早期停止を行うことにより、パフォーマンスがSVMと同等になる可能性があることを示しています。
ロジスティック回帰から:ロジスティック回帰はロジスティック損失項を使用し、L1またはL2正則化を使用できます。ロジスティック回帰は、生成的ナイーブベイの差別的な兄弟と考えることができます。
LDAから:LDAは生成アルゴリズムと見なすこともでき、確率密度関数(p(x | y = 0)およびp(x | y = 1)が正規分布していると仮定します。これは、データがただし、「トレーニング」には大きな行列の反転が必要になるという欠点があります(多くの機能がある場合)。ホモセダスティック性の下では、LDAはQDAになり、正規分布データに最適なベイズになります。前提は満たされているので、これ以上のことはできません。
実行時(テスト時)にモデルがトレーニングされると、これらすべての方法の複雑さは同じになります。これは、トレーニング手順で見つかった超平面とデータポイント間の単なる内積です。
この手法は、可能な限り最初の正と負の例に十分なマージンを残して、決定境界線を引くことに基づいています。
上の図のように、ような直交ベクトルを選択すると、未知の例決定基準を確立して、形式の正としてカタログ化できます。
通りの中央の決定線を超えて投影を配置する値に対応します。その気付く。
陽性サンプルの等価条件は次のとおりです。
私たちは、必要なおよび決定ルールを持つこと、そしてそこに私たちに必要な取得するために制約を。
第1の制約我々は課すしようとしているが、その任意の正のサンプルのため、。そして陰性サンプルについて、。分割境界または超平面(中央値)では、値はになりますが、側溝の値はおよびます。01
ベクトルは重みベクトルであり、はバイアスです。
これら2つの不等式をまとめるために、変数導入して、正の例ではに、例が負の場合には、
だから我々は、これがゼロよりも大きくなければならないことを確立、しかし一例)はこの場合ラインには、意思決定超平面とサポートベクトルの先端間の分離のマージンを最大化する超平面(「ガター」)上にある場合、その後:
これは、を要求することと同等であることに注意してください
2番目の制約:決定超平面からサポートベクトルの先端までの距離が最大化されます。言い換えると、分離の余白(「ストリート」)が最大化されます。
決定境界に垂直な単位ベクトルを想定すると、2つの「境界」プラスとマイナスの例の差をもつドット積は、「通り」の幅になります。
上記の方程式では、とは溝にあります(分離を最大化する超平面上)。したがって、正の例の場合:または ; そして負例えば:。したがって、通りの幅を再定式化する:
だから今、私たちはちょうど通りの幅を最大化しなければならない-つまり、最大限 最小限、または最小化:
これは数学的に便利です。
だから私たちはしたい:
制約を使用してを最小化します。
いくつかの制約に基づいてこの式を最小化するため、ラグランジュ乗数が必要です(式2と4に戻ります)。
差別化、
したがって、
そして、に関して差別化する
これは、乗数とラベルのゼロサム積があることを意味します。
式(6)を式(5)に戻すと、
式(7)に従って、最後から2番目の項はゼロです。
したがって、
式(8)は最後のラグランジアンです。
したがって、最適化は例のペアの内積に依存します。
上記の式(1)の「決定ルール」に戻り、式(6)を使用します。
新しいベクトルの最終決定ルールになります
式と間にある@Antoniの投稿から、元の(または主な)最適化問題が次の形式であることを思い出してください。
ラグランジュ乗数法を使用すると、制約付き最適化問題を次の形式の制約なしのものに変換できます。
ここで、 はラグランジアンと呼ばれ、はラグランジアン乗数と呼ばれます。
私たちの原初のラグランジュとの最適化問題は次のようになります:(の使用に注意、我々はまた、使用する必要があるとして、最も厳格ではありませんと ...こちら)
@AntoniとProf. Patrick Winstonの導出で行ったことは、最適化関数と制約が次のような技術条件を満たしていることを前提としています。
これにより、およびに関しての偏微分を取得し、ゼロに等しい結果を元のラグランジアン方程式にプラグインして、等価なものを生成できます。フォームの二重最適化問題
過度の数学専門的に行くことなく、これらの条件は、双対性とKarushクーン・タッカー(KTT)の条件の組み合わせであり、私たちが解決できるようにする二重の代わりに問題原初の最適解が同じであることを保証しながら、ものを。この場合、条件は次のとおりです。
次にが存在します。これらは、主問題と双対問題の解決策です。さらに、パラメーターは以下のKTT条件を満たします。
さらに、一部のがKTTの解を満たしている場合、それらは主問題および双対問題の解でもあります。
上記の式は特に重要であり、二重相補性条件と呼ばれます。これは、場合、あることを意味しますこれは、制約が有効であることを意味します。これは、不等式制約が等式制約に変換されるアントニの導出における方程式背後にある説明です。α * I > 0 gでI(ワット*)= 0 グラムI(W )≤ 0 (2 )