46
3.5 逐次ベイズ学習 - サンプリング近似法の場合- 5 回『トピックモデルによる統計的潜在意味解析』読書会 2015/08/27

逐次ベイズ学習 - サンプリング近似法の場合 -

  • Upload
    y-uti

  • View
    7.024

  • Download
    0

Embed Size (px)

Citation preview

Page 1: 逐次ベイズ学習 - サンプリング近似法の場合 -

3.5 逐次ベイズ学習 -サンプリング近似法の場合-

第 5 回『トピックモデルによる統計的潜在意味解析』読書会

2015/08/27

Page 2: 逐次ベイズ学習 - サンプリング近似法の場合 -

自己紹介名前◦ 内山雄司

職業◦ エンジニア(プログラマ)

アカウント◦ ツイッター @y__uti

◦ ブログ http://y-uti.hatenablog.jp

2015/08/27 第 5 回『トピックモデルによる統計的潜在意味解析』読書会 2

Page 3: 逐次ベイズ学習 - サンプリング近似法の場合 -

発表の構成復習:周辺化ギブスサンプリング◦ 周辺化ギブスサンプリング

◦ 逐次学習のイメージ

3.5.1 粒子フィルタ◦ 粒子フィルタの概要

◦ 逐次更新式の導出

◦ リサンプリング

3.5.2 LDA の粒子フィルタ◦ モデルの説明

◦ 逐次更新式の導出

◦ LDA のリサンプリング

2015/08/27 第 5 回『トピックモデルによる統計的潜在意味解析』読書会 3

Page 4: 逐次ベイズ学習 - サンプリング近似法の場合 -

復習:周辺化ギブスサンプリング

教科書 57 ページの図 3.2 (右側)

2015/08/27 第 5 回『トピックモデルによる統計的潜在意味解析』読書会 4

Page 5: 逐次ベイズ学習 - サンプリング近似法の場合 -

周辺化ギブスサンプリング

◦ 入力 = 文書の集合 (コーパス)

◦ パラメータ α, β の初期化◦ 適当に決めて固定する

◦ パラメータ更新は教科書 3.6 節で

2015/08/27 第 5 回『トピックモデルによる統計的潜在意味解析』読書会 5

すもも も 桃 も 桃 の うち 。

本日 は 晴天 なり 。

我輩 は 猫 で ある 。

Page 6: 逐次ベイズ学習 - サンプリング近似法の場合 -

周辺化ギブスサンプリング

◦ トピックの割り当ての初期化◦ ランダムに割り当てる

◦ トピック数は事前に決めておく

2015/08/27 第 5 回『トピックモデルによる統計的潜在意味解析』読書会 6

すもも も 桃 も 桃 の うち 。

本日 は 晴天 なり 。

我輩 は 猫 で ある 。

Page 7: 逐次ベイズ学習 - サンプリング近似法の場合 -

周辺化ギブスサンプリング

2015/08/27 第 5 回『トピックモデルによる統計的潜在意味解析』読書会 7

すもも も 桃 も 桃 の うち 。

本日 は 晴天 なり 。

我輩 は 猫 で ある 。

2 3 3

3 1 1

3 1 2

。 ある うち すもも で なり の は も 我輩 晴天 桃 猫 本日

3 0 0 0 0 1 0 0 0 1 1 1 1 0

0 0 0 0 0 0 1 1 1 0 0 1 0 1

0 1 1 1 1 0 0 1 1 0 0 0 0 0

nd,k

nk,v

Page 8: 逐次ベイズ学習 - サンプリング近似法の場合 -

周辺化ギブスサンプリング

2015/08/27 第 5 回『トピックモデルによる統計的潜在意味解析』読書会 8

すもも も 桃 も 桃 の うち 。

本日 は 晴天 なり 。

我輩 は 猫 で ある 。

2 3 3

3 1 1

2 1 2

。 ある うち すもも で なり の は も 我輩 晴天 桃 猫 本日

3 0 0 0 0 1 0 0 0 0 1 1 1 0

0 0 0 0 0 0 1 1 1 0 0 1 0 1

0 1 1 1 1 0 0 1 1 0 0 0 0 0

zd,i

Page 9: 逐次ベイズ学習 - サンプリング近似法の場合 -

周辺化ギブスサンプリング

2015/08/27 第 5 回『トピックモデルによる統計的潜在意味解析』読書会 9

すもも も 桃 も 桃 の うち 。

本日 は 晴天 なり 。

我輩 は 猫 で ある 。

2 3 3

3 1 1

2 1 2

。 ある うち すもも で なり の は も 我輩 晴天 桃 猫 本日

3 0 0 0 0 1 0 0 0 0 1 1 1 0

0 0 0 0 0 0 1 1 1 0 0 1 0 1

0 1 1 1 1 0 0 1 1 0 0 0 0 0

nd,k

d,i

nk,v

d,i

式 (3.38) の確率で zd,iを決め直す

zd,i

Page 10: 逐次ベイズ学習 - サンプリング近似法の場合 -

周辺化ギブスサンプリング

2015/08/27 第 5 回『トピックモデルによる統計的潜在意味解析』読書会 10

すもも も 桃 も 桃 の うち 。

本日 は 晴天 なり 。

我輩 は 猫 で ある 。

2 3 3

3 1 1

2 1 3

。 ある うち すもも で なり の は も 我輩 晴天 桃 猫 本日

3 0 0 0 0 1 0 0 0 0 1 1 1 0

0 0 0 0 0 0 1 1 1 0 0 1 0 1

0 1 1 1 1 0 0 1 1 1 0 0 0 0

zd,i

Page 11: 逐次ベイズ学習 - サンプリング近似法の場合 -

周辺化ギブスサンプリング

2015/08/27 第 5 回『トピックモデルによる統計的潜在意味解析』読書会 11

すもも も 桃 も 桃 の うち 。

本日 は 晴天 なり 。

我輩 は 猫 で ある 。

2 3 3

3 1 1

2 0 3

。 ある うち すもも で なり の は も 我輩 晴天 桃 猫 本日

3 0 0 0 0 1 0 0 0 0 1 1 1 0

0 0 0 0 0 0 1 0 1 0 0 1 0 1

0 1 1 1 1 0 0 1 1 1 0 0 0 0

zd,i

Page 12: 逐次ベイズ学習 - サンプリング近似法の場合 -

周辺化ギブスサンプリング

2015/08/27 第 5 回『トピックモデルによる統計的潜在意味解析』読書会 12

すもも も 桃 も 桃 の うち 。

本日 は 晴天 なり 。

我輩 は 猫 で ある 。

2 3 3

3 1 1

2 0 3

。 ある うち すもも で なり の は も 我輩 晴天 桃 猫 本日

3 0 0 0 0 1 0 0 0 0 1 1 1 0

0 0 0 0 0 0 1 0 1 0 0 1 0 1

0 1 1 1 1 0 0 1 1 1 0 0 0 0

zd,i

以下省略

Page 13: 逐次ベイズ学習 - サンプリング近似法の場合 -

周辺化ギブスサンプリング

2015/08/27 第 5 回『トピックモデルによる統計的潜在意味解析』読書会 13

すもも も 桃 も 桃 の うち 。

本日 は 晴天 なり 。

我輩 は 猫 で ある 。

1 3 4

3 0 2

1 2 3

。 ある うち すもも で なり の は も 我輩 晴天 桃 猫 本日

2 0 0 0 0 0 0 0 0 0 1 0 1 1

0 0 0 0 1 0 1 1 0 0 0 2 0 0

1 1 1 1 0 1 0 1 2 1 0 0 0 0

zd,i

Page 14: 逐次ベイズ学習 - サンプリング近似法の場合 -

周辺化ギブスサンプリング

2015/08/27 第 5 回『トピックモデルによる統計的潜在意味解析』読書会 14

すもも も 桃 も 桃 の うち 。

本日 は 晴天 なり 。

我輩 は 猫 で ある 。

1 3 4

3 0 2

1 2 3

。 ある うち すもも で なり の は も 我輩 晴天 桃 猫 本日

2 0 0 0 0 0 0 0 0 0 1 0 1 1

0 0 0 0 1 0 1 1 0 0 0 2 0 0

1 1 1 1 0 1 0 1 2 1 0 0 0 0

zd,i

これで sのループ一回分

Page 15: 逐次ベイズ学習 - サンプリング近似法の場合 -

周辺化ギブスサンプリング一括 (バッチ) 学習◦ 最初に全文書を読み込む

◦ 学習中は全文書の情報を保持する

◦ 最後にまとめて全文書のトピック分布が得られる

⇔逐次学習◦ 一文書ずつ順番に読み込まれる

◦ その文書のトピック分布を学習する

◦ 学習が終わったら文書は捨てる◦ 統計量のみを保持する

2015/08/27 第 5 回『トピックモデルによる統計的潜在意味解析』読書会 15

Page 16: 逐次ベイズ学習 - サンプリング近似法の場合 -

逐次学習のイメージ文書を一つずつ読み込んで学習◦ これまでの学習で蓄積された nk,vを保持

◦ 文書そのものは学習が済んだら捨ててしまう

2015/08/27 第 5 回『トピックモデルによる統計的潜在意味解析』読書会 16

。 ある うち で なり の は も 我輩 晴天 猫 本日

18 30 4 74 20 80 93 28 7 0 28 0

25 2 9 60 0 101 80 58 1 9 0 18

20 3 0 48 3 20 74 31 0 2 4 2

nk,v

Page 17: 逐次ベイズ学習 - サンプリング近似法の場合 -

逐次学習のイメージ文書中の単語を走査する◦ 一つずつ確率的にトピックを決めていく

2015/08/27 第 5 回『トピックモデルによる統計的潜在意味解析』読書会 17

。 ある うち で なり の は も 我輩 晴天 猫 本日

18 30 4 74 20 80 93 28 7 0 28 0

25 2 9 60 0 101 80 58 1 9 0 18

20 3 0 48 3 20 74 31 0 2 4 2

も 桃 も 桃 の うち 。すもも0 0 0

zd,i

Page 18: 逐次ベイズ学習 - サンプリング近似法の場合 -

逐次学習のイメージ文書中の単語を走査する◦ 一つずつ確率的にトピックを決めていく

2015/08/27 第 5 回『トピックモデルによる統計的潜在意味解析』読書会 18

桃 も 桃 の うち 。すもも も0 1 0

zd,i

。 ある うち で なり の は も 我輩 晴天 猫 本日 すもも

18 30 4 74 20 80 93 28 7 0 28 0 0

25 2 9 60 0 101 80 58 1 9 0 18 1

20 3 0 48 3 20 74 31 0 2 4 2 0

Page 19: 逐次ベイズ学習 - サンプリング近似法の場合 -

逐次学習のイメージ文書中の単語を走査する◦ 一つずつ確率的にトピックを決めていく

2015/08/27 第 5 回『トピックモデルによる統計的潜在意味解析』読書会 19

も 桃 の うち 。すもも も 桃0 2 0

zd,i

。 ある うち で なり の は も 我輩 晴天 猫 本日 すもも

18 30 4 74 20 80 93 28 7 0 28 0 0

25 2 9 60 0 101 80 59 1 9 0 18 1

20 3 0 48 3 20 74 31 0 2 4 2 0

Page 20: 逐次ベイズ学習 - サンプリング近似法の場合 -

逐次学習のイメージ文書中の単語を走査する◦ 一つずつ確率的にトピックを決めていく

2015/08/27 第 5 回『トピックモデルによる統計的潜在意味解析』読書会 20

桃 の うち 。すもも も 桃 も0 3 0

zd,i

。 ある うち で なり の は も 我輩 晴天 猫 本日 すもも 桃

18 30 4 74 20 80 93 28 7 0 28 0 0 0

25 2 9 60 0 101 80 59 1 9 0 18 1 1

20 3 0 48 3 20 74 31 0 2 4 2 0 0

Page 21: 逐次ベイズ学習 - サンプリング近似法の場合 -

逐次学習のイメージ文書中の単語を走査する◦ 一つずつ確率的にトピックを決めていく

2015/08/27 第 5 回『トピックモデルによる統計的潜在意味解析』読書会 21

の うち 。すもも も 桃 も 桃0 3 1

zd,i

。 ある うち で なり の は も 我輩 晴天 猫 本日 すもも 桃

18 30 4 74 20 80 93 28 7 0 28 0 0 0

25 2 9 60 0 101 80 59 1 9 0 18 1 1

20 3 0 48 3 20 74 32 0 2 4 2 0 0

Page 22: 逐次ベイズ学習 - サンプリング近似法の場合 -

逐次学習のイメージ文書中の単語を走査する◦ 一つずつ確率的にトピックを決めていく

2015/08/27 第 5 回『トピックモデルによる統計的潜在意味解析』読書会 22

うち 。すもも も 桃 も 桃 の0 4 1

zd,i

。 ある うち で なり の は も 我輩 晴天 猫 本日 すもも 桃

18 30 4 74 20 80 93 28 7 0 28 0 0 0

25 2 9 60 0 101 80 59 1 9 0 18 1 2

20 3 0 48 3 20 74 32 0 2 4 2 0 0

Page 23: 逐次ベイズ学習 - サンプリング近似法の場合 -

逐次学習のイメージ文書中の単語を走査する◦ 一つずつ確率的にトピックを決めていく

2015/08/27 第 5 回『トピックモデルによる統計的潜在意味解析』読書会 23

。すもも も 桃 も 桃 の うち1 4 1

zd,i

。 ある うち で なり の は も 我輩 晴天 猫 本日 すもも 桃

18 30 4 74 20 81 93 28 7 0 28 0 0 0

25 2 9 60 0 101 80 59 1 9 0 18 1 2

20 3 0 48 3 20 74 32 0 2 4 2 0 0

Page 24: 逐次ベイズ学習 - サンプリング近似法の場合 -

逐次学習のイメージ文書中の単語を走査する◦ 一つずつ確率的にトピックを決めていく

2015/08/27 第 5 回『トピックモデルによる統計的潜在意味解析』読書会 24

すもも も 桃 も 桃 の うち 。1 5 1

zd,i

。 ある うち で なり の は も 我輩 晴天 猫 本日 すもも 桃

18 30 4 74 20 81 93 28 7 0 28 0 0 0

25 2 9 60 0 101 80 59 1 9 0 18 1 2

20 3 0 48 3 20 74 32 0 2 4 2 0 0

Page 25: 逐次ベイズ学習 - サンプリング近似法の場合 -

逐次学習のイメージ学習結果が得られる◦ 学習が終われば文書をそれ以上保持する必要はない

2015/08/27 第 5 回『トピックモデルによる統計的潜在意味解析』読書会 25

すもも も 桃 も 桃 の うち 。1 6 1

。 ある うち で なり の は も 我輩 晴天 猫 本日 すもも 桃

18 30 4 74 20 81 93 28 7 0 28 0 0 0

26 2 9 60 0 101 80 59 1 9 0 18 1 2

20 3 0 48 3 20 74 32 0 2 4 2 0 0

Page 26: 逐次ベイズ学習 - サンプリング近似法の場合 -

逐次学習のイメージこんな安直な方法でまともに学習できるのか?◦ できない

◦ では、どうすればよいか? = 今日の話

2015/08/27 第 5 回『トピックモデルによる統計的潜在意味解析』読書会 26

すもも も 桃 も 桃 の うち 。1 6 1

。 ある うち で なり の は も 我輩 晴天 猫 本日 すもも 桃

18 30 4 74 20 81 93 28 7 0 28 0 0 0

26 2 9 60 0 101 80 59 1 9 0 18 1 2

20 3 0 48 3 20 74 32 0 2 4 2 0 0

Page 27: 逐次ベイズ学習 - サンプリング近似法の場合 -

3.5.1 粒子フィルタ

教科書 100 ~ 105 ページ

2015/08/27 第 5 回『トピックモデルによる統計的潜在意味解析』読書会 27

Page 28: 逐次ベイズ学習 - サンプリング近似法の場合 -

粒子フィルタとは?動的システムにおいて潜在変数を逐次的にサンプリングする手法

動的システムのモデル例(状態空間モデル or 隠れマルコフモデル)

2015/08/27 第 5 回『トピックモデルによる統計的潜在意味解析』読書会 28

zt-1 zt zt+1

xtxt-1 xt+1

zt ~ p(zt|zt-1)

xt ~ p(xt|zt)

◦ x1:tを観測したもとで潜在変数 z1:t ~ p(z1:t|x1:t) をサンプリングしたい

図 3.7 (a) より

Page 29: 逐次ベイズ学習 - サンプリング近似法の場合 -

粒子フィルタの動作イメージ事後分布 p(z1:t|x1:t) をたくさんの重み付きサンプルで近似する

◦ 時刻 t-1 で事後分布 p(z1:t-1|x1:t-1) からサンプルが得られているとする

2015/08/27 第 5 回『トピックモデルによる統計的潜在意味解析』読書会 29

zt-1 zt zt+1

xtxt-1 xt+1

zt ~ p(zt|zt-1)

xt ~ p(xt|zt)

Page 30: 逐次ベイズ学習 - サンプリング近似法の場合 -

粒子フィルタの動作イメージ事後分布 p(z1:t|x1:t) をたくさんの重み付きサンプルで近似する

◦ zt ~ p(zt|zt-1) により時刻 t での事前分布からのサンプルを得る

2015/08/27 第 5 回『トピックモデルによる統計的潜在意味解析』読書会 30

zt zt+1

xtxt-1 xt+1

zt-1

zt ~ p(zt|zt-1)

xt ~ p(xt|zt)

Page 31: 逐次ベイズ学習 - サンプリング近似法の場合 -

粒子フィルタの動作イメージ事後分布 p(z1:t|x1:t) をたくさんの重み付きサンプルで近似する

◦ p(xt|zt) で重み付けして時刻 t での事後分布からのサンプルを得る

2015/08/27 第 5 回『トピックモデルによる統計的潜在意味解析』読書会 31

zt-1 zt zt+1

xtxt-1 xt+1

zt ~ p(zt|zt-1)

xt ~ p(xt|zt)

Page 32: 逐次ベイズ学習 - サンプリング近似法の場合 -

粒子フィルタの動作イメージ事後分布 p(z1:t|x1:t) をたくさんの重み付きサンプルで近似する

◦ zt+1 ~ p(zt+1|zt) により時刻 t+1 での事前分布からのサンプルを得る

2015/08/27 第 5 回『トピックモデルによる統計的潜在意味解析』読書会 32

zt-1 zt zt+1

xtxt-1 xt+1

zt ~ p(zt|zt-1)

xt ~ p(xt|zt)

◦ 以下繰り返し

Page 33: 逐次ベイズ学習 - サンプリング近似法の場合 -

重点サンプリング積分計算が困難な確率分布 p(x) からのサンプリング手法◦ サンプリングが容易な提案分布 q(x) から x ~ q(x) をサンプリング

◦ 得られたサンプル x を w(x) = p(x) / q(x) で重み付け

2015/08/27 第 5 回『トピックモデルによる統計的潜在意味解析』読書会 33

p(x)

q(x)

q(x) からのサンプルでは少ない⇒ w(x) = p(x)/q(x) > 1 で調整

q(x) からのサンプルが多い⇒ w(x) = p(x)/q(x) < 1で調整

Page 34: 逐次ベイズ学習 - サンプリング近似法の場合 -

逐次更新式の導出時刻 t での事後分布 p(z1:t|x1:t) が次式で近似されているとする

2015/08/27 第 5 回『トピックモデルによる統計的潜在意味解析』読書会 34

◦ ただし

式 (3.161), 式 (3.162) より

式 (3.162) より

Page 35: 逐次ベイズ学習 - サンプリング近似法の場合 -

逐次更新式の導出時刻 t+1 での潜在変数 zt+1の事前分布を近似する

2015/08/27 第 5 回『トピックモデルによる統計的潜在意味解析』読書会 35

式 (3.165) より

Page 36: 逐次ベイズ学習 - サンプリング近似法の場合 -

逐次更新式の導出提案分布を次式のようにおく

2015/08/27 第 5 回『トピックモデルによる統計的潜在意味解析』読書会 36

◦ 次式を仮定したことに相当する

◦ 確率の乗法の定理からは次式が成り立つので

式 (3.167) より

103 ページ本文より

103 ページ本文より

Page 37: 逐次ベイズ学習 - サンプリング近似法の場合 -

逐次更新式の導出時刻 t+1 での事後分布 p(z1:t+1|x1:t+1) を次式で近似したい

2015/08/27 第 5 回『トピックモデルによる統計的潜在意味解析』読書会 37

◦ ただし

式 (3.161), 式 (3.162) より; 時刻を t+1 に進めたもの

Page 38: 逐次ベイズ学習 - サンプリング近似法の場合 -

逐次更新式の導出重みの更新式の計算

2015/08/27 第 5 回『トピックモデルによる統計的潜在意味解析』読書会 38

◦ ここで分母を次式のようにおけば

◦ 重みの更新式は次式のように簡単な形で求められる

式 (3.168) より

式 (3.169) より

103 ページ本文より

Page 39: 逐次ベイズ学習 - サンプリング近似法の場合 -

リサンプリング時刻 t が進むにつれて一部の粒子に重みが集中する◦ 有限の S 個の粒子で p(z1:t|x1:t) をうまく近似できなくなってくる

重みが集中したら ω(z1:t) の確率で S 個の粒子をサンプリングする◦ イメージ:重い粒子を分割することで各粒子の重みを 1/S に揃える

Effective Sample Size (ESS) : 重みの集中の度合い

2015/08/27 第 5 回『トピックモデルによる統計的潜在意味解析』読書会 39

(s)

◦ 適当な閾値を定めて ESS が閾値を下回ったらリサンプリングする

式 (3.170) より

Page 40: 逐次ベイズ学習 - サンプリング近似法の場合 -

3.5.2 LDA の粒子フィルタ

教科書 105 ~ 110 ページ

2015/08/27 第 5 回『トピックモデルによる統計的潜在意味解析』読書会 40

Page 41: 逐次ベイズ学習 - サンプリング近似法の場合 -

粒子フィルタのための文書モデル文書の集合を隠れマルコフモデルと仮定する◦ トピック = 潜在変数

◦ 単語 = 観測データ

2015/08/27 第 5 回『トピックモデルによる統計的潜在意味解析』読書会 41

w1,1

我輩

z1,1 z1,2 z1,3

w1,2

w1,3

w1,4

w1,5

ある

w1,6

w2,1

本日

w2,2

z1,4 z1,5 z1,6 z2,1 z2,2

z(1,4), w(1,4)

z(2,2), w(2,2)図 3.9 + 図 3.7 (a) に対応

このスライドは恐らくいろいろと間違っています

Page 42: 逐次ベイズ学習 - サンプリング近似法の場合 -

LDA の逐次更新式次式よりトピック zd,iを S 個サンプリングする

2015/08/27 第 5 回『トピックモデルによる統計的潜在意味解析』読書会 42

◦ LDA では wd,i = v 観測後の分布(事後分布)からサンプリング可能

式 (3.172) より; 56 ページの式 (3.38) と比較

Page 43: 逐次ベイズ学習 - サンプリング近似法の場合 -

LDA の逐次更新式重みの更新

2015/08/27 第 5 回『トピックモデルによる統計的潜在意味解析』読書会 43

式 (3.175), 式 (3.176) より

zd,iのサンプリングのために式 (3.172) で計算済み

Page 44: 逐次ベイズ学習 - サンプリング近似法の場合 -

トピック分布重み付きサンプルでトピック分布を近似する

2015/08/27 第 5 回『トピックモデルによる統計的潜在意味解析』読書会 44

式 (3.177) より

Page 45: 逐次ベイズ学習 - サンプリング近似法の場合 -

LDA のリサンプリング"Rejuvenates old topic assignments in light of new data"

◦ 過去の観測列から R 個の wl,mを選ぶ

◦ トピック zl,mを次式でリサンプリングする

2015/08/27 第 5 回『トピックモデルによる統計的潜在意味解析』読書会 45

文献 15) Canini et al., (2009) より

式 (3.179) より; 56 ページの式 (3.38) と比較

◦ 過去の観測列に対して少しだけギブスサンプリングするイメージ

Page 46: 逐次ベイズ学習 - サンプリング近似法の場合 -

近似精度と実行速度LDA の粒子フィルタの超パラメータ◦ S 粒子数

◦ R 活性化サンプル数

値が大きいほど◦ 近似精度 高

◦ 実行時間 大◦ 1 単語あたりの計算量は O(SR)

R 個の活性化サンプルをどの範囲からサンプリングするか◦ 範囲が広いほどメモリ使用量が増える

2015/08/27 第 5 回『トピックモデルによる統計的潜在意味解析』読書会 46