続・わかりやすいパターン認識 第7章「マルコフモデル」

21
5/12/2015 7th #ぞくパタ 1 続・わかりやすいパターン認識 7章 マルコフモデル(pp.123-132@tanimocchi

Upload: tadaaki-tanimoto

Post on 22-Jul-2015

842 views

Category:

Data & Analytics


1 download

TRANSCRIPT

5/12/2015 7th #ぞくパタ 1

続・わかりやすいパターン認識第7章 マルコフモデル(pp.123-132)

@tanimocchi

5/12/2015 7th #ぞくパタ 2

自己紹介 Twitter ID: @tanimocchi

(もっちぃ)

修士(数学)、博士(情報科学)

所属: Rの付く半導体

仕事: 車載Security(産業も) ビジネスモデル構築・市場開拓、セキュリティ・プロトコル/サーバ・ソ

フト/DBスキーマの仕様設計・開発管理 プロセッサアーキテクチャ拡張仕様定義もこれから手伝う感じ?

とはいえ、統計解析とパターン認識・機械学習は必要! だと信じてる。

統数研公開講座に参加するかもですので、ご一緒の際は宜しくお願いします。

バイタル・センサシングでのある種の推定モデル開発にも従事

5/12/2015 7th #ぞくパタ 3

7.1 マルコフ性とマルコフモデル

目的・試行の独立性が成り立たず、過去の試行に影響される場合を扱う

5/12/2015 7th #ぞくパタ 4

仮想的なサイコロ投げ [1/3] サイコロと聞くと“独立試行”と条件反射する前に……

現実に存在するサイコロは、その出る目の確率が等確率ではない(そんなサイコロは作れない)

限りなく重心が中心にあるサイコロ:販売価格 ¥47,500 (税抜) http://www.iriso-seimitsu.co.jp/tech/showcase3

6つの四角錘を組み合わせたとき、設計理論上中心から各底面までの距離の一致度は99.99999999%

5/12/2015 7th #ぞくパタ 5

仮想的なサイコロ投げ [2/3] 独立試行が成り立たない例

出る目の確率が均等でないサイコロがc種類存在し、全体でc個

全サイコロの目の数はm個

c個のサイコロの中かから復元抽出に従い選択し、n回振る

ここで、t回目に取り出したサイコロは、(t-1)回目に取り出したサイコロに依存して決定される

nt

ts

tvvvx

ct

mt

,,2,1

:,,,

:,,,

21

21

 ここで、 

取り出したサイコロでの状態時点

サイコロの目での観測結果時点

5/12/2015 7th #ぞくパタ 6

仮想的なサイコロ投げ [3/3] (t-1)回目のサイコロから、t回目のサイコロが選択される確率

t回目のサイコロの出る目の確率

 が成り立つ。  また、 

ここで、

  

cia

sPssP

cjissPaant

c

j

ij

jij

itjtjiij

,,2,11

,,2,1,,,,,2,1

1

101

1

i

1

2

j

c

(t-1)回目

t回目

起り得る全事象

……

 が成り立つ。  また、 

  

cjb

cjisvxPvbbnt

m

k

jk

jtktkjjk

,,2,11

,,2,1,,,,,2,1

1

j

1v

2v

kv

mv

t回目に選択したサイコロ

そのサイコロの目

起り得る全事象

……

前状態が現状態を決定

現状態が出力を決定

valuesymbolicsx tt :,

1ia

2ia

ija

ica

1jb

2jb

jkb

jmb

valueconcretev jk :,

5/12/2015 7th #ぞくパタ 7

マルコフモデル これまで述べた構造は、確率的な状態遷移と確率的な出力機能を備えたマルコフモデル(Markov Model)を表す マルコフ性(Markov property)

現在の状態が一時点前の状態に依存して確率的に決まる特性

マルコフ過程(Markov process) そのような特性を満たす過程

j重マルコフ過程(j-th order Markov process) 現在の状態が直前のj時点の状態に依存して確率的に決まるマルコフ過程

j=1のとき、単純マルコフ過程(simple Markov process)← 以下これのみ扱う

マルコフ連鎖(Markov chain) マルコフ過程の結果得られる状態の系列(確率的に状態が遷移していく過程)

次状態関数(遷移確率)

状態

出力関数(出力確率)

出力記号

statetransition probability output probability

output symbol

入力を伴わない特殊なムーア型ステートマシーン(次状態関数=遷移確率、出力関数=出力確率)特殊な確率I/Oオートマトンとして定義する事も可能

5/12/2015 7th #ぞくパタ 8

マルコフモデルの振る舞い 試行の独立性が成り立たない

出力は現状態にのみ依存して決定

次状態関数(遷移確率)

状態

出力関数(出力確率)

出力記号

statetransition probability output probability

output symbol

nnnn

nnnn

nn

nn

sxPsxPsxPsssxxxPP

xsPxsPxsPxxxsssPP

sPsPsPsssPP

xPxPxPxxxPP

,,,,,,,,,,,

,,,,,,

,,,

,,,

22112121

22112121

2121

2121

sx

xs

s

x

nnnn sxPsxPsxPsssxxxPP 22112121 ,,,,,, sx

ts

tx

1s

2s

ts

ns

1x

2x

tx

nx

Graphical Model

1s

2s

ts

ns

1x

2x

tx

nx

1s

2s

ts

ns

1x

2x

tx

nx

5/12/2015 7th #ぞくパタ 9

遷移確率と出力確率の行列表現 [1/3] 遷移確率と出力確率の行列表現

次状態関数(遷移確率)

aij

状態

出力関数(出力確率)

bjk

出力記号

state

output symbol

ccMaij ,

A mcMb jk ,

B

transition probability output probability

mjkijc vvvba

2121

5/12/2015 7th #ぞくパタ 10

遷移確率と出力確率の行列表現 [2/3] c=3(サイコロω1,ω2,ω3の3個)、m=2(v1:奇数,v2:偶数)の例

7.03.0

4.06.0

2.08.0

,

6.01.03.0

7.01.02.0

5.04.01.0

BA  

6.01.03.0

7.01.02.0

5.04.01.0

3

2

1

321

  

7.03.0

4.06.0

2.08.0

3

2

1

21

vv  t回目のサイコロ(t-

1)回目のサイコロ

t

回目のサイコロ

t回目の奇数・偶数

マルコフモデルの状態遷移図

ω1

ω2 ω3

0.1

0.1

0.4

0.2 0.5

0.3

0.60.1

0.7

5/12/2015 7th #ぞくパタ 11

遷移確率と出力確率の行列表現 [3/3] c=3(サイコロω1,ω2,ω3の3個)、m=2(v1:奇数,v2:偶数)の例

53.047.0

7.03.0

4.06.0

2.08.0

5.04.01.0

5.0

4.0

1.0

5.0

4.0

1.0

0

0

1

6.07.05.0

1.01.04.0

3.02.01.0

0

0

1

0

0

1

B

AA  

次状態関数(遷移確率)

aij

状態

出力関数(出力確率)

bjk

出力記号output symbol

mjkijc vvvba

2121

ω1

ω2 ω3

0.1

0.1

0.4

0.2 0.5

0.3

0.60.1

0.7

statetransition probability output probability

5/12/2015 7th #ぞくパタ 12

7.2 マルコフモデルのパラメータ推定

目的・観測結果からの遷移確率行列A、出力確率行列B、及び初期状態確率ベクトルρ、の最尤推定

5/12/2015 7th #ぞくパタ 13

マルコフモデルを表現するための記号

次元ベクトルを成分としてもつ:

の行列成分として持つを:

の行列成分として持つを:

を満たすである確率が状態:初期状態

を出力する確率で:状態

への遷移確率から状態:状態

出力記号系列:観測記号系列

:状態系列

回目に出た目出力記号での観測結果:時点

コロ回目に取り出したサイでの状態:時点

番目の目サイコロの番目の出力記号:

番目のサイコロ番目の状態:

サイコロの目の数:出力記号の数

サイコロの種類数:状態数

:観測回数

ラメータ。はマルコフモデルのパ とする。特に、 以下、

c

mckjb

ccjia

tsP

vvbb

aa

xxx

sss

ttvvvx

tts

kkv

ii

m

c

n

mkcji

ic

jk

ij

c

i iiii

kjkjjk

jijiij

n

n

mt

ct

k

i

,,,

,

,

11

,,

,,

,,,

,,,

,,,

,,,

,,,2,1,,2,1,

21

11

21

21

21

21

ρ

B

A

x

s

ρBA

5/12/2015 7th #ぞくパタ 14

パラメータ最尤推定の問題設定 例題7.1

箱の中にc種のサイコロω1,ω2,…ωcがあり、その何れかを取り出し、サ

イコロの種類を確認した上でそのサイコロを投げ、出た目を観測した後、サイコロを元の箱に戻すという操作をn回繰り返す。ここで、

1. 最初にサイコロωiを取り出す確率はρiである

2. サイコロωiを取り出した後にサイコロωjを取り出す確率はaijである

3. サイコロωjを投げて出た目がvkとなる確率はbjkである

とする。但し、i,j=1,2,…,c, k=1,2,…,mである。その結果、サイコロの

目の系列としてx=x1x2…xt…xnが得られ、サイコロの種類の系列とし

てs=s1ss2…st…snが得られた。このとき、観測結果から、A,B,ρを最尤

推定により推定せよ。

本例題は、xだけでなく、sの情報も得られており、完全データを扱った教師付き学習 例題5.2に対して、マルコフ性を取り入れた例題

5/12/2015 7th #ぞくパタ 15

尤度関数としての同時確率P(x,s)の算出 P(x,s)= P(s)P(x|s)

P(x|s)の算出

P(s)の算出

P(x,s)の算出

tttttt

n

t

nnnn

sxPxsbxsb

sxPsxPsxPsssxxxPP

,,

,,,,,,

1

22112121

  

sx

としたここで、   ,,

,,,,,,

11011

13221121

sPssassa

ssassassasPsssPP

tt

n

t

nnn

s

tttt

n

t

xsbssaPPP ,,, 11

sxssx

5/12/2015 7th #ぞくパタ 16

対数尤度関数logP(x,s) logP(x,s)の算出と最尤推定に向けた記号の導入

上式のLρ、La、Lbは、それぞれパラメータρi、aij、bjkのみを含むので、logP(x,s)を最大化するにはLρ、La、Lbを、それらのパラメータに関してそれぞれ独立に最大化すればよい。

n

t

tt

def

b

n

t

tt

def

a

def

ba

n

l

ll

n

t

tt

ll

n

ltt

n

ttttt

n

t

xsbL

ssaL

sPL

sPssaLLLxsbssasP

xsbssassaxsbssaP

1

1

1

1

1

110

1

1

1

11

11

1

1101

1

,

,log

log

,,,loglog

,,,log,,log,log

  

  

  

ここで、

  

sx

5/12/2015 7th #ぞくパタ 17

定理5.1(p.82)再掲 定理5.1

nix

x

xxxxf

x

xxxxn

n

n

k

kii

i

n

i

iin

n

i

i

in

n

,,2,1

log,,

1

10,,

,,

1

1

21

1

21

21

   

は次式で与えられる。を最大にする

  

する。このときを満たしているものと

  

が拘束条件個の変数

がある。ここで、個の正の定数いま、

5/12/2015 7th #ぞくパタ 18

Laの最大化 ni:サイコロωiを取り出した回数

mij:サイコロをωi,ωjと連続して取り出した回数

i

1

c

(t+1)回目

…………

…………

t回目

回11 ii ma

回22 ii ma

回ijij ma

回icic ma

回in

ts 1ts 1, tt ssa

2

j

11 log ii am

22 log ii am

ijij am log

icic am log

Concrete state transition

Symbolic state transition

1

1

1,logn

t

tta ssaL

c

i

c

j

ijij

n

t

tta amssaL1 1

1

1

1 log,log

11

c

j

ija

i

c

j

ij nm 1

最大化対象の関数

拘束条件

自明な条件

i

ij

c

h

ih

ij

ij

n

m

m

ma

1

ˆ

定理5.1

各遷移が、ni回中mij回発生

5/12/2015 7th #ぞくパタ 19

Lbの最大化 nj:サイコロωjを取り出した回数

njk:サイコロωjを投げて出た目がvkであった回数

j

1v

mv

…………

…………

回1j1 nb j

回22 jj nb

回jkjk nb

回jmjm nb

回jn

ts tx tt xsb ,

2v

kv

11 log jj bn

22 log jj bn

jkjk bn log

jmjm bn log

Concrete output function

Symbolic output function

n

t

ttb xsbL1

,log

c

j

m

k

jkjk

n

t

ttb bnxsbL1 11

log,log

11

m

k

jkb

j

m

k

jk nn 1

最大化対象の関数

拘束条件

自明な条件

j

jk

m

l

jl

jk

jk

n

n

n

nb

1

ˆ

定理5.1

t回目に選択したサイコロ

そのサイコロの目

各出力が、nj回中njk回発生

5/12/2015 7th #ぞくパタ 20

Lρの最大化 本例題で扱う観測データは完全データであるので、s1が

ω1,ω2,…ωcのいずれかであるかは既知。

そこで、 s1=ωiであったと仮定する。

すると下記が得られる。

推定値は上式を最大にするパラメータρであり、下記を得る

iisPL loglog 1

ijj

i

 0ˆ

010

i

初期状態確率ベクトル

5/12/2015 7th #ぞくパタ 21

Thanks a lot!