サンプルx

HMM(Hidden Markov Model)
による音声認識(2)
ー連続分布型HMM,学習-
離散分布型HMM
S0
a22=0.2
a11=0.6
離散分布型HMM(離散HMM):
状態における特徴量の分布が
離散的
a01=1.0
S1
a12=0.4
S2
b2(v1) = 0.6
b2(v2) = 0.4
b1(v1) = 0.7
b1(v2) = 0.3
p(v)
p(v)
0.7
0.6
0.4
0.3
v1
v2
a23=0.8
v1
v2
S3
連続分布型HMM
S0
a01=1.0
a22=0.2
a11=0.6
連続分布型HMM(連続HMM):
状態における特徴量の分布が
連続的
S1
a12=0.4
S2
a23=0.8
S3
p(c)   wm N (c; μ m , Σ m )
m
N (c; μ m , Σ m )


1
2

D
Σm
 1

T
1
exp   c  μ m  Σ m c  μ m 
 2

p(c)
p(c)
c1
c2
c1
c2
ケプストラム分布


正規分布に従うことが多い
量子化誤差を防ぐためにも連続分布で表
現することが望ましい
DPとHMM
DPマッチング
標準パターン
標準パターンからの距離は常に同等に評価する
DPとHMM
HMM
局所的に標準パターン(≒平均)からの距離が変動する
HMM3つの基本問題
モデル(HMM)に対する観測系列(音声ではケ
プストラムなど)の出力確率の計算
1.

前向きパス(Forward)アルゴリズム
最適な状態系列を求める
2.

ビタビ(Viterbi)アルゴリズム
モデルから観測系列を出力する確率を最大と
するモデルのパラメータの設定
3.

EMアルゴリズム、Baum-Welchアルゴリズム
最尤推定


尤度(likelihood):ある仮説(モデル;λ)の
もとで観測された事象(o)が生じる確率
p(o|λ)
尤度が最大となるようにパラメータ推定を
行うことを最尤推定という
最尤推定の例(1)ー離散分布ー
事象{Xi | i=1, …, M}の確率Θ={pi}(i=1, …, M)を推定
観測系列O(Xiの系列)を得た結果Xiの回数がniであったとき
M
条件:
 pi  1 の下で P(O | ) 
i 1
M
ni
(
p
)
 i の対数を最大化
i 1
ラグランジュの未定乗数法で
M
M

 M


L  ln P(O | )   1   pi    ni ln pi   1   pi 
 i 1  i 1
 i 1 
Piでの偏微分を0とした式と条件式を連立させて解くと
M
   ni
i 1
piML 
ni
M
n
i 1
i
最尤推定の例(2)ー連続分布ー
正規分布に従う確率変数Xの分布パラメータΘ={μ, σ2}を推定
観測系列O(Xiの系列、i=1,N)を得たとき
確率分布
 ( x   )2 
1
fX (X ) 
exp 
 のパラメータΘ={μ, σ2}を
2
2 
2 

N

( X i   )2 
1 N 
2
L  ln P(O | )  ln  f X ( X i )    ln( 2 )  ln( ) 

2
2

i 1 
 i 1


の最大化で求める。μ、σ2での偏微分を0として解くと
 ML
1

N
N
 Xi
i 1
( ML ) 2 
1
N
 1
2
X



i
i 1
N
N

X

i 
i 1

N
2
隠れ変数がある場合
ーEMアルゴリズムー
観測できない変数(隠れ変数、HMMでは状態
系列)が存在する場合には繰り返しアルゴリズ
ムで解く必要がある。
観測可能変数をx、観測できない変数をzとして


1.
2.
Θの初期値を設定する
[E-step] (x,z)の対数尤度の条件付期待値を計算

Q( |  )  E log p( x, z; ) | x, 
(t )
3.
[M-step] Θを更新する
(t 1)  
(t )

EMアルゴリズムによる推定の例
ー混合正規分布(1/2)ー
混合正規分布に
M
p( x; )   wm N ( x;  m ,  m2 )
m 1
従う確率変数Xの分布パラメータΘ={wm,μm, σm2}を推定
観測系列O(Xiの系列、i=1,N)を得たときの推定
ここで、観測できない変数は、どの正規分布からの出力であるかを示す
変数であり、z∈{1,…M}とする
1.
2.
各変数に適当な初期値を設定する
各サンプルXjに対する観測できない変数zの条件付確率を求める
p ( z | X j ; ( t ) ) 
wz(t ) N ( X j ;  z(t ) ,  z )
M
w
m 1
(t )
l
N ( X j ;  m(t ) ,  m )
EMアルゴリズムによる推定の例
ー混合正規分布(2/2)ー
1.
2.
各変数に適当な初期値を設定する
各サンプルXjに対する観測できない変数zの条件付確率を求める
p ( z  m | X j ; ) 
(t )
wz(t ) N ( X j ;  z(t ) ,  z )
M
w
m 1
(t )
l
N ( X j ;  m(t ) ,  m )
3. 重み確率を更新する
( t 1)
m
w
1 N
  p ( z  m | X j ; ( t ) )
N j 1
4. 各正規分布のパラメータを以下の式で更新する


2 ( t 1)
m
( t 1)
m
1

Nwm(t 1)
1

Nwm(t 1)
N
N
 p( z  m | X
j 1
j
; ( t ) )  X j
(t )
2
( t 1) 2
p
(
z

m
|
X
;

)

X



j
j
i
j 1
EMアルゴリズムによるHMMのパラ
メータ推定


EMアルゴリズムをHMMのパラメータ推定
に適用=Baum-Welchアルゴリズム
導出は以下などを参照のこと



中川聖一「確率モデルによる音声認識」電子
情報通信学会、1998
L. Rabinerら「音声認識の基礎(下)」NTTアド
バンスドテクノロジ(株)、1995
鹿野清宏ら「音声認識システム」オーム社、
2001
前向き確率と後ろ向き確率
α(m,t)
β(m,t)
(注) α(m,t)にはb(xt)を含まず、
β(m,t)には含む
0
状態m
M
0
1
時刻t
T
前向き確率と後ろ向き確率
時刻t
状態m
β(m,t)
状態m
α(m,t)
時刻t
α(M,T)
=β(0,0)
パラメータ更新式(状態遷移確率)
状態mから状態lへの状態遷移確率
T
aˆ ml 
  (m, t )a
t 1
b ( xt )  (l , t  1)
ml m
T
  (m, t ) (m, t )
t 1
状態m 状態l
α(m,t)
β(l,t+1)
パラメータ更新式(出力確率)

出力確率分布(離散分布の場合)
T
bm (vk ) 
  (m, t ) (m, t )
t 1:v ( t )  v k
T
  (m, t ) (m, t )
t 1
パラメータ更新式(出力確率)

出力確率分布(離散分布の場合)
T
bm (vk ) 
 (m, t )(v(t )  v
t 1
T
k
?1 : 0)  (m, t )
 (m, t ) (m, t )
t 1
パラメータ更新式(出力確率)

出力確率分布(無相関正規分布の場合)
T
ˆ m 
  (m, t ) x  (m, t )
t 1
T
t
  (m, t ) (m, t )
t 1
2
 T

2

(
m
,
t
)
x

(
m
,
t
)

(
m
,
t
)
x

(
m
,
t
)




t
t
 
ˆ m2  t 1T
  t 1T


 (m, t )  (m, t )    (m, t )  (m, t ) 

t 1
 t 1

T
T
 (m, t ) x  (m, t )
t 1
T
2
t
 (m, t ) (m, t )
t 1
 ˆ m2
パラメータ更新式
ー複数学習データの場合ー
複数観測系列O(k)(xt(k)の系列、t=1,…,T, k=1,…,K)を得たときの推定
データ状態mから状態lへの状態遷移確率
T


1
(k )
(k )
(k )

(
m
,
t
)
a
b
(
x
)

(
l
,
t

1
)

ml m
t
 (k ) (M , T ) 

k 1  
t 1

aˆ ml 
K T
 ( k ) (m, t ) ( k ) (m, t )
K
k 1 t 1
状態の出力確率(無相関正規分布)
K
ˆ m 

(k )
k 1 t 1
K T

K
ˆ m2 
T
k 1 t 1
T
(k )
 
k 1 t 1
K T

k 1 t 1
(m, t ) xt  ( k ) (m, t )
(k )
(k )
(m, t )  ( k ) (m, t )
(m, t ) xt( k ) 2  ( k ) (m, t )
(k )
(m, t )  ( k ) (m, t )
 ˆ m
2