ようやく分かった!
最尤推定とベイズ推定
-そして機械学習へ-
大阪大学 情報科学研究科
マルチメディア工学専攻
修士2年 増田 彬
まずは反省
• 機械学習のツールを使っていてもその中身
をほとんど理解していなかった
→ブラックボックス統計学
• 手法の実現を試みてばかりで,学習手法の
特性や分析するデータの特性を考えずに
研究してきた
?
時間ないし,理論
むずいからデータ
突っ込めー
何か知らんけどパ
ラメータ変えたら
良い結果やし,
論文書いてまえー
構成
• 最尤推定とベイズ推定の話
• 機械学習を使う際の心構え
ベイズ推定と最尤推定
• Wikipediaより
分かったような,分からないような…
でも,これを理解しないとより高度な手法
が理解できない [機械学習の基礎]
“ベイズ確率の考え方に基づき、観測事象(観測された
事実)から、推定したい事柄(それの起因である原因
事象)を、確率的な意味で推論することを指す。”
身近なことで説明しよう
• 世の研究室には学生とラボ畜がいる
よゆー
今日もラボだブヒ~
研究室のブラック具合
• ホワイトな研究室もあれば,ブラックな
研究室もある
... ...研究室 M研究室 A
M教授
条件付き確率
• 研究室AとMがあるとする.
ともに学生が3人所属している.
ランダムに選んだ研究室から1人の
学生を選んだとき「ラボ畜」かどうか?
研究室 M研究室 A
研究室A 研究室M
学生
ラボ畜
どちらの研究室が選ばれるか?
ランダムに選ぶのでともに
𝑝 𝐻 = 𝐴 = 𝑝 𝐻 = 𝑀 =
1
2
学生全体のうち「学生」
か「ラボ畜」か?
𝑝 𝐷 = 畜 =
2
3
研究室がMの時,ラボ畜の割合は?
条件付き確率 𝑝 𝐷 = 畜|𝐻 = M =
3
3
同時確率の表
2
3
∙
1
2
1
3
∙
1
2
1
2
1
2
0
3
∙
1
2
3
3
∙
1
2
1
3
2
3
D H 𝑝 𝐷
𝑝 𝐻
• 事象 𝐷を「観測データ」事象 𝐻を「データの発生源」とする.
• ラボ畜モデルで言えば, 𝐷が学生, 𝐻が研究室
同時確率は
と表せるため,以下のベイズの公式が求まる
ここで,尤度 𝑃 𝐷 𝐻 とは
「研究室𝐻が与えられたときにデータDが発生する確率」
あるいは
「データDが観測されたとき研究室𝐻 から発生した確率」
例えば,研究室𝑀から選ばれた学生が D = ラボ畜 である
確率 は
3
3
ベイズの公式
𝑃 𝐻 𝐷 =
𝑃 𝐷 𝐻 𝑃(𝐻)
𝑃(𝐷)
=
𝑃 𝐷 𝐻 𝑃(𝐻)
𝑃 𝐷 𝐻 𝑃(𝐻)
𝑃 𝐷, 𝐻 = 𝑃 𝐷 𝐻 𝑃 𝐻 = 𝑃 𝐻 𝐷 𝑃(𝐷)
𝑃 𝐻 𝐷 ∶ 事後確率
𝑃 D H ∶ 尤度
𝑃(𝐻) ∶ 事前確率
• 事象 𝐷を「観測データ」事象 𝐻を「データの発生源」とする.
• ラボ畜モデルで言えば, 𝐷が学生, 𝐻が研究室
同時確率は
と表せるため,以下のベイズの公式が求まる
「ある学生がラボ畜のとき,研究室M所属である確率」を
𝑃 𝐻 𝐷 から求められる
→ラボ畜はM研によく所属している
(観測データ「ラボ畜」は発生源「M研究室」から生じた)
ベイズの公式
𝑃 𝐻 𝐷 =
𝑃 𝐷 𝐻 𝑃(𝐻)
𝑃(𝐷)
=
𝑃 𝐷 𝐻 𝑃(𝐻)
𝑃 𝐷 𝐻 𝑃(𝐻)
𝑃 𝐷, 𝐻 = 𝑃 𝐷 𝐻 𝑃 𝐻 = 𝑃 𝐻 𝐷 𝑃(𝐷)
𝑃 𝐻 = 𝑀 𝐷1 = 畜 =
3
3
∙
1
2
2
3
=
3
4
𝑃 𝐻 𝐷 ∶ 事後確率
𝑃 D H ∶ 尤度
𝑃(𝐻) ∶ 事前確率
ブヒー
ベイズ推定
Q: ある研究室から学生を2回選択したら共に「ラボ畜」だった.
その研究室は何研でしょう?
ベイズ推定
Q: ある研究室から学生を2回選択したら共に「ラボ畜」だった.
その研究室は何研でしょう?
D = [ラボ畜, ラボ畜] とするとまず最初(D1 )の「ラボ畜」学生
だけを考えて
ここで,最初の学生だけでは事前確率 p(H) はランダムに
研究室AかMかを仮定しているため,
𝑃 𝐻 = 𝐴 𝐷1 = 畜 =
𝑃 𝐷1 = 畜 𝐻 = 𝐴 𝑃(𝐻 = 𝐴)
𝑃(𝐷1 = 畜)
=
1
4
𝑃 𝐻 = 𝑀 𝐷1 = 畜 =
𝑃 𝐷1 = 畜 𝐻 = 𝑀 𝑃(𝐻 = 𝑀)
𝑃(𝐷1 = 畜)
=
3
4
𝑝 𝐻 = 𝐴 = 𝑝 𝐻 = 𝑀 =
1
2
ベイズ推定
Q: ある研究室から学生を2回選択したら共に「ラボ畜」だった.
その研究室は何研でしょう?
一回目に選ばれた学生が「ラボ畜」だったことから,
だと分かった.二回目の学生も「ラボ畜」だったから,
𝑃 𝐻 = 𝐴 𝐷 = 畜 =
1
4
𝑃 𝐻 = 𝑀 𝐷 = 畜 =
3
4
𝑃 𝐻 = 𝐴 𝐷2 = 畜 =
𝑃 𝐷2 = 畜 𝐻 = 𝐴 𝑃(𝐻 = 𝐴)
𝑃(𝐷2 = 畜)
=
1
8
𝑃 𝐻 = 𝐴 𝐷1 = 畜 =
1
4
で更新研究室Aである確率が減った
ベイズ推定
Q: ある研究室から学生を2回選択したら共に「ラボ畜」だった.
その研究室は何研でしょう?
一回目に選ばれた学生が「ラボ畜」だったことから,
だと分かった.二回目の学生も「ラボ畜」だったから,
𝑃 𝐻 = 𝐴 𝐷 = 畜 =
1
4
𝑃 𝐻 = 𝑀 𝐷 = 畜 =
3
4
𝑃 𝐻 = 𝑀 𝐷2 = 畜 =
𝑃 𝐷2 = 畜 𝐻 = 𝑀 𝑃(𝐻 = 𝑀)
𝑃(𝐷2 = 畜)
=
7
8
𝑃 𝐻 = M 𝐷1 = 畜 =
3
4
で更新研究室Mである確率が増えた
研究テーマと絡めてみよう
• 先ほどの問題は「あるデータ(学生)が観測され
た場合,研究室AとMのどちらに所属するのか」 と
いう2クラス分類問題
• 研究のテーマで
「加速度データから男女の性別推定」や
「歩行データからの酩酊検知」を行っているが
どれも根底にある考え方は一緒!
ここまでは講義の内容
尤度って分からなくない?
• 研究室AとMにそれぞれどれほどの割合で
P 𝐷 = 畜|𝐻 = 𝐴 =
1
3
, P 𝐷 = 畜|𝐻 = M =
3
3
「ラボ畜」学生が所属していたか分かっている前提だった
→ 現実は甘くない
• 現実問題,例えば男女の違いがどれほどの割合で
加速度データに影響するか分からない
→ 確率分布を仮定する [統計モデリング]
研究室 M研究室 A
• どんな人でも観測できるのはデータ𝐷のみ
• データ𝐷は何かしらの分布Hから生成される
• 観測されたデータ𝐷 から分布H(のパラメータ)を推定する
のが最尤推定とベイズ推定(&機械学習)
データ𝐷
(研究室Hから選ばれた学生)
パラメータ○○の
二項分布
だから推定を行う
に
正規分布一様分布 混合分布
に
分布は数個の
パラメータで
表せる
正体不明の
分布
ラボ畜モデル再来
• 𝑖をある研究室に所属する「ラボ畜」の数とする
(𝑖をパラメータと呼ぶ)
• 研究室の学生の数をNとおいてもよいが,簡単
のため,3人とする (0 ≤ 𝑖 ≤ 3 )
• パラメータ𝑖をおいたことにより,ある研究室の
「ラボ畜」尤度を以下のように仮定できる
ある研究室のモデル
Lラボ畜 = P 𝐷 = 畜|𝐻 =
𝑖
3
ラボ畜数 𝑖
L学生 = P 𝐷 = 学生|𝐻 =
3 − 𝑖
3
尤度最大化とは?
• 「観測データ」Dに対してもっと(尤)もらしい
「データの発生源」Hを求める
Lラボ畜 = P 𝐷 = 畜|𝐻 =
𝑖
3
と仮定したから,「ラボ畜」が1回のみ観測され
たとき尤もらしい発生源Hは最大の値となる 𝑖 = 3
3人中3人が「ラボ畜」のような
ブラック研究室
尤度最大化とは?
• 「観測データ」Dに対してもっと(尤)もらしい
「データの発生源」Hを求める
Lラボ畜 = P 𝐷 = 畜|𝐻 =
𝑖
3
と仮定したから,「ラボ畜」が1回のみ観測され
たとき尤もらしい発生源Hは最大の値となる 𝑖 = 3
反対に「通常の学生」が1回のみ観測されたとき
尤もらしい発生源Hは
L学生 = P 𝐷 = 学生|𝐻 =
3 − 𝑖
3
が最大となる 𝑖 = 0
3人中0人が「ラボ畜」の
ようなホワイト研究室
尤度最大化とは?
D = ラボ畜, ラボ畜, 学生 だとするとどうなるか?
各データは互いに独立であるため,
LD = L
ラボ畜
2
L
学生
=
𝑖
3
2
3 − 𝑖
3
を最大化すればよい.グラフを書けば分かるが,
簡単に解くために対数をかける(対数尤度)
ln LD = 2 ln
𝑖
3
+ ln
3 − 𝑖
3
これを微分し傾きが0になる 𝑖 = 2 で尤度が最大
3人中2人が「ラボ
畜」のような
グレー研究室
「最初がラボ畜だと次のデータもラボ畜になりやすい」のような影響を及ぼさない
時系列データ(例えば自然言語処理)は各データが独立でない
尤度最大でいいの?
D = 学生, 学生, 学生 というデータが得られたとする
実際はブラックな研究室からたまたま3回とも通常の学生が
選ばれただけかもしれないのに最大尤度 𝑖 = 0(つまりラボ畜
の学生がいない)で本当にいいのか?
選ばれた学生が全員通常なんで,
「ラボ畜」な学生なんていませんよ~
M教授
実際の分布
・・・
研究室1 研究室2 研究室100
尤度以外も考慮する手法があったような...
Thomas Bayes
(1702-1761)
Yes,
Bayes!
ベイズの公式
𝑃 𝐻 𝐷 =
𝑃 𝐷 𝐻 𝑃(𝐻)
𝑃(𝐷)
を用いると,
𝑃 𝐻 = ブラック 𝐷 = [畜, 畜, 畜] =
1
3
∙
99
100
1 ∙
1
100
+
1
3
∙
99
100
=
33
34
𝑃(𝐻)を考慮する
ブラック研究室の確率が高い!
尤度最大化と比べてベイズ推定は事後確率 𝑃 𝐻 𝐷 を最大にする
𝑃 𝐻 𝐷 =
𝑃 𝐷 𝐻 𝑃(𝐻)
𝑃(𝐷)
D = ラボ畜 だとすると,パラメータ𝑖の範囲を0 ≤ 𝑖 ≤ 3とし
ていたため,𝑃(𝐻)が一様だと仮定すると 𝑃 𝐻 =
1
3
となる
𝑃 𝐻 𝐷1 = 畜 =
𝑖
3
∙
1
4
𝑃(𝐷1 = 畜)
=
𝑖
12
∙
1
𝑃 𝐷 𝐻 𝑃 𝐻
=
𝑖
12
∙
1
6
12
=
𝑖
6
これが最大になるのは𝑖 = 3のとき
→ 結果は尤度最大化と同じ
(事前確率𝑃(𝐻)が一様だから)
ベイズ推定(再登場)
𝑃(𝐷)は事後確率の総和を1とするための正規化項
𝑃 𝐻 𝐷 ∶ 事後確率
𝑃 D H ∶ 尤度
𝑃(𝐻) ∶ 事前確率
𝑖
𝑃(𝐻|𝐷1)
3
1
2
総和1
D = ラボ畜, ラボ畜 のとき,事前確率が 𝑃 𝐻 =
2
9
𝑖になるため,
𝑃 𝐻 𝐷2 = 畜 =
𝑃 𝐷2 = 畜 𝐻 𝑃(𝐻)
𝑃(𝐷2 = 畜)
=
𝑖
3
∙
𝑖
6
14
18
=
𝑖2
14
ベイズ推定(再登場)
2乗になって
より𝑖の影響
が強くなった
新しいデータで
ベイズ更新
𝑖
𝑃(𝐻|𝐷2, 𝐷1)
3
新しいデータによって,
より分布が急になった!
この例では簡単のため,「ブラックな研究室もホワイトな研究室も一様に存在する」
分布を用いたが,実際は「グレーな研究室が多くて,ブラックやホワイトは少ない」
かもしれない.
その場合は P 𝐷 = 畜|𝐻 =
3
𝑖
𝑞 𝑖 1 − 𝑞 3−𝑖 のような二項分布を仮定する
𝑖
𝑃(𝐻|𝐷1)
3
1
2
総和1
9
14
総和1
まとめ
確率・統計の教科書で出てくる問題は尤度 𝑃 𝐷 𝐻 が
与えられていることが多い
→ 現実はそんなに甘くない
パラメータ(例ではラボ畜の数 i)をおいて,
尤度の分布を仮定する = 統計モデリング することで
尤度最大化やベイズ推定で尤もらしい分布を推定できる
(実際は尤度の分布に正規分布など多種多様な分布を用いる)
→現実はそれでもまだ甘くない
例では尤度最大化などを解析的に解けたが,現実には
解けない場合がある(MCMCの出番).
しかも,尤度のパラメータだけでは説明できず
超パラメータを追加する場合も…
まとめ
確率・統計の教科書で出てくる問題は尤度 𝑃 𝐷 𝐻 が
与えられていることが多い
→ 現実はそんなに甘くない
パラメータ(例ではラボ畜の数 i)をおいて,
尤度の分布を仮定する = 統計モデリング することで
尤度最大化やベイズ推定で尤もらしい分布を推定できる
(実際は尤度の分布に正規分布など多種多様な分布を用いる)
→現実はそれでもまだ甘くない
例では尤度最大化などを解析的に解けたが,現実には
解けない場合がある(MCMCの出番).
しかも,尤度のパラメータだけでは説明できず
超パラメータを追加する場合も…
現実は甘く
ないよ!
構成
• 最尤推定とベイズ推定の話
• 機械学習を使う際の心構え
そして機械学習へ
• 機械学習がブラックボックスになりがちな理由
• ラボ畜モデルのように,
「データがどの分布に従うと仮定するのか」
が非常に大切
– とりま,混合ガウス分布で!
– 流行りのDeep Learningしょ!
– CRFがですね...
となる前にデータを視覚化しよう!
グラフ化してどの分布が適切かを考えるのが大切
解析的に解けないものを計算機的に近似して解いている
研究の道は険しい
• 今回説明したデータの分析だけでなく,
データの取得や分析結果の評価などが
全て正しくてようやく研究成果となる
研究の道は険しい...
ではどうしたら良いか?
皆さんも
ラボ畜になりましょう!
今日もラボだブヒ~
参考文献
• 「史上最強図解 これならわかる!ベイズ統計学」
涌井 良幸 (著), 涌井 貞美 (著)
• 「データ解析のための統計モデリング入門」
久保 拓弥 (著)
• イラストに「いらすとや」さんのものを使わせて頂きました
ありがとうございます. http://www.irasutoya.com/

ようやく分かった!最尤推定とベイズ推定