Rohit Singh, Tommi Jaakkola, and Ali Mohammad. 6.867 Machine Learning. Fall 2006. Massachusetts Institute of Technology: MIT OpenCourseWare, https://ocw.mit.edu. License: Creative Commons BY-NC-SA.
Lecture 8
Support Vector Machine Revisited
SVMをdual form(exampleが内積でのみ現れる形)に変換する. すべてのexampleをϕでd次元のfeature spaceに写し,{ϕ(xt,yt)}nt=1が線形分離可能であるようにし,feature spaceにおいてmarginを最大化するパラメータを考える.この問題は
minimize ‖θ‖2/2 subject to yt(θTϕ(xt)+θ0)≥1,t=1,...,n (1)
という最適化問題に一致する. もちろんslack variableも導入できるが,これは後に回す. このような最適化問題(凸,線形制約)は,Lagrange multipliersによってdual formに変形できる. αt≥0を導入し,α={α1,...,αn}によって
J(θ,θ0;α)=‖θ‖2/2−n∑t=1αt[yt(θTϕ(xt)+θ0)−1]
をαによって最大化することを考えるのである.J(θ,θ0)=maxα≥0J(θ,θ0,α)の最小化が(1)に一致することを示す.
θ,θ0を少なくとも1つの束縛条件が満たされていないように設定する.yi(θTϕ(xi)+θ0)<1であるとすると任意のαi>0に−αi[yi(θTϕ(xi)+θ0)−1]>0.αi=∞とすればJ(θ,θ0)=∞.だから,Lagrange multiplier αは制約条件を満たさせる働きがあるとわかる.
Slater conditionsという条件を満たしているとき,ある変数で最大化し,他の変数で最小化するというLagrange multipliersの最適化問題の最大化最小化の順序を交換できる.つまり
minθ,θ0maxα≥0J(θ,θ0;α)=maxα≥0minθ,θ0J(θ,θ0,α)
である. 左辺をprimal formといい,右辺をdual formという. dual formについて,まずminθ,θ0Jを解く.微分して
ddθ0J=−n∑t=1αtyt=0ddθJ=θ−n∑t=1αtytϕ(xt)=0
またしても,最適なθは{ϕ(xt)}tの張る空間の元となった.これらをもとの式に代入して,
J(α)=minθ,θ0J(θ,θ0,α)={∑tαt−(1/2)∑i∑jαiαjyiyj[ϕ(xi)Tϕ(xj)], if ∑tαtyt=0−∞otherwise
よって,dual formの解は
maximize ∑tαt−(1/2)∑i∑jαiαjyiyj[ϕ(xi)Tϕ(xj)]subject to αt≥0,∑tαtyt=0
の解である. これがSVMのdual formとかkernel formといい,quadratic optimization problemであり,Gram matrix K=(ki,j)=(ϕ(xi)Tϕ(xj))によって,特徴づけられる.
maximum margin hyperplaneはsupport vectorと呼ばれる少数のexampleによって決まることをすでに見たが,これはϕによって写像されたexampleたちにも同様で,ほとんどのˆαtは0になり,^αt>0なるとき,xtやϕ(xt)をまたsupport vectorという.
ˆαtが決まると,SVをsupport vectorの集合として,
ˆy(x)=ˆθTϕ(x)+^θ0=∑t^αtyt[ϕ(xt)Tϕ(x)]+^θ0=∑t∈SV^αtyt[ϕ(xt)Tϕ(x)]+^θ0
によって新しいexample xの推測ˆy(x)が計算できる.
^θ0はˆαを求めた後で,
∀i∈SV. yi(ˆθTϕ(xi)+^θ0)=yi∑t∈SV^αt[ϕ(xt)Tϕ(xi)]+yi^θ0=1
を解くことで得られる.
この解のgeometric marginは1/‖ˆθ0‖で得られる.つまり
^γgeom=(n∑i=1n∑j=1^αi^αjyiyjK(i,j))−12
geometric marginを最大にするようなkernelが最適なkernelと言えるが,定数倍によってgeometric marginもその分定数倍になるので,kernelの比較には正規化が必要である.
Kernel Optimization
kernelのあるパラメータを変えて,問題により適したkernelをつくることができる. パラメータの最適化には,cross-validationやgeneralization errorに関連した基準(marginなど)が用いられる.
0 件のコメント:
コメントを投稿