統計準1級2018年問3[1] 解説 SVM・線形判別式
※問題は割愛します。
[1]
グラフを見るに、$${x}$$=-4, 0, 4の時に正、$${x}$$=-2, 2の時に負になるようなデータを取る際に何次元の多項式カーネルのSVMによって判別ができるかを考える問題。
個人的に多次元非線形の多項式カーネルを完璧に理解するのは辛い上、準1級でそこまで求めていないと思うので、ある程度解像度を落として理解する必要がある。以下、自分が理解するところである。
1) SVMでは『境界線を見つける』のが主なテーマの一つである。
2) 境界線が直線で描けない場合は、データポイントをより多くの次元空間に写像し、そこで境界線を導く
例えば、$${x = \begin{pmatrix} x_1 \\ x_2 \end{pmatrix}}$$という2次元のデータポイントを$${φ(x) = \begin{pmatrix} x_1^2 \\ \sqrt{2} x_1x_2 \\ x_2^2 \end{pmatrix} }$$の3次元の特徴空間に写像することで、線形でない境界線を描くことができるようになる。
3) データポイントを多次元に写像してから境界線を導くのを一から行うとすると、多次元の各データポイントの座標から距離を測るなど、計算量がいる。計算量を減らすためカーネル法という手法で内積で妥協できる。
2つのデータポイントについて考える場合、それぞれの座標を考えなくても内積さえ分かれば相対的な位置関係が見えるはずである。2次元のデータポイント$${x}$$と$${x'}$$がある場合に、$${φ(x)}$$と$${φ(x')}$$の内積を計算すると最終的に$${(x^Tx')^2}$$となる。
これは多項式カーネルの公式
$$
K(x, x') = (x^Tx' + c)^d
$$
にc=0, d=2を入力した値と一致する。
なので、多項式カーネルを用いればわざわざ座標を考える必要はない。
と色々書いたが、
かなり拡大解釈すれば多項式カーネルを使うということは間接的にデータポイントを別次元に写像するということで、2次元のデータポイントは2次元の多項式カーネルであれば3次元空間にプロットできる。その断面をとると、$${φ(x) = ax^2+bx+c}$$の放物線を描き、境界線は直線がその放物線を何回横ぎるかによってきまる。
4次元の多項式カーネルを使って写像されるxの断面をとれば、以下のように$${φ(x) = ax^4+bx^3+cx^2+dx+e}$$のような図を描け、これを使えば境界線が4つできるとイメージでき、与えられたデータポイントの判別が綺麗にできると言える。