SlideShare a Scribd company logo
1 of 27
Download to read offline
トピックモデルによる
統計的潜在意味解析読書会

3.1節 「統計的学習アルゴリズム」
2015/06/18!
@akt_nkn!
株式会社 ALBERT
自己紹介
❖ @akt_nkn!
!
❖ データ分析の仕事!
❖ rとstanでモデリングしてます
2
3章の目次
3.1 統計的学習アルゴリズム!
3.2 サンプリング近似法!
3.3 変分近似法!
3.4 逐次ベイズ学習 ー変分近似法の場合ー!
3.5 逐次ベイズ学習 ーサンプリング近似法の場合ー!
3.6 Dirichlet分布のパラメータ推定!
3.7 評価方法!
3.8 各種学習アルゴリズムの比較!
3.9 モデル選択
3
agenda
❖ 統計的学習とは!
❖ Kullback-Leibler Divergence!
❖ 点推定!
❖ ベイズ推定
4
統計的学習とは
5
!
!
「観測データの背後に潜むルール・規則を統計的に記述し、!
データから自動的に獲得する学習の枠組み」
確率的生成モデルにより背後のシステムを記述する
⌘ x
p(x| )p( |⌘)
観測データの確率モデルによる表現!
!
!
!
観測データを分布で表現
p⇤
(x)真の分布 :未知
近似分布 ˆp(x) :推定する
近似分布を求める方法
7
!
• 最尤推定!
• 事後確率最大化推定(MAP推定)!
• (平均プラグイン推定)!
!
• ベイズ推測
さいころを1000回振る
1の目 2の目 3の目 4の目 5の目 6の目
160 171 171 182 154 162
さいころの出た目より分布を推定する
分布1 分布2 分布3
1の目 2の目 3の目 4の目 5の目 6の目
160 171 171 182 154 162
どの分布がいいの?!
!
真の分布に近い分布が良い分布
分布と分布の近さって?
Kullback-Leibler Divergence
11
KL[p⇤
(x)||p(x| )] =
Z
p⇤
(x) log
p⇤
(x)
p(x| )
dx
KL[p⇤
(x)||p(x| )] 0
KL[p⇤
(x)||p(x| )] = 0 , p⇤
(x) = p(x| )
KLが小さいほど、分布同士が近いと考える
KLの最小化
12
⇤
= argmin KL[p⇤
(x)||p(x| )]
KL[p⇤
(x)||p(x| )] = Ep⇤(x)

log
p⇤
(x)
p(x| )
= Ep⇤(x)[log p⇤
(x)] Ep⇤(x)[log p(x| )]
パラメータに依存するのは!
この部分
KLの最小化
13
⇤
= argmin KL[p⇤
(x)||p(x| )]
⇤
= argmin KL[p⇤
(x)||p(x| )]
= argmin Ep⇤(x)[log p(x| )]
= argmax Ep⇤(x)[log p(x| )]
KLの最小化
14
⇤
= argmax Ep⇤(x)[log p(x| )]
Ep⇤(x)[log p(x| )] =
Z
p⇤
(x) log p(x| )dx
⇡
1
n
nX
i=1
log p(xi| )
⇤
= argmax
1
n
nX
i=1
log p(xi| )
xi ⇠ p⇤
(x)
最尤推定と等価
1の目 2の目 3の目 4の目 5の目 6の目
0.160 0.171 0.171 0.182 0.154 0.162
1の目 2の目 3の目 4の目 5の目 6の目
160 171 171 182 154 162
最尤推定すると ˆpk =
nk
n
観測値
15
推定した分布 真の分布
ただし最尤推定はデータの情報のみを用いて推定するた
め、過学習の可能性が高い。過学習が生じると、汎化能
力が低くなる。汎化能力をの高い学習を行いたい場合は
別の推定方法が望ましい。
16
真の分布 さいころを20回振る×10セット
1の目 2の目 3の目 4の目 5の目 6の目
0 4 2 8 2 4
3 6 2 4 3 2
2 3 4 4 4 3
2 1 4 4 5 4
1 4 4 2 3 6
5 5 3 2 2 3
3 5 4 3 1 4
3 2 7 3 3 2
5 4 4 2 1 4
2 3 2 2 7 4
最尤推定すると ˆpk =
nk
n
真の分布 さいころを20回振る×10セット
1の目 2の目 3の目 4の目 5の目 6の目
0% 20% 10% 40% 10% 20%
15% 30% 10% 20% 15% 10%
10% 15% 20% 20% 20% 15%
10% 5% 20% 20% 25% 20%
5% 20% 20% 10% 15% 30%
25% 25% 15% 10% 10% 15%
15% 25% 20% 15% 5% 20%
15% 10% 35% 15% 15% 10%
25% 20% 20% 10% 5% 20%
10% 15% 10% 10% 35% 20%
最尤推定すると ˆpk =
nk
n
過学習してしまう!
文章内の単語の出現はスパースなので最尤推定は厳しい
MAP推定
19
⌘ x
p(x| )p( |⌘)
p( |⌘)
nY
i=1
p(xi| )
⇤
= argmax
(
log p( |⌘) +
nX
i=1
log p(xi| )
)
log p( |⌘)
は正則化項
パラメータの生成過程も考慮
MAP推定
20
p( |x1:n, ⌘) =
p( , x1:n|⌘)
p(x1:n|⌘)
=
p(x1:n| )p( |⌘)
p(x1:n|⌘)
⇤
= argmax
(
log p( |⌘) +
nX
i=1
log p(xi| )
)
MAP = argmax log p( |x1:n, ⌘)
真の分布 さいころを20回振る×10セット
1の目 2の目 3の目 4の目 5の目 6の目
0 4 2 8 2 4
3 6 2 4 3 2
2 3 4 4 4 3
2 1 4 4 5 4
1 4 4 2 3 6
5 5 3 2 2 3
3 5 4 3 1 4
3 2 7 3 3 2
5 4 4 2 1 4
2 3 2 2 7 4
事前分布を(5,5,5,5,5,5)!
のディリクレ分布!
としMAP推定すると!
ˆpk =
nk + 5
n + 30
ˆpk =
nk + 5
n + 30
真の分布 さいころを20回振る×10セット
1の目 2の目 3の目 4の目 5の目 6の目
10% 18% 14% 26% 14% 18%
16% 22% 14% 18% 16% 14%
14% 16% 18% 18% 18% 16%
14% 12% 18% 18% 20% 18%
12% 18% 18% 14% 16% 22%
20% 20% 16% 14% 14% 14%
16% 20% 18% 16% 12% 18%
16% 14% 24% 16% 16% 14%
20% 18% 18% 14% 12% 18%
14% 16% 14% 14% 24% 18%
事前分布を(5,5,5,5,5,5)!
のディリクレ分布!
としMAP推定すると!
ˆpk =
nk + 5
n + 30
ˆpk =
nk + 5
n + 30
最尤推定よりは過学習を防げる
点推定
23
p(x⇤
|x1:n) = p(x⇤
| ML)
ML = argmax
nX
i=1
log p(xi| )最尤推定:
MAP推定: MAP = argmax log p( |x1:n, ⌘)MAP = argmax log p( |x1:n, ⌘)
p(x⇤
|x1:n) = p(x⇤
| MAP)
ベイズ推定
24
点推定では尤度や事後確率が最大化されるパラメータを
用いて予測分布を構成していたが、パラメータの事後分
布が求められていれば、事後分布による平均化により予
測分布を構成することができる
p(x⇤
|x1:n) =
Z
p(x⇤
| )p( |x1:n)d
!
!
!
!
ベイズ推定による予測を行うためには!
パラメータの事後分布による平均化が必要なので、事後
分布からパラメータをサンプリングする必要がある
ベイズ推定
25
p(x⇤
|x1:n) =
Z
p(x⇤
| )p( |x1:n)d
⇡
1
S
SX
s=1
p(x⇤
| i) s ⇠ p( |x1:n)
!
!
αとηはハイパーパラメータ!
LDAのベイズ推定
26
xi ⇠ p(xi| zi
), zi ⇠ Multi(zi|⇡) (i = 1, · · · , n)
k ⇠ p( k|⌘) (k = 1, · · · , K), ⇡ ⇠ Dir(⇡|↵)
⌘
⇡ zi xi
k
p(x|x1:n, ⌘, ↵) =
X
z
p(x, z|x1:n, ⌘, ↵)
=
Z X
z
p(x, z, , ⇡|x1:n, ⌘, ↵)d d⇡
=
Z X
z
p(x, z| , ⇡, x1:n, ⌘, ↵)
⇥p( , ⇡|x1:n, ⌘, ↵)d d⇡
=
Z X
z
p(x, z| , ⇡)p( , ⇡|x1:n, ⌘, ↵)d d⇡
=
Z X
z
p(x|z, , ⇡)p(z| , ⇡)p( , ⇡|x1:n, ⌘, ↵)d d⇡
=
Z X
z
p(x| z)p(z|⇡)p( , ⇡|x1:n, ⌘, ↵)d d⇡
27

More Related Content

Similar to 3.1節 統計的学習アルゴリズム

オンライン学習 : Online learning
オンライン学習 : Online learningオンライン学習 : Online learning
オンライン学習 : Online learningDaiki Tanaka
 
公開鍵暗号5: 離散対数問題
公開鍵暗号5: 離散対数問題公開鍵暗号5: 離散対数問題
公開鍵暗号5: 離散対数問題Joe Suzuki
 
[The Elements of Statistical Learning]Chapter8: Model Inferennce and Averaging
[The Elements of Statistical Learning]Chapter8: Model Inferennce and Averaging[The Elements of Statistical Learning]Chapter8: Model Inferennce and Averaging
[The Elements of Statistical Learning]Chapter8: Model Inferennce and AveragingYu Otsuka
 
Time series analysis with python chapter2-1
Time series analysis with python  chapter2-1Time series analysis with python  chapter2-1
Time series analysis with python chapter2-1ShoKumada
 
Math in Machine Learning / PCA and SVD with Applications
Math in Machine Learning / PCA and SVD with ApplicationsMath in Machine Learning / PCA and SVD with Applications
Math in Machine Learning / PCA and SVD with ApplicationsKenji Hiranabe
 
【Zansa】第12回勉強会 -PRMLからベイズの世界へ
【Zansa】第12回勉強会 -PRMLからベイズの世界へ【Zansa】第12回勉強会 -PRMLからベイズの世界へ
【Zansa】第12回勉強会 -PRMLからベイズの世界へZansa
 

Similar to 3.1節 統計的学習アルゴリズム (7)

平方剰余
平方剰余平方剰余
平方剰余
 
オンライン学習 : Online learning
オンライン学習 : Online learningオンライン学習 : Online learning
オンライン学習 : Online learning
 
公開鍵暗号5: 離散対数問題
公開鍵暗号5: 離散対数問題公開鍵暗号5: 離散対数問題
公開鍵暗号5: 離散対数問題
 
[The Elements of Statistical Learning]Chapter8: Model Inferennce and Averaging
[The Elements of Statistical Learning]Chapter8: Model Inferennce and Averaging[The Elements of Statistical Learning]Chapter8: Model Inferennce and Averaging
[The Elements of Statistical Learning]Chapter8: Model Inferennce and Averaging
 
Time series analysis with python chapter2-1
Time series analysis with python  chapter2-1Time series analysis with python  chapter2-1
Time series analysis with python chapter2-1
 
Math in Machine Learning / PCA and SVD with Applications
Math in Machine Learning / PCA and SVD with ApplicationsMath in Machine Learning / PCA and SVD with Applications
Math in Machine Learning / PCA and SVD with Applications
 
【Zansa】第12回勉強会 -PRMLからベイズの世界へ
【Zansa】第12回勉強会 -PRMLからベイズの世界へ【Zansa】第12回勉強会 -PRMLからベイズの世界へ
【Zansa】第12回勉強会 -PRMLからベイズの世界へ
 

3.1節 統計的学習アルゴリズム