beta distribution and dirichlet distribution (ベータ分布とディリクレ分布)
DESCRIPTION
Describes the Beta and Dirichlet distribution. ベータ分布とディリクレ分布について説明します。TRANSCRIPT
ベータ分布とディリクレ分布
手塚 太郎
1
多項分布のパラメータの最尤推定量
多項分布のパラメータ μk の最尤推定量は観測データにおいて xk が現れた回数 Nk の相対的な割合であった。
2
N
Nkk ̂
これはラグランジュ未定乗数法を使った最尤推定によって求められた。
ただし N は試行の総数である。
K
kkNN
1
最尤推定の限界とMAP 推定の利用
3
最尤推定の限界 観測データで一度も現れたことのない事象には
確率 0 を割り当ててしまう。
観測データの量が少なければ、その中に一度も現れない事象も多数存在する。
観測データに現れたことのない事象にも正の確率( 0 より大きい確率)を割り当てる必要がある。ベイズ推定を使えば対応できる。「どの事象も現れうる」というのはデータとは
別の「事前知識」であり、事前分布によって表現される。
4
スムージングの必要性 観測データではまったく現れない事象も存在す
る。
このような事象にも正の確率を割り当てることをスムージングと呼ぶ。
別名ディスカウンティング。正の確率を持つ領域から「割引」を行うため。
5
スムージング 確率分布は全体で積分した時(和を取った時)
に 1 にならなくてはならない。 確率が正の領域から 0 である領域に移動させる。 分布はよりなめらか(スムーズ)になる。
6
xx
p(x)p(x)
加算スムージング 分子において出現頻度 Nk に一定量 δ を加算す
る。 分母には δ と単語の種類数 K の積を加える。 δ=1 の場合を特にラプラス法と呼ぶ。
7
N
Nkk
KN
Nkk
'
KN
Nkk
1'
ラプラス法
加算スムージングと MAP 推定 相対頻度の利用は最尤法から導かれた。 加算スムージングは MAP 推定から導ける。
8
)()|()|( pxpxp
)|(maxarg
xp
ML 推定(最尤法)
MAP 推定
)|(maxarg xp
共役事前分布 事前分布に尤度関数を掛けた時、 μ について同
じ形の事後分布が得られるような事前分布を共役事前分布と呼ぶ。
9
)|()|(),|( pxpxp
事後分布の計算が容易になるため、頻繁に使われる。
共役事前分布 p(θ|α) の形は尤度関数 p(x|θ) の形に依存する。つまり確率分布 p(x|θ) ごとにそのパラメータ θ の共役事前分布 p(θ|α) が決まる。
共役事前分布のもうひとつのメリット
共役事前分布を使うと、ハイパーパラメータが単なる調整用のパラメータではなく、モデルにおいて“意味”を持ったものになることが多い。
例: 多項分布の共役事前分布であるディリクレ分布のハイパーパラメータは「仮想的に観測された事象の数」と関連付けられる。
10
共役事前分布の例 ガウス分布の μ の共役事前分布はガウス分
布
ベルヌーイ分布の μ の共役事前分布はベータ分布
多項分布の μ の共役事前分布はディリクレ分布
11
ベータ分布
12
ベルヌーイ分布の尤度関数 ベルヌーイ分布のパラメータ μ の尤度関数は以下で
あった。
13
ベルヌーイ分布のパラメータ μ の尤度関数
N
i
xxN
i
xx iiiip1
111
212,2,2,2, 1)|( μX
共役事前分布は μ について尤度関数と同じ形でなくてはならないので、以下の形になる。ただし α はハイパーパラメータベクトル、 B(α) は μ に関して定数、 fは任意の関数である。
K
k
fk
k
Bp
1
1)|(
ααμ
ベルヌーイ分布の共役事前分布を求める
事前確率は μ が取り得るすべての値で積分した時、 1 にならなくてはならない。これによってB(α) が決まる。
f(αk) として αk – 1 を使うことにし、 μ で積分を行うと、以下が成り立たなくてはならない。
14
11
)|(1
1
μα
μαμ dB
dpK
kk
k
なお、 μk に関しては以下の制約があったため、それぞれを 0 から 1 まで動かして積分することはできないので注意が必要である。
11
K
kk10 k
ベータ関数 正規化に必要な因子 B(α) は以下の関数になり、
ベータ関数と呼ばれる。
15
Γ(x) はガンマ関数と呼ばれ、階乗の一般化である。
K
kk
K
kk
B
1
1
α
0
1 dtetx tx
ガンマ関数と階乗 x が整数 n の時、 Γ(n) = (n-1)! (階乗)
16
xxx 1
!1 nn
xxdtetx
dtextet
dtetx
tx
txtx
tx
0
1
0
10
11
0
111
なぜなら
11 ゆえにさらに以下も示せる。
0
1 dtetx tx より、
つまり
多項ベータ関数の変形
ここで t を定義し、最後の変数 xK を消去する。
17
K
kkxt
1
1
1
K
kkK xtx
K
kk
xk
K
kk dxex kk
10
1
1
K
x
K dxdxexx
K
kk
K .........0 0 1
111
11
まず B(α) の分子に着目し、変形していく。
dtdxdxextxx Kt
K
kkK
K
kk
KK
10 0 1
11
1
11
11
1
......... 11
x1,…,xK (0,∞) → x∈ 1,…,t (0,∞) ∈ より積分範囲は変わらない。
多項ベータ関数の変形
18
kk tx
dtddtetttt KKt
K
kkK
K
kk
KK
10
1
0 11
11
1
11
11
1
......... 11
μk を定義し、 xk を置き換える。
0
1
0 1
1
0 11
11
1
11
11 ...1...... 111 dtddtet K
KtK
kkK
K KK
K
kk
txkk : つまり
変数変換(置換積分)によって各 μk に関する積分範囲が 0 ~ 1 になることに注意。
多項ベータ関数の変形 μK を導入する。これは μ1 ~ μK-1 の関数なの
で、 dμK は不要。
19
0
1
0 1
1
0 111
11
1
1
......... 111 dtddet KKKt KK
K
kk
dμ1 ~ dμK-1 をまとめて dμで表す。積分範囲もまとめて表す。
0
111
111 ... dtetd t
K
K
kk
K
μ
0
1
1
1 1 dtetd tK
kk
K
kk
k
μ
多項ベータ関数の変形
20
0
1
1
1 dtet tK
kk
K
kk
B(α) の分母はガンマ関数の定義により、以下になる。
多項ベータ関数の変形
21
なお、右辺から左辺を求める計算をディリクレ積分と呼ぶ。
右辺は積分した時に 1 になるように正規化したかった関数そのものである。
μdK
kk
k
1
1
K
kk
K
kk
B
1
1
α
分子を分母で割って、 B(α) を求めると以下のようになる。
多項ベータ関数による正規化 多項ベータ関数を使用すると、ベルヌーイ分布
の共役事前分布を以下のように作ることができる。
22
K
kk
k
Bp
1
11)|(
ααμ
多項ベータ関数で割られていることによって、全体で積分した時に 1 になる。(正規化されている)。
11
)|(1
1
μα
μαμ dB
dpK
kk
k
ベータ関数 ベータ関数は K=2 の時の多項ベータ関数であ
る。
ハイパーパラメータをベクトル α ではなく二つのスカラー α と β で表わすことが多い。
23
)(
,
αB
ベータ関数 多項ベータ関数
K
kk
K
kk
B
1
1
α
ベータ分布 ベルヌーイ分布に対する共役事前分布
24
1
21
1,
1),|(
αBαp μ
ベルヌーイ分布のもうひとつの表記法(スカラー μ による表現)を使った場合は以下のようになる。
11 1,
1),|(
αBαμp
ベータ分布の性質 ベータ分布は 2 次元のディリクレ分布である。
25
ハイパーパラメータ α と β はディリクレ分布の場合と同様、次元 k=1 と次元 k=2 への仮想的な割り当てを示している。
ベータ分布の性質 ベータ分布は μ のべき乗と (1-μ) のべき乗の
和を((ベータ関数で)正規化したものである。
α と β が正の整数の時、確率密度関数は 1 変数の多項式が描く曲線になる。
26wikipedia.org
ベータ分布の例 1 ハイパーパラメータ α と β が共に 1 より大きい
場合、上に凸な分布になる。
275α
,|P
ベータ分布の例 2 ハイパーパラメータ α と β が共に 1 より小さ
い場合、下に凸な分布になる。
285.0α
,|P
ベータ分布の例 3 ハイパーパラメータが α > β の時、 1 に近
い側の確率が高い分布になる。
292,10 α
,|P
ベータ分布の例 α > β=1 の時は、 μα-1 を正規化した関数であ
る。
301,5 α
,|P
ディリクレ分布
31
多項分布の尤度関数 多項分布のパラメータ μ の尤度関数は以下の形であっ
た。
32
多項分布のパラメータ μ の尤度関数
N
i
K
k
xkkip
1 1
,)|( μX
共役事前分布は μ について尤度関数と同じ形でなくてはならないので、以下の形になる。ただし α はハイパーパラメータベクトル、 B(α) は μ に関して定数、 fは任意の関数である。
K
k
fk
k
Bp
1
1)|(
ααμ
多項分布の共役事前分布を求める 事前確率は μ が取り得るすべての値で積分した
時、 1 にならなくてはならない。これによってB(α) が決まる。
f(αk) として αk – 1 を使うことにし、 μ で積分を行うと、以下が成り立たなくてはならない。
33
11
)|(1
1
μα
μαμ dB
dpK
kk
k
なお、 μk に関しては以下の制約があったため、それぞれを 0 から 1 まで動かして積分することはできないので注意が必要である。
11
K
kk10 k
多項ベータ関数 正規化に必要な因子 B(α) は以下の関数になり、多
項ベータ関数と呼ばれる。
34
K
kk
K
kk
B
1
1
α
0
1 dtetx tx
多項ベータ関数の変形
ここで t を定義し、最後の変数 xK を消去する。
35
K
kkxt
1
1
1
K
kkK xtx
K
kk
xk
K
kk dxex kk
10
1
1
K
x
K dxdxexx
K
kk
K .........0 0 1
111
11
まず B(α) の分子に着目し、変形していく。
dtdxdxextxx Kt
K
kkK
K
kk
KK
10 0 1
11
1
11
11
1
......... 11
x1,…,xK (0,∞) → x∈ 1,…,t (0,∞) ∈ より積分範囲は変わらない。
多項ベータ関数の変形
36
kk tx
dtddtetttt KKt
K
kkK
K
kk
KK
10
1
0 11
11
1
11
11
1
......... 11
μk を定義し、 xk を置き換える。
0
1
0 1
1
0 11
11
1
11
11 ...1...... 111 dtddtet K
KtK
kkK
K KK
K
kk
txkk : つまり
変数変換(置換積分)によって各 μk に関する積分範囲が 0 ~ 1 になることに注意。
多項ベータ関数の変形 μK を導入する。これは μ1 ~ μK-1 の関数なの
で、 dμK は不要。
37
0
1
0 1
1
0 111
11
1
1
......... 111 dtddet KKKt KK
K
kk
dμ1 ~ dμK-1 をまとめて dμで表す。積分範囲もまとめて表す。
0
111
111 ... dtetd t
K
K
kk
K
μ
0
1
1
1 1 dtetd tK
kk
K
kk
k
μ
多項ベータ関数の変形
38
0
1
1
1 dtet tK
kk
K
kk
B(α) の分母はガンマ関数の定義により、以下になる。
多項ベータ関数の変形
39
なお、右辺から左辺を求める計算をディリクレ積分と呼ぶ。
右辺は積分した時に 1 になるように正規化したかった関数そのものである。
μdK
kk
k
1
1
K
kk
K
kk
B
1
1
α
分子を分母で割って、 B(α) を求めると以下のようになる。
多項ベータ関数による正規化 多項ベータ関数を使用すると、多項分布の共役
事前分布を以下のように作ることができる。
40
K
kk
k
Bp
1
11)|(
ααμ
多項ベータ関数で割られていることによって、全体で積分した時に 1 になる。(正規化されている)。
11
)|(1
1
μα
μαμ dB
dpK
kk
k
ディリクレ分布 多項分布の共役事前分布はディリクレ分布と呼ば
れ、多項ベータ関数を使って以下のように表現される。
41
K
kkk
Bp
1
11)|(
ααμ
ただし
K
kk
K
kk
B
1
1
α
多項分布とディリクレ分布
42
K
kkk
Bp
1
11)|(
ααμ
N
i
K
k
xkkip
1 1
,)|( μX
K
k
x
kN
ii
K
kk
N
i
xk
k
N
iki
kki
B
Cp
1
1
1
1
1
1
1,
,
1
',|
αx
αXμ
尤度関数(多項分布) 事前分布(ディリクレ分布)
事後分布
事前分布と事後分布が μ の関数として同じ形になっている。
ハイパーパラメータの意味 事後分布において、 αk はカテゴリ k の総出現
数と同じ位置に来ている。
43
K
k
x
kN
ii
k
N
iki
Bp
1
1
1
1,1
,|
αx
Xμ
これは αk をカテゴリ k における「事象の仮想的な出現数」とみなせることを意味する。
ディリクレ分布の視覚化 成分の和が 1 になるという制約により、ベクト
ル μ が動ける範囲はたとえば 3 次元では以下の領域(単体またはシンプレックスと呼ばれる)になる。
44
μ3
μ1
μ2
1
11
K=3 のディリクレ分布を視覚化する際、単体の上に確率密度の大きさを乗せた形で表示することが多い。
ディリクレ分布の例 1
αk がすべて1の時、ディリクレ分布は単体上の一様分布になる。
単体の全域で積分した時に 1になる。
45
μ3
μ1
μ2
1
11
ディリクレ分布の例 2
ある αk が大きい時、その次元k で確率密度が大きくなる。
46
αk は各カテゴリへの仮想的な割り当てのため、そのカテゴリの次元での密度が高い分布になる。
wikipedia.org
すべての αk が大きければ、中心で尖った分布になる。
ディリクレ分布の性質
47
各 αk が正の整数の時、ディリクレ分布の確率密度関数は K-1 変数の多項式が描く曲面である。
1
1
1
11
1
1
1
11
1)|(
K
kk
K
kk
K
kk
k
K
k
B
Bp
α
ααμ
ディリクレ分布の確率密度関数
多項分布のパラメータの MAP 推定
48
対称なディリクレ分布の仮定 ディリクレ分布のパラメータは K 個あるが、
ここではひとつのパラメータで表される対称なディリクレ分布を使用する。ひとつになったパラメータをスカラー a で表す。
49
K
k
akK
a
Kaap
1
1
)(
)()|( μ
この制約を加えるだけで加算スムージングが導かれる。
aK ...21
事後分布の対数
θ について最大化するのが目的なので、 a のみの関数になる項は C’(a) で表した。
C’(a) は μ を動かしての最大化では無視できる。 50
)('loglog1
),|(log
1 1, aCax
apK
kk
N
iki
Xμ
K
k
ak
N
i
xkkiaFap
1
1
1
,)('),|( Xμ
頻度への置き換え
カテゴリ k が観測データで出現した回数 Nk を用いて置き換えた。
51
K
kkk
K
kk
N
iki
aN
ax
1
1 1,
log1
log1
ふたたびラグランジュ未定乗数法
52
K
kk
K
kkk aNL
11
1log1)( μ
01)(
k
k
k
aNL μ
kk aN
1
1)1(1
11
K
kk
K
kk aN
K
kk
1
1
パラメータベクトル μ への制約:
k について和を取る
MAP 推定の結果
53
MAP 推定の結果は加算スムージングに対応する。
a=2 がラプラス法に対応する。
)1( aKN
)1(
1
aKN
aNkk
K
kk aN
1
)1(
kk aN
1
ラプラス法の課題 μ の次元数 K が大きい場合、 Nk がほとんど割
引されてしまうため、精度は高くない。
54
KN
Nkk
1
言い換えると、事前分布が尤度関数よりも著しく大きな影響を持ってしまう。
リッドストーン法 1 より小さい値 δ を加算する。
55
KN
Nkk
δ を適切に選べば精度が向上することが知られている。
10