2017年8月9日水曜日

MIT OCW, Machine Learning 02日目 SVM

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.

The Support Vector Machine

大きなgeometric marginがあって線形分離できるという仮定のもとで,有限回の繰り返しでそのようなlinear classifierを与えられることを見た.Support Vector Machine(SVM)は繰り返しでなく直接そのようなlinear classifierを与える. まず,正しく線形分離を行うclassifierを見つけて(fig.1a),それからgeometric marginが最大になるようにを調節する(fig.1b).このような解は一意である.

figure 1

より形式的には,geometric marginを最大化する最適化問題となる. すなわち,がすべてのtraining dataに成立するという制約条件のもとで,を最大化する. を最大化する代わりに,逆数を最小化する問題とすることもできる.
の両辺をで割って

となる.この問題の解はのそれぞれの値を与えず,の定数倍によって得られるdecision boundaryは変わらないから,としてよい.以上から,結局

という最適化問題を解くことになる. この最適化問題はstandard SVM formであり,quadratic programming problem(目的関数が線形制約のもとのパラメータの二次関数)である. この解として得られるgeometric marginはである. decision boundaryとgeometric marginはという設定によって変化していない.

General Formulation, Offset Parameters

パラメータにoffset term を加えることで,decision boundaryが必ずしも原点を通らなくとも良くなる. このときclassifierは

separating hyperplaneはなるの集合である.の導入によって,原点を通るlinear classifierよりも大きなmarginを取れるようになることが有る. の導入によって最適化問題は

となる.は制約項においてだけ考慮する. はまさしくgeometric marginを最大化するためにのみ導入されるのである.

Properties of the Maximum Margin Linear Classifier

Benefits

解はtraining dataが与えられるたびに一意に決まり,geometric marginが最大になるようにboundaryを引くから,データのノイズに対して頑強である. さらに,marginの上のexampleたち(support vectors)のみによってパラメータは決まる(これが利点であるか否かを言うには,classifierの良さをより形式的に測る方法を議論する.).

training examplesのみが与えられたときのclassifierの性能をはcross-validationによって計量される. これは単純に,training dataのある部分集合だけを使ってclassifierを訓練し,そのclassifierが選ばれなかったtraing examplesに対する成績を計測していくのである. leave-one-out cross-validationはそのような方法の一つで,traing dataから1つだけexampleを取り出して訓練を行い,取り出されたexampleを正しく判別できたか否かをたしかめ,これをtraing data全てに繰り返す. 右肩にを置くことで番目のexampleを取り出して訓練したときのパラメーターを表すとすると,

である.ただし とする. leave-one-out CV errorが低いとよくgeneralizeできていると考えられるが,保証されているわけではない.
maximum margin linear classifierにおいて,あるexampleを除いて訓練を行ってそのexampleを判別し損ねるというのは,そのexampleがsupport vectorであるときであって,

である. よって,support vectorが少ないほどよい.これを解のsparse(疎)性質という.

Problems

たった一つのexampleであっても,labelが間違っていると完全にmaximum margin classifierを変化させてしまう.

Allowing Misclassified Examples, Relaxation

labelを間違えることはよく有ることだから,これに弱いというのは致命的なので,mislabelに強くする工夫が必要である. うまく判別できないデータが与えられたとして,それがmislabelによるのか,あるいは線形分離不可能だからなのかを知ることは困難である. どちらにせよ, traing exampleに対する正確性と,未知のexampleに対する正確性にはトレードオフの関係が有ることを肝に銘じなければならない.
maximum margin classifierをmislabelに頑強にする最も単純な方法の一つにslack variableの導入が有る. それぞれのexampleに対して,どれほどmarginの内側に来てしまうかを計量し,それのtraing dataの和を小さくするようにobjective functionに付け加えるのである.形式的には

となる.がslack variableである. example がmarginを内側にはみ出るときとなって,objective functionにを加え,の最少化を阻害し,未知のdataに対する頑強さを減じる. を小さくするとよりmislabelに強いが未知のexampleに弱く,を大きくするとmislabelに弱いが未知のexampleに強くなる.が極端に大きくなると,slack variableを考えないのと同じことになる.

0 件のコメント:

コメントを投稿