回答:
この回答は次のことを説明しています。
ガウスカーネルを使用すると、カーネルのローカリティプロパティが任意に柔軟な決定境界につながるため、ガウスカーネルでは常に完全な分離が可能です(異なるクラスの2つのポイントがまったく同じでない場合)。カーネルの帯域幅が十分に小さい場合、正と負の例を区別する必要があるときはいつでも、決定境界はポイントの周りに小さな円を描いたように見えます。
(クレジット:Andrew Ngのオンライン機械学習コース)。
では、なぜこれが数学的な観点から起こるのでしょうか?
標準の設定を考えてみましょう:あなたは、ガウスカーネル持っ とトレーニングデータ(X (1 )、Y (1 ))、(X (2 )、y (2 ))、… 、(x (n )、ここで、 y (i )値は ± 1です。分類関数を学びたい
重みをどのように割り当てるのでしょうか?無限次元空間と二次計画アルゴリズムが必要ですか?いいえ、ポイントを完全に分離できることを示したいだけです。そこで、σを最小の間隔よりも10億倍小さくします。| x (i ) − x (j ) | | 任意の2つのトレーニング例の間で、設定します。これは、カーネルに関する限り、すべてのトレーニングポイントが10億シグマ離れていることを意味し、各ポイントはその近傍の符号を完全に制御します。正式には、、Yを
ここで、は任意の小さな値です。は他のポイントから10億シグマ離れているため、は小さいことがわかっています。したがって、すべてのについて、ϵ x (k ) i ≠ k
以来小さいので、、間違いなく同じ符号有するし、分類器は、訓練データに完璧な精度を達成します。Y(X (K ))Y (K )
これが「無限次元の特徴空間での完全な線形分離」として解釈できるという事実は、カーネルの秘fromに由来します。
ここで、はデータ空間から機能空間へのマッピングです。すぐに、は特徴空間の線形関数として機能します。Y(X)
ここで、線形関数は、特徴空間ベクトルように定義されますv
この関数は、では線形です。これは、内積と固定ベクトルの線形結合にすぎないためです。特徴空間では、決定境界は単なるであり、線形関数のレベルセットです。これは、機能空間における超平面のまさに定義です。Y(X)= 0 L (V)= 0
注:このセクションでは、表記はトレーニングデータではなく、ポイントの任意のセットを指します。これは純粋な数学です。トレーニングデータはこのセクションにはまったく含まれていません。 n
カーネルメソッドは、実際に機能空間またはマッピング明示的に「検索」または「計算」することはありません。SVMなどのカーネル学習方法では、それらを機能させる必要はありません。カーネル関数のみが必要です。K
、式を書き留めることは可能です。マップする機能空間は一種の抽象的(および潜在的に無限次元)ですが、本質的には、マッピングはカーネルを使用して単純な機能エンジニアリングを行うだけです。最終結果に関して、カーネルを使用して学習するモデルは、回帰式に入力する前に正の予測変数のログを取得するなど、線形回帰およびGLMモデリングで一般的に適用される従来の機能エンジニアリングと違いはありません。ほとんどの場合、SVMアルゴリズムでカーネルが適切に動作することを確認するために数学が使用されます。SVMアルゴリズムには、スパース性と大きなデータセットへのスケーリングという優れた利点があります。Φ
まだ興味がある場合は、次のように機能します。本質的に、我々は、我々が保持するIDを取る、および定義により保持されるように、空間と内積を構築します。これを行うには、抽象ベクトル空間を定義します。各ベクトルは、データが存在する空間から実数までの関数です。ベクトルで:カーネルスライスの有限の線形結合から形成された関数である よりコンパクト に書くと便利ですV X R F V F (X)= N Σは iは= 1 α I K (X (I )、X線)F 、F = N Σ I = 1 α I K X (I ) K 、X
空間上の内積は通常のドット積ではなく、カーネルに基づく抽象的な内積です。
このように定義された特徴空間では、はマッピングであり、各点をその点の「カーネルスライス」に取り込みます。X → V X
が正定カーネルの場合、が内積空間であることを証明できます。詳細については、このペーパーを参照してください。(これを指摘してくれたf coppensに称賛を!)K
この答えは、線形代数の良い説明を与えますが、ここでは、直感と証明の両方を備えた幾何学的な視点を示します。
固定小数点場合、カーネルスライス関数ます。のグラフは、を中心とする単なるです。ここで、特徴空間が有限次元のみである場合、固定されたポイントのセットで有限のバンプセットを取得し、他の場所でガウスバンプを形成できることを意味します。しかし、明らかにこれを行う方法はありません。古いバンプから新しいバンプを作成することはできません。新しいバンプが古いバンプから実際に遠く離れている可能性があるためです。したがって、いくつの特徴ベクトル(バンプ)を使用しても、常に新しいバンプを追加できます。特徴空間では、これらは新しい独立したベクトルになります。したがって、特徴空間は有限次元にはできません。無限でなければなりません。K z(x)= K (z、x)K z z
誘導を使用します。任意の点のセットがあり、ベクトルがは、特徴空間で線形に独立しています。ここで、これらのポイントとは異なるポイント見つけます。実際には、それらすべてから10億シグマ離れています。は最初の特徴ベクトルから線形に独立していると主張します。 Φ( x (i )) x (n + 1 ) nのN Φ (X (I ))
矛盾による証明。それとは反対に、
ここで、任意の両側の内積を取得します。アイデンティティにより、 ⟨ Φ (Z)、Φ (X)⟩ = K (Z、X)
ここで、は自由変数なので、この方程式は2つの関数が同じであることを示す恒等式です。特に、を中心とするガウス分布は、他の点におけるガウス分布の線形結合として表現できると述べています。特に他のすべてのガウスバンプが10億シグマ離れている場合、他のポイントを中心とするガウスバンプの有限の組み合わせから、あるポイントを中心とするガウスバンプを作成できないことは幾何学的に明らかです。そのため、線形依存の仮定は矛盾を引き起こしました。x (n + 1 )x (i )
ガウスカーネルのカーネル行列は、異なるに対して常にフルランクを持ちます。これは、新しい例を追加するたびに、ランクがずつ増加することを意味します。非常に小さく設定した場合、これを確認する最も簡単な方法です。その場合、カーネル行列はほぼ対角線になります。 1σ
ランクが常に1ずつ増加するという事実は、特徴空間内のすべての投影が線形独立(直交ではなく独立)であることを意味します。したがって、各例は、投影のスパン新しい次元を追加します。数え切れないほど多くの例を追加できるため、特徴空間の次元は無限でなければなりません。興味深いことに、、入力空間の特徴空間への投影はすべて球上にあります。。それにもかかわらず、球体の形状は平らです。あなたはそれについての詳細を読むことができますΦ ( | | Φ( x) | | ² H =K( X、 X)=1
バージ、CJC(1999)。カーネルベースのメソッドのジオメトリと不変性。B.Schölkopf、CJC Burges、およびAJ Smola(編)では、カーネルメソッドの進歩がベクトル学習をサポートしています(pp。89–116)。MIT Press。
背景と表記については、サポートベクターから決定境界を計算する方法の答えを参照してください。。
したがって、「元の」空間の特徴はベクトル、バイナリの結果、ラグランジュ乗数はです。、Y I ∈ { - 1 、+ 1 } α I
カーネルは( ' 'は内積を表します)と書くことができることが知られています。ここでは(暗黙的で不明です)新しい機能空間への変換。⋅ Φ
私はこのがどのように見えるかについて「直感的な」説明をしようとするので、この答えは正式な証拠ではなく、これがどのように機能するかについての気持ちを伝えたいだけです。私が間違っている場合は私を修正することをheしないでください。私の説明の基礎は、このpdfのセクション2.2.1です。
フィーチャスペース(つまり、私の)を、線形分離が解決される「新しい」フィーチャスペースに「変換」する必要があります。
各観測 に対して、関数を定義するため、トレーニングサンプルの各要素に対して関数があります。これらの関数はベクトル空間にます。またがるベクトル空間、に注意してください。(はトレーニングサンプルのサイズです)。
このベクトル空間は、線形分離が可能なベクトル空間であると主張しようとします。 スパンの定義により、ベクトル空間各ベクトルは、線形結合、つまりとしてます。ここで、は実数です。したがって、実際には、
はベクトル空間ベクトルの座標であることに注意してください。
学習サンプルのサイズであるため、ベクトル空間の次元まで行くことができるかどうかに応じて、線形独立しています。(前出を参照のこと、私たちは定義されたこのようにし)、というこの手段の大きさ使用したカーネルに依存し、学習サンプルのサイズまで行くことができます。
カーネルが「複雑十分」である場合は、すべての独立となり、その後の大きさなり、学習サンプルのサイズ。
元の特徴空間をマッピングする変換は、次のように定義されます。
。
このマップは、元の特徴空間を、トレーニングサンプルのサイズに達する次元を持つことができるベクトル空間にマップします。だから、ベクトルが機能しているベクトル空間に私のトレーニングサンプル内の各観測をマッピングします。私の訓練サンプルからのベクトルは、のベクトル、つまり座標がすべてゼロのベクトル「マッピング」されます。ただし、番目の座標は1です。
明らかに、この変換は(a)カーネルに依存し、(b)トレーニングサンプルの値に依存し、(c)カーネルに応じて、トレーニングサンプルのサイズに達する次元を持ち、( D)のベクトルようなルック、ここで実数です。
サポートベクトルから決定境界を計算する方法の関数を見てください。それことがわかる。SVMによって検出された決定境界はです。
言い換えれば、は線形結合であり、は空間の線形分離超平面です。これは、特定の選択、つまり!
私たちの観測から知られている、 SVMが見つかったことをラグランジュ乗数です。言い換えれば、SVMは、カーネルを使用し、2次計画問題を解くことにより、 -spaveの線形分離を見つけます。α I V
これは、「カーネルトリック」によって元の機能空間を異なる次元の新しい機能空間に「暗黙的に」変換する方法についての私の直感的な理解です。この次元は、使用するカーネルに依存し、RBFカーネルの場合、この次元はトレーニングサンプルのサイズに達する可能性があります。トレーニングサンプルのサイズは任意であるため、これは「無限」に達する可能性があります。明らかに、非常に高次元の空間では、過剰適合のリスクが増加します。
カーネルは、SVMが機能空間を変換することを可能にする手法です。また、ガウスカーネルがPCAにとって魔法のようになっているのはなぜですか。
残念ながら、fcopの説明はまったく間違っています。まず第一に、「カーネルは...で記述できることが知られています。ここで...は、新しい機能空間への(暗黙的かつ未知の)変換です。」不明ではありません。これは、実際には、フィーチャがマップされる空間であり、これは、RBFの場合のように無限次元になる可能性のある空間です。カーネルは、その変換された特徴ベクトルとトレーニング例の変換された特徴ベクトルの内積を取り、その結果に何らかの関数を適用します。したがって、この高次元の特徴ベクトルを暗黙的に表します。たとえば、x ^ 2 + 2xy + y ^ 2の代わりに(x + y)^ 2と書くことを考えてください。ここで、指数関数によって暗黙的に表される無限シリーズを考えてみてください...無限の特徴空間があります。
SVMについて考える正しい方法は、トレーニングセットのサイズと同じ大きさの別の有限次元「カーネル」機能空間で暗黙的に表現される可能性のある無限次元の機能空間に機能をマッピングすることです。