b3semi_8.pdf

A3ea3bc5dde6ae2dd6eae71da9c418b0?s=47 MARUYAMA
March 21, 2017
67

 b3semi_8.pdf

A3ea3bc5dde6ae2dd6eae71da9c418b0?s=128

MARUYAMA

March 21, 2017
Tweet

Transcript

  1. 自然言語処理のための機械学習 第8回 B3 丸山 拓海 自然言語処理研究室

  2. 自然言語処理のための機械学習 2 2. 文書及び単語の数学的表現 3. クラスタリング 4. 分類 5. 系列ラベリング

    1. 必要な数学的知識
  3. 4. 分類 3 4.2 ナイーブベイズ分類器 4.3 サポートベクトルマシン 4.4 カーネル法 4.5

    対数線形モデル 4.1 分類とは
  4. 4.3.1 はじめに 4 ▪サポートベクトルマシン(Support Vector Machine, SVM) : 線形二値分類器 正クラス

    ( positive class), 負クラス ( negative class) 訓練データ = (%), (%) , ()), ()) , … , (|,|), (|,|) 正, 負クラスに属する事例のクラスラベル: +1, -1 = ・ − ≥ 0: 正クラス < 0: 負クラス 復習
  5. 4.3.2 マージン最大化 5 ▪ マージン最大化 :どちらのクラスからも なるべく遠い位置で分ける 復習 マージン最大化 →

    を最小化する 5 ・ = ・5 = + 1 ・5 = − 1 (厳密制約) 訓練事例は, 正しく分類できる (9) = +1 : ・(9) − ≥ 1 (9) = −1 : ・(9) − ≤ −1
  6. 4.3.3 厳密制約下でのSVMモデル 6 ▪ 厳密制約下でのSVMモデル . ∗, , = −

    1 2 C 9 E 9 E 9 ・ F 9,E + C 9 9 双対問題(dual problem) . . C 9 9 9 = 0, 9 ≥ 0 ラグランジュの鞍点理論より, 復習
  7. 4.4 カーネル法 7 ・多項カーネル ・ 例題 ・ カーネル法とは

  8. 4.4 カーネル法 8 . ∗, , = − 1 2

    C 9 E 9 E 9 ・ F 9,E + C 9 9 . . C 9 9 9 = 0, 9 ≥ 0 双対問題(dual problem) ▪ SVM 分離平面 = C 9 9 9 ・ − 事例の内積だけが計算できればよい
  9. 4.4 カーネル法 9 ▪ カーネル法 (kernel method) : 内積だけを用いて学習や分類を行う方法 ▪

    カーネル関数 (kernel function) : 事例対を引数として, 高次元の内積を与える関数
  10. 4.4 カーネル法 10 . ∗, , = − 1 2

    C 9 E 9 E 9 ・ F 9,E + C 9 9 . . C 9 9 9 = 0, 9 ≥ 0 ▪ カーネル法 (kernel method) 訓練データ = (%), (%) , ()), ()) , … , (|,|), (|,|) . ∗, , = − 1 2 C 9 E 9 E ( 9 , E ) 9,E + C 9 9 . . C 9 9 9 = 0, 9 ≥ 0 訓練データ = (%), (%) , ()), ()) , … , (|,|), (|,|)
  11. 4.4 カーネル法 11 分類 = C 9 9 ( 9

    , ) − . ∗, , = − 1 2 C 9 E 9 E ( 9 , E ) 9,E + C 9 9 . . C 9 9 9 = 0, 9 ≥ 0 ▪ カーネル法 (kernel method) 双対問題(dual problem)
  12. 4.4 カーネル法 12 ▪カーネル関数 (kernel function) ・ 木構造カーネル (tree kernel)

    ・ 文字列カーネル (string kernel) ・ 動径基底関数カーネル (radial basis function kernel) ・ 多項式カーネル (polynomial kernel)
  13. 4.4 カーネル法 13 ▪ 多項式カーネル (polynomial kernel) MNOP 9 ,

    E = ( 9 ・ E + r) R Ex.) 入力ベクトル 9 = % 9 , ) 9 , E = % E , ) E である場合の, 2次の多項式カーネル MNOP 9 , E = ( 9 ・ E + 1) )= (% 9 % E + ) 9 ) E + 1) ) = (% 9 )), () 9 )), 2% 9 ) 9 , 2% 9 , 2) 9 , 1 ・ (% E )), () E )), 2% E ) E , 2% E , 2) E , 1 = % , ) () = (% )), () )), 2% ) , 2% , 2) , 1
  14. 4.4 カーネル法 14 例題) 訓練データ = (%), −1 , ()),

    1 に対し, 2次の多項式カーネルを用いて, SVMを構築せよ。ただし, (%) = 0, 1 , ()) = 1, 1 とする。 . ∗, , = − 1 2 C 9 E 9 E ( 9 , E ) 9,E + C 9 9 . . C 9 9 9 = 0, 9 ≥ 0
  15. 4.4 カーネル法 15 例題) 訓練データ = (%), −1 , ()),

    1 に対し, 2次の多項式カーネルを用いて, SVMを構築せよ。ただし, (%) = 0, 1 , ()) = 1, 1 とする。 MNOP % , % = (1 + % ・ % ) )= 4 MNOP ) , ) = 9 MNOP % , ) = 4 ∗, , = −2% ) − 9 2 ) ) + 4% ) + % + ) ∗, , = − 1 2 C 9 E 9 E ( 9 , E ) 9,E + C 9 9
  16. 4.4 カーネル法 16 例題) 訓練データ = (%), −1 , ()),

    1 に対し, 2次の多項式カーネルを用いて, SVMを構築せよ。ただし, (%) = 0, 1 , ()) = 1, 1 とする。 ∗, , = −2% ) − 9 2 ) ) + 4% ) + % + ) % % + ) ) = −% + ) = 0 より, ∗, , = − 5 2 % ) + 2% ∗, , % = −5% + 2 = 0 % = ) = 2 5 = C 9 9 9 , 5 − 1 = 2 5 × −1 × 0,1 , 1,1 + 2 5 ×1× 1,1 , 1,1 − 1 = 1 = C 9 9 9 , − 1 = 2 5 % ) + 4 5 % ) + 4 5 % − 1
  17. 4.5 対数線形モデル 17 ・ モデルの導入 ・ モデルの学習 ・ 素性表現の拡張

  18. 4.5 対数線形モデル 18 ▪ 素性表現の拡張 素性関数: Z 事例一つに対して, 一つの素性ベクトル 事例,

    ラベル 素性ベクトル(, ) = (% , , ) , , … , \ , )
  19. 4.5 対数線形モデル 19 ▪ 素性表現の拡張 P氏は次のような文書を書いた。 N氏は次のような文書を書いた。 % = “

    ” ) = “ ” e = “ ” g = “ ” 以下のような素性を考える Z , = δ ∈ δ = = 1 “単語がで出現” ∩ “ =P氏” 0 それ以外 N氏に関しても同様の素性を考える
  20. 4.5 対数線形モデル 20 ▪ 素性表現の拡張 % , = δ ””

    ∈ δ = e , = δ ”” ∈ δ = ) , = δ ”” ∈ δ = g , = δ ”” ∈ δ = m , = δ ”” ∈ δ = o , = δ ”” ∈ δ = p , = δ ”” ∈ δ = q , = δ ”” ∈ δ = 素性ベクトルは以下のように表される % , = (1,1,0,0,0,0,0,0) ) , = (0,0,1,0,0,0,0,0) e , = (0,0,0,0,0,1,0,1) g , = (0,0,1,0,0,1,1,0)
  21. 4.5 対数線形モデル 21 ▪ モデルの導入 | = 1 R,s (・

    , ) R,s = C (・ , ) P : 素性に対する重みベクトル ∗ = 1 R,s ・ , = (・ , ) 分類する時は,
  22. 4.5 対数線形モデル 22 ▪ モデルの学習 = C log 9 9

    − 2 ||) (R y ,P y )∈, : 正の整数 正則化 解析的に求めることができない
  23. 4.5 対数線形モデル 23 ▪ モデルの学習 最急降下法ならば, \z{ = NOR +

    s (NOR) s = C 9 , 9 − C 9 9 , P − (R y ,P y ) を収束するまで計算すればよい
  24. まとめ 24 ・ モデルの導入 ・ モデルの学習 ・ 素性表現の拡張 4.4 カーネル法

    4.5 対数線形モデル ・多項カーネル ・ 例題 ・ カーネル法とは