Contenu connexe
Similaire à ディープボルツマンマシン入門 (7)
Plus de Saya Katafuchi (20)
ディープボルツマンマシン入門
- 5. 無向グラフの例
(5ノード)
3
4
5
1
2
青い丸がノード,線がリンクを示す
ノード中の数字はそのノードの番号
を表している
このとき,
Ω={1,2,3,4,5}
E=(1,2),(1,4),(1,5),(2,3),(2,4),(3,4),(3,5),(4,5)
で,各ノードは確率変数𝑥𝑖 ∈ {+1, −1}を対応付けられている
- 7. ボルツマンマシンの確率モデル
𝑃𝐵 𝑋 𝜃, 𝜔 ≔
1
𝑍 𝐵 𝜃, 𝜔
exp(−Φ 𝑋 𝜃, 𝜔 )
Φ 𝑋 𝜃, 𝜔 ≔ − 𝜃𝑖 𝑋𝑖
𝑖∈Ω
− 𝜔𝑖𝑗 𝑋𝑖 𝑋𝑗
(𝑖,𝑗)∈𝐸
バイアス項 相互作用項
𝑃(𝑋)はデータ生成の確率規則となる
データ生成モデル
𝑃 𝑋 𝜃 はパラメータθを持った学習モデル
ここで指数関数の引数に指定されているのはエネルギー関数であり,
- 8. 数式の意味
ー確率モデル
𝑃𝐵 𝑋 𝜃, 𝜔 ≔
1
𝑍 𝐵 𝜃, 𝜔
exp(−Φ 𝑋 𝜃, 𝜔 )
指数関数の引数が,エネルギー関数の負となっている
→エネルギーが低いXのパターンが高確率で出現するようになっている
- 9. 数式の意味
ーエネルギー関数
Φ 𝑋 𝜃, 𝜔 ≔ − 𝜃𝑖 𝑋𝑖
𝑖∈Ω
− 𝜔𝑖𝑗 𝑋𝑖 𝑋𝑗
(𝑖,𝑗)∈𝐸
𝜃𝑖 > 0のとき,𝑋𝑖 = +1のほうがエネルギーを低くする(確率が高くなる)
𝜃𝑖 < 0のとき,𝑋𝑖 = −1のほうがエネルギーを低くする(確率が高くなる)
→𝜽𝒊の正負によって𝑿𝒊の値の出現確率に偏りが出るので,𝜽はバイアスと呼ばれる
𝜔𝑖𝑗 > 0のとき,𝑋𝑖と𝑋𝑗は同じ値をとったほうがエネルギーが低くなる
𝜔𝑖𝑗 < 0のとき,𝑋𝑖と𝑋𝑗は異なる値をとったほうがエネルギーが低くなる
→ωはリンクで結ばれた変数同士の値の関連性(そろいやすさ・そろい難さ)を調整する
- 23. 可視変数のみのボルツマンマシンとは
cf.白黒画像で考える
白黒画像を観測データ点とすると,画像1枚が各観測データ点
𝑥(𝜇)に対応する
−1, +1, +1, −1, ⋯ , −1, +1
+1, −1, +1, −1, ⋯ , +1, +1
+1, +1, −1,− ∓1, ⋯ , −1, −1
・
・
・
𝑛個
𝑥(1)
𝑥(2)
𝑥(𝑁)
各データ点中の𝑥𝑖
(𝜇)
に対してそれぞれ
1つの確率変数を対応させるとすると,
ボルツマンマシンは観測データ点と同じn次元の
確率変数𝑣 = 𝑣𝑖 𝑖 = 1,2, ⋯ , 𝑛 を持つ確率モデルとなる
図:観測データセット𝒟 = {𝑥
𝜇
|𝜇 = 1,2, ⋯ , 𝑁}の例
- 25. 最尤法とは
観測データセット𝒟 = {𝑥
𝜇
|𝜇 = 1,2, ⋯ , 𝑁}に対して、以下の尤度関数を定
める
ℒ 𝒟 𝜃, 𝜔 ≔ 𝑃𝐵 𝑥 𝜇 𝜃, 𝜔
𝑁
𝜇=1
𝑃𝐵 𝑥 𝜇 𝜃, 𝜔 :ボルツマンマシンが観測データ点𝑥(𝜇)を生成する確率
各観測データ点は独立に発生しているので、これらの積を示す尤度関数は
観測データセット𝓓をボルツマンマシンが生成する確率となる
最尤法とは、
尤度関数を最大とするパラメータの値(最尤解)を求めること
得られた観測データセットを生成するために一番尤もらしい分布を求めること
- 27. 最大点を求めるために、対数尤度関数を最大化するパラメータの勾配を計算する
𝜕ℒ 𝒟(𝜃, 𝜔)
𝜕𝜃𝑖
= 𝑥𝑖
(𝜇)
− 𝑁𝔼 𝐵[𝑣𝑖|𝜃, 𝜔]
𝑁
𝜇=1
𝜕ℒ 𝒟(𝜃, 𝜔)
𝜕𝜔𝑖𝑗
= 𝑥𝑖
(𝜇)
𝑥𝑗
(𝜇)
− 𝑁𝔼 𝐵[𝑣𝑖 𝑣𝑗|𝜃, 𝜔]
𝑁
𝜇=1
ここで𝔼 𝐵[⋯ |𝜃, 𝜔]はボルツマンマシンに関する期待値で、
𝔼 𝐵 ⋯ 𝜃, 𝜔 = (⋯ )𝑃𝐵(𝑣|𝜃, 𝜔)
𝑣
確率変数𝑣すべての実現パターンに関する総和を実行することにより得られる
つまり、 𝜽の勾配と𝝎 の勾配がボルツマンマシンの期待値と一致するようなNを求
めればよい
- 28. よって、以下の連立方程式が成り立つ
1
𝑁
𝑥𝑖 (𝜇)
= 𝔼 𝐵[𝑣𝑖|𝜃, 𝜔]
𝑁
𝜇=1
1
𝑁
𝑥𝑖(𝜇) 𝑥𝑗 𝜇 =
𝑁
𝜇=1
𝔼 𝐵[𝑣𝑖|𝜃, 𝜔]
この方程式はボルツマンマシンの学習方程式と呼ばれ、最尤解はこの方程式の解
となる
学習方程式は別名モーメントマッチング(moment matching)とも呼ばれ、多くの
確立モデルの学習の中で現れる
- 31. 最尤法をKL情報量の観点で見る
観測データセット𝒟に対する経験分布(観測データ点の頻度分布のこと)を定義
𝑄 𝒟 𝑣 ≔
1
𝑁
𝛿 𝑣, 𝑥𝑖 𝜇
, 𝛿 𝑥, 𝑦 =
1𝑥 = 𝑦
0𝑥 ≠ 𝑦
𝑁
𝜇=1
𝑄 𝒟(𝑣) ≥ 0を満たし、かつ規格化条件 𝑄 𝒟(𝑣)𝑣 = 1を満たすので、確率分布である
この経験分布とボルツマンマシンの間のKL情報量は以下のとおりである
𝒟(𝑄 𝒟| 𝑃𝐵 = 𝑄 𝒟 𝑣 𝑙𝑛
𝑄 𝒟(𝑣)
𝑃𝐵(𝑣|𝜃, 𝜔)
𝑣
このとき、𝒟(𝑄 𝒟| 𝑃𝐵 が最小となるようなパラメータの値を求めると、微分したと
き0となる条件から、最尤法と同様にボルツマンマシンの学習方程式が成り立つ
KL情報量の観点からみると、最尤法は観測データセットの経験分布と
ボルツマンマシンを最も近づける方法である。
- 34. ボルツマンマシンが見直されてきた
理由
確率伝搬法(loopy belief propagation)
疑似最尤法(maximum pseudo-likehood estimation:MPLE)
複合最尤法(maximum composite likehood estimation)
スコアマッチング
コンストラクティブ・ダイバージェンス(CD)法
などの現実的な時間内で実行することが可能な近似学習法が開発された
この中でも、疑似最尤法は実装の簡便さと高い学習性能をもつことからよく利用
されている
- 39. 非可視変数を含むボルツマンマシン
1
3
2
4 5
(n+m)次元の変数のうち、ノード番号(確率変数の添え字)
の若い順に並べ、最初のn次元を各観測データに対応させる(可視変数)
残りのm次元の変数は観測データとは関係のない変数(非可視変数)とする
ここで、
観測データ点に対応するノード番号の集合を𝑉 = 1, ⋯ , 𝑛 とし、
対応しないノード番号の集合を𝐻 = 𝑛 + 1, ⋯ , 𝑛 + 𝑚 とする
ノード全体の集合はΩ = 𝑉 + 𝐻で表すことができる。
3次元の観測データセットに対し、5次元のボルツマンマシンを用いて
学習するとき、
𝑉 = 1,2,3
𝐻 = 4,5
𝑋 = 𝑋1, 𝑋2, 𝑋3, 𝑋4, 𝑋5 = {𝑣1, 𝑣2, 𝑣3, ℎ4, ℎ5}
であり、ノード1~3は可視変数、ノード4,5は非可視変数として扱われる3次元の観測データセットを
5次元のボルツマンマシンを使って学習する例
- 43. また、𝑃 𝐻|𝑉 ℎ 𝑣, 𝜃, 𝜔 は可視変数が与えられたもとでの非可視変数の確率で、
ベイズの公式より
𝑃 𝐻|𝑉 ℎ 𝑣, 𝜃, 𝜔 =
𝑃𝐵(𝑣, ℎ|𝜃, 𝜔)
𝑃𝑉(𝑣|𝜃, 𝜔)
によって与えられる。
𝔼 𝐵 ⋯ 𝜃, 𝜔 はこれまでと同様にボルツマンマシンの期待値であり、ボルツマンマ
シンが取り得るすべての確率変数の出現パターンの総和である。非可視変数を含
む場合は𝔼 𝐵 ⋯ 𝜃, 𝜔 = (⋯ )𝑃𝐵(𝑣, ℎ|𝜃, 𝜔)𝑣,ℎ である。
※ベイズの公式(定理)
事象Bのベイズ確率について、
𝑃 𝐵 𝐴 =
𝑃 𝐴 𝐵 𝑃(𝐵)
𝑃(𝐴)
P(A):事象Aが起こる確率
P(B):事象Aが起きる前の事象Bが起こる確率(事前確率)
P(B|A):事象Aが起きた後に事象Bが起こる確率(事後確率)
P(A|B):尤度(事象Aが起きた後に事象Bが起こる尤もらしさ)
- 55. RBMのエネルギー関数と確率モデル
可視変数を𝑣, 非可視変数をℎとすると、
Φ 𝑋 𝜃, 𝜔 = Φ(𝑣, ℎ|𝜃 𝑣
, 𝜃ℎ
, 𝜔)
= − 𝜃𝑖 𝑣
𝑣𝑖 − 𝜃𝑗ℎ
ℎ𝑗 − 𝜔𝑖𝑗 𝑣𝑖ℎ𝑗
𝑗∈𝐻𝑖∈𝑉𝑗∈𝐻𝑖∈𝑉
𝜃 𝑣:可視変数に対するバイアス 𝜃ℎ:非可視変数に対するバイアス
上の式から、RBMの確率モデルは
𝑃𝐵 𝑣, ℎ 𝜃 𝑣
, 𝜃ℎ
, 𝜔
∝ exp(− 𝜃𝑖 𝑣
𝑣𝑖 − 𝜃𝑗ℎ
ℎ𝑗 − 𝜔𝑖𝑗 𝑣𝑖ℎ𝑗
𝑗∈𝐻𝑖∈𝑉𝑗∈𝐻𝑖∈𝑉
)
で表現することができる
以下、表記の簡単化の為にパラメータをΘで表す
Θ = {𝜃 𝑣
, 𝜃ℎ
, 𝜔}
- 59. RBMの性質
(1)条件付き独立の性質
可視変数が固定された場合の非可視変数の条件付き確率は,
𝑃 𝐻|𝑉 ℎ 𝑣, Θ =
𝑃𝐵(𝑣, ℎ|Θ)
𝑃𝑉(𝑣|Θ)
=
exp( 𝜆𝑗
𝐻
ℎ𝑗)
2cosh( 𝜆𝑗
𝐻
ℎ𝑗)
𝑗∈𝐻
𝜆𝑗
𝐻
≔ 𝜃𝑗
ℎ
+ 𝜔𝑖𝑗 𝑣𝑖
𝑖∈𝑉
で,同様に非可視変数が固定された場合の可視変数の条件付き確率は,
𝑃 𝐻|𝑉 𝑣 ℎ, Θ =
exp( 𝜆𝑖
𝑉
𝑣𝑖)
2cosh( 𝜆𝑖
𝑉
𝑣𝑖)
𝑖∈𝑉
𝜆𝑖
𝑉
≔ 𝜃𝑖
𝑣
+ 𝜔𝑖𝑗ℎ𝑗
𝑗∈𝐻
となる
条件付き確率は確率変数同士の積である
片方の層の確率変数が何らかの値に固定
されると,もう片方の確率変数は互いに
独立となる
- 61. エネルギー関数Φ 𝑉 𝑣 Θ を𝜔についてテイラー展開してみると、
Φ 𝑉 𝑣 Θ = 𝑐 − 𝜃𝑖
𝑣
𝑣𝑖 − 𝑡𝑎𝑛ℎ𝜃𝑗
ℎ
𝜔𝑖𝑗 𝑣𝑖
𝑖∈𝑉𝑗∈𝐻𝑖∈𝑉
−
1
2
𝑠𝑒𝑐ℎ2 𝜃𝑗
ℎ
𝜔𝑖𝑗 𝜔 𝑘𝑗 𝑣𝑖 𝑣 𝑘
𝑖,𝑘∈𝑉𝑗∈𝐻
−
1
3
𝑠𝑒𝑐ℎ2
𝜃𝑗
ℎ
𝑡𝑎𝑛ℎ𝜃𝑗
ℎ
𝜔𝑖𝑗 𝜔 𝑘𝑗 𝜔𝑙𝑗 𝑣 𝑘 𝑣𝑙
𝑖,𝑘,𝑙∈𝑉𝑗∈𝐻
+𝑂(𝜔4)
二次相互作用項
バイアス項
三次相互作用項
二次以上の相互作用項が
エネルギー関数内に存在
している
エネルギー関数を変更す
ることなくモデルを複雑
化することができる!
- 67. DBMのエネルギー関数
𝑉:可視層のノードの番号の集合
𝐻𝑟:第𝑟番目の隠れ層のノードの集合
𝑣 = 𝑣𝑖 ∈ +1, −1 𝑖 ∈ 𝑉 :可視変数
ℎ = {ℎ𝑖
𝑟
∈ {+1, −1}|𝑖 ∈ 𝐻𝑟}:第𝑟番目の非可視層内に存在する非可視変数
R層の隠れ層からなるエネルギー関数は,
Φ 𝑣, ℎ 𝑊 = − 𝜔𝑖𝑗
1
𝑗∈𝐻1𝑖∈𝑉
𝑣𝑖ℎ𝑗
1
− 𝜔𝑖𝑗
(𝑟)
ℎ𝑖
(𝑟−1)
ℎ𝑗
(𝑟)
𝑗∈𝐻 𝑟𝑖∈𝐻 𝑟−1
𝑅
𝑟=2
ℎ(1)
⋯ ℎ 𝑅
をまとめてℎ,𝜔(1)
⋯ 𝜔(𝑅)
をまとめて𝑊で表している