Upgrade to Pro — share decks privately, control downloads, hide ads and more …

B3勉強会(2015年2月16日)サポートベクターマシン(SVM)

293a636f2ed70b643a113963955f5d4e?s=47 MIKAMI-YUKI
February 16, 2015

 B3勉強会(2015年2月16日)サポートベクターマシン(SVM)

293a636f2ed70b643a113963955f5d4e?s=128

MIKAMI-YUKI

February 16, 2015
Tweet

Transcript

  1. 長岡技術科学大学 B3 三上侑城 3年勉強会 2015年2月16日 サポートベクターマシン(SVM) 自然言語処理研究室 1

  2. 予備知識 x (xの太字): 入力ベクトル ω (ωの太字): 重みベクトル(求める物) 入力xと出力yの組の教師データ 例:(x 1

    ,y 1 ) , (x 2 ,y 2 ) y i =1の時は0より大きい値を指す。 y i =-1の時は0より小さい値を指す。 2
  3. 線形分離 空間を線形(まっすぐ)に分離する。 2次元の場合は平面を直線で分断。 3次元の場合は空間を平面で分断。 4次元以上は分断面が分離超平面と 呼ばれるものになる。 3

  4. 線形分離 2次元の時、分離した片方をy=1として、 もう片方をy=-1とする。 学習データを全て正しく識別できる場合、 そのデータのことを線形分離可能であると 言う。 線形分離不可能の時は、非線形分離 を行う。 4

  5. 線形分離 5 y = 1 y = -1 2次元空間

  6. サポートベクターマシン(SVM) 線形識別器の1つ。 マージンの最大化と非線形分類を同時 に実現でき、高精度な分類を行うことが できる。 機械学習で分離平面を決める。 6

  7. サポートベクターマシン 7 ←分離平面 テストデータがどちらに有るか判定

  8. 目的関数 目的関数という関数が与えられ、この関 数の値を最小化することが学習の目的と なる。 L1正規化SVM目的関数 max 1 − ・ ,

    0 + || ※max(a,b):大きい方の値を返すもの 8
  9. 目的関数 max 1 − ・ , 0 + || 損失項

    正則化項 9
  10. 目的関数 max 1 − ・ , 0 + || 損失項の働き

    y i =1(0より大きな値)であるとき、 ω・x i の結果が10とすれば、 1-10=-9となり、0の方が大きくなるため、 損失項の値は0になる。 10
  11. 目的関数 max 1 − ・ , 0 + || 損失項の働き

    y i =1(0より大きな値)であるとき、 ω・x i の結果が-10とすれば、 1-(-10)=11となり、11の方が大きくな るため、損失項の値は11になる。 11
  12. 目的関数 max 1 − ・ , 0 + || 損失項の働き

    y i =-1(0より小さい値)であるとき、 ω・x i の結果が-10とすれば、 y i ω・x i は、 1-(10)=-9となり、0の方が大きくなるた め、損失項の値は0になる。 12
  13. 目的関数 損失項は ”多くの場合” 、正解した場合 は0で、間違えた場合は0以上の値を取 るようになっている。 つまり、損失項の値が小さいほど、判別 器として性能がいいことが言える。 13

  14. 目的関数 ”多くの場合”と言ったが、実は正解した 場合にも損失が0以上になる場合がある。 max 1 − ・ , 0 +

    || ω・x i の結果が1以下の時に0より大き くなる。 14
  15. 目的関数 そのため、正解だと判断されず、ωのパラ メータが変更され、結果が最低でも1 (もしくは-1)になる。 -1<y<1の間には何も入らなくなるので、 その間にマージンができる。  → 分離平面が安定する。 15

  16. マージン最大化 16 ←分離平面 <1 <1

  17. サポートベクター 17 ←分離平面 <1 <1 ・分離平面に最も近い事例のことを言う。 ・これだけで分離平面を表現できる。

  18. 正規化項 max 1 − ・ , 0 + || 複雑なモデル(過学習状態)になると、

    未知データに対して弱くなることがよくある。 損失項が多少のマイナスでもOKにするこ とで、余裕をもたせることができる。 18
  19. 非線形分離 うまく分離出来ない時には非線形分離 を使用する。 19

  20. 非線形分離 より高度な空間で分離作業を行う。 →高次元空間への射影 新しい軸を作る。 Φ(1 , 2 ) = 1

    2 1 2 20
  21. 非線形分離 21 2次元空間

  22. 非線形分離 22 3次元空間

  23. 非線形分離 23 3次元空間で線形分離の分離平面を決め、 2次元空間に戻すと、非線形分離になる

  24. 収束判定 計算をいつ終えるか?という問題。 完全にパラメータが変化しなくなるまでは 時間が非常にかかる。 実用的には ・十分だと思われる繰り返し(学習)回数 を最初に設定しておく。 ・目的関数の値がほとんど変わらなくなっ たら終了する。 24

  25. ご視聴ありがとうございました 参考文献 ・日本語入力を支える技術 著:徳永拓之 技術評論社 2012年3月 ・機械学習に基づく自然言語処理I 京都大学情報学研究科 黒橋 禎夫

    http://nlp.ist.i.kyoto-u.ac.jp/ member/kuro/lecture/LIP10/LIP09.pdf 25