人工知能特論 II  第 8 回

30
人人人人人人 II 人8人 人人 1

description

人工知能特論 II  第 8 回. 二宮 崇. 今日の講義の予定. HMM の教師付学習 HMM の教師無し学習 EM アルゴリズムの導入 EM アルゴリズム 教科書 北研二 ( 著 ) 辻井潤一 ( 編 ) 言語と計算 4 確率的言語モデル 東大出版会 C. D. Manning & Hinrich Schütze “FOUNDATIONS OF STATISTICAL NATURAL LANGUAGE PROCESSING” MIT Press, 1999 - PowerPoint PPT Presentation

Transcript of 人工知能特論 II  第 8 回

Page 1: 人工知能特論 II  第 8 回

1

人工知能特論 II  第 8 回二宮 崇

Page 2: 人工知能特論 II  第 8 回

2

今日の講義の予定

HMM の教師付学習 HMM の教師無し学習

EM アルゴリズムの導入 EM アルゴリズム

教科書 北研二 ( 著 ) 辻井潤一 ( 編 ) 言語と計算 4 確率的言語モデル

東大出版会 C. D. Manning & Hinrich Schütze “FOUNDATIONS OF

STATISTICAL NATURAL LANGUAGE PROCESSING” MIT Press, 1999

Christopher M. Bishop “PATTERN RECOGNITION AND MACHINE LEARNING” Springer, 2006

Page 3: 人工知能特論 II  第 8 回

3

隠れマルコフモデルHidden Markov Model (HMM)

Q: 状態の有限集合Σ: 出力記号の有限集合πq: 文頭が状態 q になる確率

Σr∈Q πr=1aq,r: 状態 q から状態 r への遷移確率

Σr∈Q aq,r=1bq,o: 状態 q における記号 o の出力確率

Σo Σ∈ bq,o = 1

Page 4: 人工知能特論 II  第 8 回

4

状態記号列の確率と生成確率

状態と記号の列が与えられた時

記号列のみが与えられた時

解析 ( 入力 : o1o2…oT)

T

toq

T

tqqqTT

TT

ttttbaoqoqoqp

oqoqoq

1,

2,2211

2211

11)(

:

状態記号列

QqQqQq

TTT

T

T

oqoqoqpooop

ooo

,,221121

21

21

)()(

:記号列(生成確率 )

)(maxarg~~~2211

,,21

21

TTQqQqQq

T oqoqoqpqqqT

(この問題はビタビアルゴリズムで効率的に解ける )

Page 5: 人工知能特論 II  第 8 回

5

ラグランジュの未定乗数法

ラグランジュの未定乗数法

  はラグランジュ関数と呼ばれる

0,...,0,0

)(...)()()(

0)(,...,0)()(maxarg

21

11

1

n

mm

m

LLLggfL

ggf

θθθθ

θθθθ

ただし

)(θL

Page 6: 人工知能特論 II  第 8 回

6

学習 ( パラメータ推定 ): HMMの教師付学習

Page 7: 人工知能特論 II  第 8 回

7

HMM の教師付学習Supervised Learning of HMMs

パラメータ推定 訓練データ ( 入力 )

パラメータ ( 出力 )πq … |Q| 個の変数aq,r … |Q|×|Q| 個の変数bq,o … |Q|×|Σ| 個の変数

とする。。正解品詞列に対応する正解状態列

の記号列長

とする。。単語列文を表す記号列

訓練データ

i

i

iTiiiiii

ii

iTiiiii

nn

qqqqyxyxT

ooooxxyyyxxx

321

321

2121

)(::

)(:,:

Page 8: 人工知能特論 II  第 8 回

8

HMM の教師付学習Supervised Learning of HMMs

パラメータ推定

n

i

T

toq

T

tqqq

ba

n

iiTiTiiii

ba

n

iii

ba

i

itit

i

ittii

ii

ba

oqoqoqp

yxpba

1 1,

2,

,,

12211

,,

1,,

)1(1maxarg

)(maxarg

),(maxarg,,

Page 9: 人工知能特論 II  第 8 回

9

HMM の教師付学習Supervised Learning of HMMs

パラメータ推定

n

i

T

toq

T

tqqq

n

i

T

toq

T

tqqq

i

itit

i

ittii

i

itit

i

ittii

babal

babal

1 1,

2,

1 1,

2,

logloglog),,(log

),,(

)1(1

)1(1

制約付き最適化問題

) allfor (1

) allfor (1

1s.t.

),,(logmaxarg

,

,

,,

qb

qa

bal

ooq

Qrrq

Qqq

ba

Page 10: 人工知能特論 II  第 8 回

10

ラグランジュ関数

HMM の教師付学習Supervised Learning of HMMs

ラグランジュの未定乗数法

Qq o

oqqQq Qr

rqqQq

q

n

i

T

toq

T

tqqq

Qq ooqq

Qq Qrrqq

Qqq

baba

babal

baL

i

itit

i

ittii ,,1 1

,2

,

,,

111logloglog

111),,(log

),,(

)1(1

ラグランジュ乗数ρ … 1個の変数αq … |Q|個の変数βq … |Q|個の変数

Page 11: 人工知能特論 II  第 8 回

11

HMM の教師付学習Supervised Learning of HMMs

πq を求める

nqC

n

nqC

qC

qqqC

qCL

q

Qq

Qqq

Qq q

q

n

i i

qq

)()1(

1)(

1

)1()(

)(

0)(

1

1

1

1 11

1

に代入して、。これを式よって、

であるからところで

ただし、

アイバーソンの記法(Iverson bracket)

otherwise0

trueis if1][

PP

C1(q) は訓練データ中で、文の先頭が q になっている回数

Page 12: 人工知能特論 II  第 8 回

12

HMM の教師付学習Supervised Learning of HMMs

aq,r を求める

Qr

rq

Qrq

q

Qr

Qrrq

Qr rq

qrq

n

i

T

t itti

qrqrq

rqCrqCa

rqC

rqCa

a

rqCa

rqqqrqC

arqC

aL

i

'

,

'

'

'',

,

,

1 2 )1(

,,

)',(),(

)1()',(

1)',(

1

)1(),(

),(

0),(

に代入して、。これを式よって、

であるからところで

ただし、

C(q,r) は訓練データ中で、状態 qから状態 r に遷移した回数

Page 13: 人工知能特論 II  第 8 回

13

HMM の教師付学習Supervised Learning of HMMs

bq,o を求める

n

i

T

t it

o

oq

oq

q

o

ooq

o oq

qoq

n

i

T

t itit

qoqoq

i

i

qqqC

qCoqC

oqCoqCb

oqC

oqCb

b

oqC

ooqqoqC

boqC

bL

1 1

'

,

'

'

'',

,

,

1 1

,,

)(

)(),(

)',(),(

)1()',(

1)',(

1

)1(),(b

),(

0),(

ただし、

に代入して、。式よって、

であるからところで

ただし、

C(q,o) は訓練データ中で、状態q から記号 o を出力した回数

C(q) は訓練データ中で、状態q が出現した回数

Page 14: 人工知能特論 II  第 8 回

14

HMM の教師付学習Supervised Learning of HMMs

パラメータ推定

の出現回数を出力した回数から

に遷移した回数から任意のに遷移した回数から

全文数になっている文の数先頭の状態が

qoq

qCoqC

oqCoqCb

rqrq

rqCrqCa

qnqC

o

oq

Qr

rq

q

)(),(

)',(),(

)',(),(

)(

'

,

'

,

1

n

i

T

t it

n

i

T

t itit

n

i

T

t itti

n

i i

i

i

i

qqqC

ooqqoqC

rqqqrqC

qqqC

1 1

1 1

1 2 )1(

1 11

)(

),(

),(

)(ただし、

Page 15: 人工知能特論 II  第 8 回

15

HMM の教師無し学習 : EM アルゴリズムの導入

Page 16: 人工知能特論 II  第 8 回

16

HMM の教師無し学習Unsupervised Learning of HMMs

パラメータ推定 訓練データ ( 入力 )

パラメータ ( 出力 )

n

i QqQqQqiTTii

ba

n

iiTii

ba

n

ii

ba

iT

ii

i

oqoqoqp

ooop

xpba

1 ,,2211

,,

121

,,

1,,

21

)(maxarg

)(maxarg

)(maxarg,,

の記号列長

とする。。単語列文を表す記号列

訓練データ

ii

iTiiiii

n

xT

ooooxxxxx

i

:

)(::

321

21

Page 17: 人工知能特論 II  第 8 回

17

HMM の教師無し学習Unsupervised Learning of HMMs

EM アルゴリズムによる教師無し学習不完全データ(欠損や曖昧性のあるデータ)

に対する有名な学習法EM アルゴリズム+前向き後向きアルゴリズ

Page 18: 人工知能特論 II  第 8 回

18

EM アルゴリズム

Page 19: 人工知能特論 II  第 8 回

19

EM アルゴリズムの問題設定 (1/2) 実際に観測されたデータ x1,...,xNが存在 それぞれのデータ xiは隠れ状態 yi1,...,yiTのいずれかから生成されたと仮定

隠れ状態の集合はデータ毎に変わっても良い (機械学習一般には隠れ状態集合は固定であることが多い )

パラメータ集合 θ により p(x, y) が計算される

x1

x2

x3

... ... ...p(x1, y11)y11 y12 y13

y21

y31 y32 y33 y34 y35

p(x1, y12) p(x1, y13)

p(x2, y21)

p(x3, y31) p(x3, y32) p(x3, y33)p(x3, y34) p(x3, y35)

Page 20: 人工知能特論 II  第 8 回

20

パラメータ推定 訓練データ ( 入力 )

パラメータ ( 出力 )

)(maxarg~);,(log)(

);,(logmaxarg

);,(maxarg

);(maxarg~

1 )(

1 )(

1 )(

1

lyxpl

yxp

yxp

xp

n

i xYyi

n

i xYyi

n

i xYyi

n

ii

i

i

i

とおくと

に対する隠れ状態集合

訓練データ

xxYxxx n

:)(: 21

EM アルゴリズムの問題設定 (2/2)

Page 21: 人工知能特論 II  第 8 回

21

EM アルゴリズムの全体像

)(maxarg~

l

),(maxarg )()1(

Q

問題変形

個々の問題に応じて決まる Q関数の極値を解析的に求める個々の問題によって決まるパラメータ更新式

[E ステップ ] p(y | x ; θ)を計算

[M ステップ ]

によりパラメータ更新

),(maxarg )()1(

Q

Page 22: 人工知能特論 II  第 8 回

22

Q 関数の導出 (1) 問題 : 実際に観測されたデータ x1,...,xn が存在して、それ

に対して、対数尤度を最大化するパラメータを求める

問題チェンジ : パラメータを θ から θ’ にした時の対数尤度の差を最大化することを繰り返せば極大値が求まる

);(logmaxarg)(maxarg~1

i

n

i

xpl

n

iii xpxp

1

);(log);(logmaxarg

argmaxを求めているが、ようは正の値になればより尤度の高いパラメータが得られることに注意

Page 23: 人工知能特論 II  第 8 回

23

Q 関数の導出 (2) 個々の事象の対数尤度の差

y i

ii

y i

ii

y i

i

i

ii

y i

ii

yi

i

i

i

iii

xypxypxyp

yxpyxpxyp

xypxyp

yxpyxpxyp

xpxpxyp

xypxpxp

xpxpxpxp

);|();|(log);|(

);,();,(log);|(

);|();|(

);,();,(log);|(

);();(log);|(

);|();();(log

);();(log);(log);(log

ジェンセンの不等式より、常に≧ 0

Page 24: 人工知能特論 II  第 8 回

24

Q 関数の導出 (3) 個々の事象の対数尤度の差

yii

yii

y i

ii

y i

ii

y i

iiii

yxpxypyxpxypyxpyxpxyp

xypxypxyp

yxpyxpxypxpxp

);,(log);|();,(log);|();,();,(log);|(

);|();|(log);|(

);,();,(log);|();(log);(log

ここを Q関数とみなす

yii yxpxypQ );,(log);|(),(

),( Qすると、ここは、

Page 25: 人工知能特論 II  第 8 回

25

Q 関数の導出 (4) まとめ

対数尤度の差は次のようにおける

ただし

より良いパラメータ θ’ を見つけるためには、 Q(θ, θ’) - Q(θ, θ) 0≧ となれば良いが、 効率を考えると、対数尤度の差が最大になるほうが良い Q(θ, θ) は θ’ に関わりなく一定なので、対数尤度の最大化するに

は、 Q(θ, θ’) を最大化すれば良い θ’ = θ とおくと ( 古いパラメータと同じにすると )Q 関数の差は 0

になる⇒ argmax をとれば、常に Q(θ, θ’)-Q(θ, θ) ≧0

),()',();(log);(log QQxpxp ii

y

ii yxpxypQ );,(log);|(),(

Page 26: 人工知能特論 II  第 8 回

26

EM アルゴリズム : Q 関数の最大化

次のパラメータ更新を繰り返すアルゴリズム

y

ii yxpxypQ );,(log);|(),(

),(maxarg )()1(

Q

ただし、

しかし、まだ問題は解けていない!argmax Qをどうやって求めるか??

n

i yii yxpxypQ

1

);,(log);|(),(

全ての観測データ x1, x2, ..., xnに対しては、

とすればよい

Page 27: 人工知能特論 II  第 8 回

27

休憩 : Q 関数の直感的な意味 (1)

Q 関数

( 古いパラメータ θ で計算した隠れ状態の条件付き確率 )× ( 新しいパラメータ θ’ による xi と y の同時確率の対数 )≒ xi と y の同時確率の対数の期待値

y

ii yxpxypQ );,(log);|(),(

xiy1

y2

y3

...

);,(log 1 yxp i

);,(log 2 yxp i

);,(log 3 yxp i

);|( 1 ixyp

);|( 2 ixyp

);|( 3 ixyp

Page 28: 人工知能特論 II  第 8 回

28

休憩 : Q 関数の直感的な意味 (2)

そもそもなぜ直接 θ を最大化しないのか?

????

);,(log

);,(log)(

1

1

n

i yi

n

i yi

yxp

yxpl

⇒パラメータ更新式にすれば、実はこの sumを logの外にだすことができるのであった

Page 29: 人工知能特論 II  第 8 回

29

ジェンセンの不等式 凸関数 f(x) は区間 I 上の実数値関数 p1,p2,...,pn は p1+p2+...+pn=1 を満たす非負の実数 任意の x1,x2,...,xn I ∈ に対し次の不等式が成り立

休憩 : ジェンセンの不等式

f(x)= - log(x) 、 xi=qi /pi とおくと

)()()()( 22112211 nnnn xpxpxpfxfpxfpxfp

0logloglog

ii

i i i

ii

i

ii q

pqp

qpp

Page 30: 人工知能特論 II  第 8 回

30

まとめ

HMM の教師付学習HMM の教師無し学習

EM アルゴリズムの導入EM アルゴリズム

Q 関数の導出資料

http://aiweb.cs.ehime-u.ac.jp/~ninomiya/ai2/