More Related Content Similar to 続・わかりやすいパターン認識第5章
Similar to 続・わかりやすいパターン認識第5章 (20) 続・わかりやすいパターン認識第5章8. 例題4.1 → 𝜃のみを推定
例題5.1 → 𝜃𝑖𝑘, 𝜋𝑖を推定
学習パターンが必要(サイコロの入った箱)
例題5.1と同様の箱からサイコロを無作為に一個取り出しては投げ、出た目
を観測した後サイコロを箱に戻すという操作をn回繰り返す。
*以下、観測回数はn回で固定 → 𝒙(𝑛) = 𝒙
図2 学習のための観測
10. • 教師付き学習
– 観測方法1
– パターンの所属クラスに関する情報である教師信号(サイ
コロの種類)を教える。
– 所属クラスにラベルが張られているとみなせる。(サイコロ
の種類𝜔1や𝜔2など)
– ラベル付きパターン
– 完全データ
• 教師無し学習
– 観測方法2
– ラベル無しパターン
– 不完全データ
11. サイコロを投げた時のt回目の観測結果を𝒙 𝑡、取り出したサイコ
ロの種類を𝑠𝑡とすると、
学習パターンは𝒙と𝒔のペアであり、さらにそれぞれの事象は独
立なので、
𝒙 = 𝑥1 𝑥2・・・𝑥 𝑛 𝑥 𝑡 ∈ 𝑣1, 𝑣2, ・・・, 𝑣 𝑚 (9)
𝒔 = 𝑠1 𝑠2・・・𝑠 𝑛 𝑠𝑡 ∈ 𝜔1, 𝜔2, ・・・, 𝜔𝑐 (10)
𝑃 𝜔𝑖 𝑥 𝑡 = 1
𝑐
𝑖=1
(11)
𝑃 𝒙 = 𝑃 𝑥1 𝑃 𝑥2 … 𝑃(𝑥 𝑛) (12)
𝑃 𝒔 = 𝑃 𝑠1 𝑃 𝑠2 … 𝑃(𝑠 𝑛) (13)
𝑃 𝒔 𝒙 = 𝑃 𝑠1 𝑥1 𝑃 𝑠2 𝑥2 … 𝑃(𝑠 𝑛|𝑥 𝑛) (14)
𝑃 𝒙 𝒔 = 𝑃 𝑥1 𝑠1 𝑃 𝑥2 𝑠2 … 𝑃(𝑥 𝑛|𝑠 𝑛) (15)
𝑃 𝒙, 𝒔 = 𝑃 𝒔 𝑃 𝒙 𝒔 = 𝑃(𝒙)𝑃 𝒔 𝒙 (16)
= 𝑃 𝑥1, 𝑠1 𝑃 𝑥2, 𝑠2 … 𝑃(𝑥 𝑛, 𝑠 𝑛) (17)
14. 𝜕𝐿
𝜕𝑥 𝑖
= 0
𝜕
𝜕𝑥𝑖
𝑓 − 𝜆 𝑥𝑖
𝑛
𝑖=1
− 1 = 0
𝜕
𝜕𝑥𝑖
𝑤𝑖 log 𝑥𝑖
𝑛
𝑖=1
− 𝜆 = 0
𝑤𝑖・
1
𝑥𝑖
− 𝜆 = 0
(22)
以上より、
となり、両辺に 𝑛
𝑖=1 を施すと、
λ𝑥𝑖 = 𝜔𝑖 (𝑖 = 1,2, … , 𝑛) (23)
λ = 𝑤𝑖
𝑛
𝑖=1
(24)
式(18)[5-22]を適用
16. 凸計画問題etc…
• 凸集合
– 空でない集合𝑆(⊂ 𝑹 𝑛)内の任意のベクトル
𝒙 𝟏, 𝒙 𝟐 ∈ 𝑆と0 ≤ 𝜆 ≤ 1に対して
λ𝒙1 + 1 − 𝜆 𝒙2 ∈ 𝑆の時、Sを凸集合
– ある集合において二点を結んだ直線はその集
合内に入る
– 集合にくぼみやへこみがない
– 直線は大丈夫
17. 0 ≤ 𝜆 ≤ 1に対して
• 凸関数
– 𝑓 𝜆𝒙1 + 1 − 𝜆 𝒙2 ≤ 𝜆𝑓 𝒙1 + 1 − 𝜆 𝑓 𝒙2
• 狭義凸関数
– 𝑓 𝜆𝒙1 + 1 − 𝜆 𝒙2 < 𝜆𝑓 𝒙1 + 1 − 𝜆 𝑓 𝒙2
へこみのない関数
𝑓`` > 0(狭義)
f(x)は凸関数⇔-f(x)は凹関数
18. 定理 A.2
𝑓1 𝒙 , 𝑓1 𝒙 ・・・𝑓𝑚 𝒙 を凸集合S上の凸関数とし
たとき、正の重みによる線形和
𝑓 𝒙 = 𝑤𝑖 𝑓𝑖(𝒙)
𝑚
𝑖=1
もS上の凸関数である。また、これらの関数のう
ち一つでも狭義凸関数であれば𝑓 𝒙 も狭義凸
関数である。
• 凹関数がなければ凹みはできない
• 狭義凸関数が一つでもあれば、𝑓`` > 0となる
20. • 凸計画問題
– 実行可能領域が凸集合
– 目的関数f(x)が凸関数
• 最適化問題が凸計画問題(定理A.4)
– 局所的最適解は大域的最適解
• 複数存在の可能性
• その集合はひとつ下の次元の集合
– 目的関数が狭義凸関数
• 大域的最適解は存在すればただ一つ
凸計画問題は珍しい。たいていは局所的最適解しか求
められない。
22. よって
なので Sは凸集合である。
また、𝑔 𝑥 = log 𝑥 は明らかに狭義凸関数であるた
め、定理A.2より、今回与えられた式(19)も狭義凸関数
となる。
定理A.4より、今回の関数‐fは凸計画問題なので、局
所的最適解となった式(25)は大域的最適解であり、上
記狭義凸関数より大域的最適解は唯一。
𝑐 ∈ 𝑆 (28)
正確には−𝑔が
狭義凸関数
24. 結果とサイコロの種類を組みにし、下のn組のデータを得る。
n回の試行結果、x,sが得られる確率は同時確率𝑃(𝒙, 𝒔)。
最尤推定により𝑃 𝒙, 𝒔 を最大とするπiと𝜃𝑖𝑘を求める。
と、定義し、θの推定値を𝜽とすると、
この式に対して式(13)(15)(16)[5-17][5-19][5-20]を使用すると、
𝑥1, 𝑠1 , 𝑥2, 𝑠2 … (𝑥 𝑛, 𝑠 𝑛) (31)
𝜽𝑖 ≜ 𝜃𝑖1, … , 𝜃𝑖𝑚 (𝑖 = 1,2, … , 𝑐) (32)
𝜽 ≜ (𝜽1, … , 𝜽 𝒄, 𝜋1, … , 𝜋 𝑐) (33)
𝜃 = 𝑎𝑟𝑔𝑚𝑎𝑥 {log 𝑃(𝒙, 𝒔)} (34)
26. パラメータπiの推定
↓最尤推定を行う↓
𝐿1 = log 𝑃(𝑠𝑡)
𝑛
𝑖=1
= 𝑛𝑖 log 𝜋𝑖
𝑐
𝑖=1
(37)
log 𝑃 𝑠1 𝑃 𝑠2 … 𝑃(𝑠 𝑛)
= log 𝑃 𝜔1
𝑛1 𝑃 𝜔2
𝑛2…
𝜋 =
𝑛𝑖
𝑛𝑗
𝑐
𝑗=1
=
𝑛 𝑖
𝑛
(38)
定理5.1を使用
𝜋𝑖
𝑐
𝑖=1
= 1
27. パラメータ𝜃𝑖𝑘の推定
𝐿2 = log 𝑃(𝑥 𝑡|𝑠𝑡)
𝑛
𝑡=1
= 𝑛𝑖𝑘 log 𝜃𝑖𝑘
𝑚
𝑘=1
𝑐
𝑖=1
(39)
順番に数え上げ
まとめて数え上げ
𝜃𝑖𝑘 =
𝑛𝑖𝑘
𝑛𝑖𝑗
𝑛
𝑗=1
=
𝑛 𝑖𝑘
𝑛
(40)
定理5.1を使用
𝜃𝑖𝑘
𝑚
𝑘=1
= 1
教師付き学習(完全データ)では最尤推定は容易!
29. log 𝑃(𝒙) = log 𝑃(𝑥 𝑡)
𝑛
𝑡=1
= 𝑟𝑘 log 𝑃(𝑣 𝑘)
𝑚
𝑘=1
(42)
= 𝑟𝑘 log 𝜋𝑖 𝜃𝑖𝑘
𝑐
𝑖=1
𝑚
𝑘=1
(43)
パラメータ𝜃𝑖𝑘, 𝜋𝑖であらわせる。
最尤推定をするためにはlog 𝑃(𝒙)
を最大にすればいい。
𝑃(𝑣 𝑘)を新たな変数とみなしてそれを最大にするものを求めてみる。
log 𝑃 𝑥1 𝑃 𝑥2 … 𝑃(𝑥 𝑛)
= log 𝑃 𝑣1
𝑟1 𝑃 𝑣2
𝑟2…
サイコロの場合に分割
𝑃 𝑣 𝑘 = 𝑃 𝜔𝑖 𝑃(𝑣 𝑘|𝜔𝑖)
𝑐
𝑖=1
30. また、
以降はlog 𝑃 𝒙 を𝜋𝑖, 𝜃𝑖𝑘をパラメータにもつ関数とする
→教師ありとの対比を分かりやすくするため
𝑃 𝑣 𝑘 =
𝑟𝑘
𝑟𝑙
𝑚
𝑙=1
=
𝑟𝑘
𝑛
(44)
𝑃 𝑣 𝑘 = 𝜋𝑖 𝜃𝑖𝑘
𝑐
𝑖=1
=
𝑟𝑘
𝑛
(45)
この式を満たす𝜋𝑖, 𝜃𝑖𝑘は一意に決まらない
𝜃 = 𝑎𝑟𝑔𝑚𝑎𝑥{log 𝑃(𝒙)} (46)
31. パラメータ𝜋𝑖の推定
ラグランジュの未定乗数法を用いる。
上式を𝜋𝑖で偏微分し結果を0とおく。
𝐿 = log 𝑃(𝒙) − 𝜆 𝜋𝑖
𝑐
𝑖=1
− 1 (47)
𝜕𝐿
𝜕𝜋𝑖
=
𝜕 log 𝑃 𝒙
𝜕𝜋𝑖
− 𝜆 = 0 (48)
𝜕 log 𝑃 𝒙
𝜕𝜋𝑖
=
1
𝑃(𝑥 𝑡)
𝜕𝑃 𝑥 𝑡
𝜕𝜋𝑖
𝑛
𝑡=1
=
1
𝑃(𝑥 𝑡)
𝑃(𝑥 𝑡|𝜔𝑖)
𝑛
𝑡=1
=
𝑃(𝑥 𝑡, 𝜔 𝑡)
𝑃 𝑥 𝑡 𝑃(𝜔𝑖)
𝑛
𝑡=1
=
1
𝜋𝑖
𝑃 𝜔𝑖 𝑥 𝑡)
𝑛
𝑡=1
(49)
log 𝑃(𝒙) = log 𝑃(𝑥 𝑡)
𝑛
𝑡=1
𝑃(𝑥 𝑡) = 𝜋𝑖 log 𝑃(𝑥 𝑡|𝜔𝑖)
𝑐
𝑖=1
(𝑖 = 1,2, … , 𝑐)
𝑃 𝜔𝑖 = 𝜋𝑖
35. ベイズの定理より、
𝜃𝑖𝑘 = 𝑃(𝑣 𝑘|𝜔𝑖)
=
𝑃 𝑣 𝑘, 𝜔𝑖
𝑃(𝜔𝑖)
=
𝑃 𝑣 𝑘 𝑃 𝜔𝑖 𝑣 𝑘
𝑃 𝑣𝑙 𝑃 𝜔𝑖 𝑣𝑙)𝑚
𝑙=1
(60)
𝜃𝑖𝑘 =
𝑟𝑘 𝑃 𝜔𝑖 𝑣 𝑘
𝑟𝑙
𝑚
𝑙=1 𝑃(𝜔𝑖|𝑣𝑙)
(61)
38. • 𝜃𝑖𝑘の妥当性
よって、式(61)[5-75]は妥当である。
𝜃𝑖𝑘 =
𝑟𝑘 𝑃 𝜔𝑖 𝑣 𝑘
𝑟𝑙
𝑚
𝑙=1 𝑃(𝜔𝑖|𝑣𝑙)
𝑟𝑘 𝑃 𝜔𝑖 𝑣 𝑘 = 目が𝑣 𝑘の時、サイコロが𝜔𝑖である確率 × 目が𝑘で合った回数
= 観測結果が𝑣 𝑘の時、サイコロが𝜔𝑖であった期待値
𝑟𝑙 𝑃 𝜔𝑖 𝑣𝑙 = 投げたサイコロが𝜔𝑖であった回数の期待値
𝑚
𝑙=1
(65)
式(63)[5-79]より
𝜃𝑖𝑘 =
観測結果が𝑣 𝑘の時、サイコロが𝜔𝑖であった期待値
投げたサイコロが𝜔𝑖であった回数の期待値
(66)
39. 教師付きとの関係
• 教師無し
– 𝑃 𝜔𝑖 𝑥𝑡 は確率
• 教師あり
– 𝑃 𝜔𝑖 𝑥𝑡 は確定的
– 𝑃 𝜔𝑖 𝑥𝑡 =
1 (𝑠𝑡 = 𝜔 𝑡)
0 (𝑠𝑡 ≠ 𝜔 𝑡)
𝑃(𝜔𝑖|𝑥 𝑡)
𝑛
𝑡=1
= 𝑛𝑖 (67)
𝜋𝑖=
投げたサイコロが𝜔𝑖であった回数
サイコロを投げた回数
=
𝑛𝑖
𝑛
(68)
式(64)[5-81]より
式(38) [5-44]と一致
43. • Step 1 𝜋𝑖, 𝜃𝑖𝑘の初期値を与える(初期化)
• Step 2 𝑃 𝜔𝑖 𝑣 𝑘 =
𝜋 𝑖 𝜃 𝑖𝑘
𝜋 𝑗 𝜃 𝑗𝑘
𝑐
𝑗=1
• Step 3-1 𝜋𝑖 =
1
𝑛
𝑟𝑘 𝑃(𝜔𝑖|𝑣 𝑘)𝑚
𝑘=1
• Step 3-2 𝑃 𝜔𝑖 𝑣 𝑘 =
𝜋 𝑖 𝜃 𝑖𝑘
𝜋 𝑗 𝜃 𝑗𝑘
𝑐
𝑗=1
• Step 3-3 𝜃𝑖𝑘 =
𝑟 𝑘 𝑃(𝜔 𝑖|𝑣 𝑘)
𝑟 𝑙 𝑃(𝜔 𝑖|𝑣 𝑙)𝑚
𝑙=1
• Step 4 𝜋𝑖 = 𝜋𝑖, 𝜃𝑖𝑘 = 𝜃𝑖𝑘
log 𝑃(𝒙) = 𝑟𝑘
𝑚
𝑘=1 log 𝜋𝑖 𝜃𝑖𝑘
𝑐
𝑖=1
対数尤度log 𝑃 𝒙 をとり、その増分が閾値以下
なら終了し、さもなければStep2からもう一度繰り
返す。
式(42)(56)
[5-51][5-8]より
45. 教師無し学習の実験
• 実験条件
– サイコロは3つ(𝜔1, 𝜔2, 𝜔3)
– サイコロの目は2通り(偶数𝑣1, 奇数𝑣2)
– 推定すべきは𝜋𝑖で、𝜃𝑖𝑘は既知
– サイコロは10000回投げる(n=10000)
– 初期値は𝜋1 = 0.1, 𝜋2 = 0.5, 𝜋3 = 0.2
– 𝜃𝑖𝑘は既知なのでStep 3は省く
未知 𝜋1 = 0.1 𝜋2 = 0.4 𝜋3 = 0.5 (70)
既知 𝜃11 = 0.8 𝜃21 = 0.6 𝜃31 = 0.3 (71)
46. • 実験結果
– 𝑟1 = 4746, 𝑟2 = 5254
– 𝜋1 = 0.108, 𝜋2 = 0.401, 𝜋3 = 0.490
• おおむね設定値と同じ値が出ている
49. • 教師あり学習(𝜃𝑖𝑘既知)
– 結果として図5‐5中の〇付近が求まる
– 大域的最適解として初期値によらず一つの値が得られる
• 教師なし学習 𝜃𝑖𝑘未知
– 結果として図5‐5中の太線中のいずれかの点が求まる
– 複数あるうちの局所的最適解の一つが求まる
• 初期値によって求まる値は異なる
• 実際のパラメータと異なる値が求まる可能性もある
– 対数尤度を最大にする値