Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
DL勉強会 第一回 
ディープボルツマンマシン 
前半 
! 
! 
B4 宮崎亮輔 
2014/10/20
目次 
❖ データ生成モデル! 
❖ データ生成モデルの再現! 
❖ ボルツマンマシン! 
❖ ホップフィールドモデル! 
❖ モデル解釈! 
❖ ボルツマンマシンの学習! 
❖ 可視変数のみのボルツマンマシン学習! 
❖ 最尤法! 
❖ カル...
データ生成モデル 
3
データ生成モデル 
❖ あるn次元の{+1, -1}の2値の観測データ点があったとす 
るx = {x1, x2, x3, …, xn}! 
❖ データは通常不確実性をもつ(次にどのようなデータを 
受け取るかわからない)! 
❖ 確率的に出現...
データ生成モデル 
❖ n次元の確率分布Pg(X)から生成されたものと考える! 
❖ X = {Xi ∈ {+1,-1} | i = 1,2,…,n} はn次元の確率変数! 
❖ 確率分布Pg(X)に従ってサンプルされた1つの実現値がx! 
❖...
データ生成モデル 
❖ Pg(X)は対象のデータの確率的な生成規則を規定する! 
❖ Pg(X)はデータの生成モデル! 
❖ データパターン毎に出現確率は異なる! 
❖ +1, +1, +1は出やすいけど-1, -1, -1は出にくいみたいな!...
データ生成モデル 
❖ 観測データとして右のような2値画像の例を考える! 
❖ 白が+1で黒が-1に対応、各画像中の各画素値を 
データとする! 
❖ データは画像の全画素数の次元! 
❖ 1つのデータパターンxがある1つの2値画像となる! 
...
データ生成モデルの再現 
❖ 現実のデータの生成モデルは一般には未知の分布! 
❖ 未知の生成モデルを再現することが統計的機会学習理論 
の目的! 
❖ 生成モデルからその確率に従ってデータが生成されてい 
るとする! 
❖ 適当な学習モデルP...
データ生成モデルの再現 
❖ 観測データを利用し、学習モデル(のパラメータΘ)を 
調整することで未知の生成モデルの再現を試みる! 
❖ 言語モデルは生成モデルというより学習モデルっぽい? 
統計的機械学習9理論のスキーム
データ生成モデルの再現 
❖ ボルツマンマシンは受け取った観測データから生成モデ 
ルを統計的機械学習の方法で構築するための学習モデル 
の一つ! 
❖ パラメトリック教師あり学習という位置づけ 
10
ボルツマンマシン 
11
ボルツマンマシン 
❖ 連想記憶のモデルとして知られているホップフィールド 
モデルがあり、その決定論的ダイナミクスを確率論的ダ 
イナミクスに拡張したモデル! 
❖ ボルツマンマシンは多次元のボルツマン分布(あるいは 
ギブス分布)と呼ばれる...
ホップフィールド 
ネットワーク(モデル) 
13
ホップフィールドネットワーク 
❖ 一つのネットワーク(行列)に複数の画像を埋め込める 
(記憶させる)ことができる(連想記憶) 
参考:http://rishida.hatenablog.com/entry/2014/03/03/174331...
ホップフィールドネットワーク 
❖ こんな無効グラフで表せるよう 
なネットワーク! 
❖ エッジに重みがついてる! 
❖ ノードは出力値と内部状態を持っ 
ている! 
❖ このネットワークにデータを記 
憶させる 
参考:http://ris...
ホップフィールドネットワーク 
❖ ノイズありの画像から記憶させた元々のノイズなしの画 
像を復元できる 
参考:http://rishida.hatenablog.com/entry/2014/03/03/174331 
16
ホップフィールドネットワーク 
❖ 古典的な評価関数(エネルギー関数)がある←ボルツマンマシン 
にも使われてる! 
❖ 記憶させたデータとの誤差が大きければエネルギーが大きくな 
る、小さければ小さく! 
❖ エネルギー関数を微分すると次の時...
ボルツマンマシン 
❖ よくわからないけど! 
❖ ホップフィールドネットワークという前身があって! 
❖ 決定論的な部分を確率論的な感じにしたやつ! 
❖ 局所解に陥らないように(焼きなまし法的な)! 
❖ 無向グラフで考えることができて! ...
ボルツマンマシン 
❖ いくつかのノード" = {1,2,…,|"|}と 
いくつかの無効リンクEからなる無向グラフG(", E)! 
❖ ノートiとノードjのリンクを(i, j) = (j, i) (←無効リンクなので)! 
❖ i番目のノー...
ボルツマンマシン 
❖ Φ(X|θ, ω)がエネルギー関数(ポテンシャル関数)! 
❖ バイアス項と相互作用項の和で表される 
❖ θiが各ノードiのバイアスパラメータ 
ωijは各リンク(i,j)の重み(相互作用)パラメータ 
20
ボルツマンマシン 
❖ ZB(θ,ω)はxに関する総和ΣxPB(X|θ,ω)を1にするための 
規格化定数 
❖ Σxとは確率変数Xの実行可能パターン全てに関する総和 
21
ボルツマンマシン 
❖ この確率モデルがボルツマンマシン! 
❖ グラフ表現と確率モデルを対応させたものを 
(確率的)グラフィカルモデルと呼ぶ 
22
モデル解釈 
23
モデル解釈 
❖ 指数関数の引数がエネルギー関数の負になってる 
→エネルギーの低いXのパターンがより高確率で 
 出現するようになっている 
24
モデル解釈 
❖ θi > 0 : Xi=+1でエネルギーを低くする(確率が高くなる)! 
❖ θi < 0 : Xi=-1でエネルギーを低くする! 
❖ →θiの正負によってXiの値の出現確率に偏りが出る! 
❖ θはバイアス 
25
モデル解釈 
❖ ωij > 0 : Xi == Xjでエネルギーを低くする! 
❖ ωij < 0 : Xi != Xjでエネルギーを低くする! 
❖ →ωはリンクで結ばれた変数同士の値の 
関連性(そろいやすさ・そろい難さ)を調整する 
2...
モデル解釈 
❖ 2値画像で考える! 
❖ 確率変数Xiは白(+1)か黒(-1)をとり、各ピクセルに対応! 
❖ 最も近いピクセル同士は強く依存しあうであろう仮定のもと 
ピクセルの4近傍にリンクを張る 
27
モデル解釈 
❖ 2値画像で考える 
バイアスパラメータθ! 
 ピクセルの色の偏り(白になりやすさ, 黒になりやすさ)! 
重みパラメータω! 
 隣同士のピクセルの色の揃いやすさ 
28
ボルツマンマシンの学習 
29
ボルツマンマシンの学習 
❖ 実際に観測したデータの出現確率に沿うように 
パラメータ{θ,ω}の値を調整する! 
❖ 可視変数のみの学習, 隠れ変数ありの学習がある! 
❖ 可視変数:データに対応している変数! 
❖ 隠れ変数:データに直接対...
可視変数のみの 
ボルツマンマシン学習 
31
可視変数のみの学習 
❖ 全ての確率変数が可視変数→Xiの代わりにviを使用! 
! 
! 
❖ n次元の観測データ点がそれぞれ統計的に独立に 
同分布からN個手に入ったとき(データセット) 
32
可視変数のみの学習 
❖ 白黒画像を観測データ点とすると、画像1枚が 
各観測データ点x(&)に対応する 
各データ点中のxi 
(&)に対してそれぞれ! 
1つの確率変数を対応させるとすると! 
ボルツマンマシンは観測データ点と! 
同じn次...
最尤法 
34
最尤法 
❖ ボルツマンマシンの学習では最尤法(MLE)を用いる! 
❖ 観測データセットD={x(&) | &=1,2,…,N}に対して尤度関数を定義する! 
! 
❖ PB(x(&)|θ,ω)はボルツマンマシンが観測データx(&)を生成する...
最尤法 
❖ 実際には対数尤度関数を使う! 
❖ 対数関数は単調増加なので最尤解は一致する 
36
最尤法 
❖ 最大点を求める→対数尤度関数のパラメータで偏微分 
❖ EB[…|θ,ω]はボルツマンマシンに関する期待値 
❖ 確率変数v全ての実現パターンに関する総和を実行して 
得られる 
37
最尤法 
❖ よって、次の連立方程式が成り立つ 
❖ ボルツマンマシンの学習方程式と呼ばれる! 
❖ 最尤解はこの方程式の解! 
❖ 別名、モーメントマッチングと呼ばれ、多くの 
確率モデルの学習で現れる 
38
カルバック・ライブラー 
情報量 
39
カルバック・ライブラー情報量 
❖ 確率変数Xに対する2つの確率分布P0(X)とP1(X)の間の近 
さを考える量! 
! 
❖ KL情報量は0以上! 
❖ P0(X) == P1(X)のときのみD(P0||P1)=0となる! 
❖ 2つの確率...
KL情報量から 
学習方程式の導出 
41
KL情報量から導出 
❖ 観測データセットDに対する経験分布(観測データ点の 
頻度分布)を定義! 
❖ QD(v)>=0 を満たし、かつ規格化条件ΣvQD(v)=1を満た 
すので確率分布である 
42
KL情報量からの導出 
❖ 経験分布とボルツマンマシンの間のKL情報量は 
❖ このKL情報量を最小にするパラメータを求める 
43
KL情報量からの導出 
❖ 微分したとき0となる条件から、最尤法と同様に 
ボルツマンマシンの学習方程式が成り立つ 
SDは観測データセットのエントロピーで、パラメータには依存しない 
❖ KL情報量の観点で見ると、最尤法は観測データセット 
...
計算困難性 
45
計算困難性 
❖ 学習方程式を見ると、期待値の計算が必要! 
❖ この計算は確率変数の全実現可能パターンに関する和! 
❖ n次元のボルツマンマシンでは2n個の多重和演算! 
❖ 計算量爆発 
46
計算困難性 
❖ でも最近では! 
❖ 有用な近似学習法の開発! 
❖ 確率伝搬法! 
❖ 擬似最尤法 ←実装簡単、高い学習性能、よく利用される! 
❖ 複合最尤法! 
❖ スコアマッチング! 
❖ コントラクティブ・ダイバージェンス法 
47
Upcoming SlideShare
Loading in …5
×

DL勉強会 01ディープボルツマンマシン

2,556 views

Published on

this is the study session about deep learning at komachi lab
http://cl.sd.tmu.ac.jp/groups/deep-learning

Published in: Technology
  • Be the first to comment

DL勉強会 01ディープボルツマンマシン

  1. 1. DL勉強会 第一回 ディープボルツマンマシン 前半 ! ! B4 宮崎亮輔 2014/10/20
  2. 2. 目次 ❖ データ生成モデル! ❖ データ生成モデルの再現! ❖ ボルツマンマシン! ❖ ホップフィールドモデル! ❖ モデル解釈! ❖ ボルツマンマシンの学習! ❖ 可視変数のみのボルツマンマシン学習! ❖ 最尤法! ❖ カルバック・ライブラー情報量からの学習方程式導出! ❖ ボルツマンマシンの計算困難性 2
  3. 3. データ生成モデル 3
  4. 4. データ生成モデル ❖ あるn次元の{+1, -1}の2値の観測データ点があったとす るx = {x1, x2, x3, …, xn}! ❖ データは通常不確実性をもつ(次にどのようなデータを 受け取るかわからない)! ❖ 確率的に出現すると考える 4
  5. 5. データ生成モデル ❖ n次元の確率分布Pg(X)から生成されたものと考える! ❖ X = {Xi ∈ {+1,-1} | i = 1,2,…,n} はn次元の確率変数! ❖ 確率分布Pg(X)に従ってサンプルされた1つの実現値がx! ❖ (確率変数Xiに対応するサンプル点がxi) 5
  6. 6. データ生成モデル ❖ Pg(X)は対象のデータの確率的な生成規則を規定する! ❖ Pg(X)はデータの生成モデル! ❖ データパターン毎に出現確率は異なる! ❖ +1, +1, +1は出やすいけど-1, -1, -1は出にくいみたいな! ❖ データパターン毎の出現確率を記述するのが生成モデル! ❖ 言語モデルも生成モデルの一つ? 6
  7. 7. データ生成モデル ❖ 観測データとして右のような2値画像の例を考える! ❖ 白が+1で黒が-1に対応、各画像中の各画素値を データとする! ❖ データは画像の全画素数の次元! ❖ 1つのデータパターンxがある1つの2値画像となる! ❖ Pg(X)は白黒画像の生成確率を表すこととなる! ❖ (図の上の画像が出現する確率は○○%など) 7
  8. 8. データ生成モデルの再現 ❖ 現実のデータの生成モデルは一般には未知の分布! ❖ 未知の生成モデルを再現することが統計的機会学習理論 の目的! ❖ 生成モデルからその確率に従ってデータが生成されてい るとする! ❖ 適当な学習モデルP(X|Θ)を仮定する 8
  9. 9. データ生成モデルの再現 ❖ 観測データを利用し、学習モデル(のパラメータΘ)を 調整することで未知の生成モデルの再現を試みる! ❖ 言語モデルは生成モデルというより学習モデルっぽい? 統計的機械学習9理論のスキーム
  10. 10. データ生成モデルの再現 ❖ ボルツマンマシンは受け取った観測データから生成モデ ルを統計的機械学習の方法で構築するための学習モデル の一つ! ❖ パラメトリック教師あり学習という位置づけ 10
  11. 11. ボルツマンマシン 11
  12. 12. ボルツマンマシン ❖ 連想記憶のモデルとして知られているホップフィールド モデルがあり、その決定論的ダイナミクスを確率論的ダ イナミクスに拡張したモデル! ❖ ボルツマンマシンは多次元のボルツマン分布(あるいは ギブス分布)と呼ばれる確率分布 ❖ ???????????????????????? 12
  13. 13. ホップフィールド ネットワーク(モデル) 13
  14. 14. ホップフィールドネットワーク ❖ 一つのネットワーク(行列)に複数の画像を埋め込める (記憶させる)ことができる(連想記憶) 参考:http://rishida.hatenablog.com/entry/2014/03/03/174331 14
  15. 15. ホップフィールドネットワーク ❖ こんな無効グラフで表せるよう なネットワーク! ❖ エッジに重みがついてる! ❖ ノードは出力値と内部状態を持っ ている! ❖ このネットワークにデータを記 憶させる 参考:http://rishida.hatenablog.com/entry/2014/03/03/174331 15
  16. 16. ホップフィールドネットワーク ❖ ノイズありの画像から記憶させた元々のノイズなしの画 像を復元できる 参考:http://rishida.hatenablog.com/entry/2014/03/03/174331 16
  17. 17. ホップフィールドネットワーク ❖ 古典的な評価関数(エネルギー関数)がある←ボルツマンマシン にも使われてる! ❖ 記憶させたデータとの誤差が大きければエネルギーが大きくな る、小さければ小さく! ❖ エネルギー関数を微分すると次の時刻での出力(要するにノイズ なしの画素値)を求められる! ❖ 相互に結合のあるネットワークに情報を記憶させるのが ホップフィールドネットワーク 参考:http://rishida.hatenablog.com/entry/2014/03/03/174331 17
  18. 18. ボルツマンマシン ❖ よくわからないけど! ❖ ホップフィールドネットワークという前身があって! ❖ 決定論的な部分を確率論的な感じにしたやつ! ❖ 局所解に陥らないように(焼きなまし法的な)! ❖ 無向グラフで考えることができて! ❖ エネルギー関数ってのがある 18
  19. 19. ボルツマンマシン ❖ いくつかのノード" = {1,2,…,|"|}と いくつかの無効リンクEからなる無向グラフG(", E)! ❖ ノートiとノードjのリンクを(i, j) = (j, i) (←無効リンクなので)! ❖ i番目のノードに確率変数xi ∈ {+1, -1}を対応 この無向グラフ上に定義する確率モデル 19
  20. 20. ボルツマンマシン ❖ Φ(X|θ, ω)がエネルギー関数(ポテンシャル関数)! ❖ バイアス項と相互作用項の和で表される ❖ θiが各ノードiのバイアスパラメータ ωijは各リンク(i,j)の重み(相互作用)パラメータ 20
  21. 21. ボルツマンマシン ❖ ZB(θ,ω)はxに関する総和ΣxPB(X|θ,ω)を1にするための 規格化定数 ❖ Σxとは確率変数Xの実行可能パターン全てに関する総和 21
  22. 22. ボルツマンマシン ❖ この確率モデルがボルツマンマシン! ❖ グラフ表現と確率モデルを対応させたものを (確率的)グラフィカルモデルと呼ぶ 22
  23. 23. モデル解釈 23
  24. 24. モデル解釈 ❖ 指数関数の引数がエネルギー関数の負になってる →エネルギーの低いXのパターンがより高確率で  出現するようになっている 24
  25. 25. モデル解釈 ❖ θi > 0 : Xi=+1でエネルギーを低くする(確率が高くなる)! ❖ θi < 0 : Xi=-1でエネルギーを低くする! ❖ →θiの正負によってXiの値の出現確率に偏りが出る! ❖ θはバイアス 25
  26. 26. モデル解釈 ❖ ωij > 0 : Xi == Xjでエネルギーを低くする! ❖ ωij < 0 : Xi != Xjでエネルギーを低くする! ❖ →ωはリンクで結ばれた変数同士の値の 関連性(そろいやすさ・そろい難さ)を調整する 26
  27. 27. モデル解釈 ❖ 2値画像で考える! ❖ 確率変数Xiは白(+1)か黒(-1)をとり、各ピクセルに対応! ❖ 最も近いピクセル同士は強く依存しあうであろう仮定のもと ピクセルの4近傍にリンクを張る 27
  28. 28. モデル解釈 ❖ 2値画像で考える バイアスパラメータθ!  ピクセルの色の偏り(白になりやすさ, 黒になりやすさ)! 重みパラメータω!  隣同士のピクセルの色の揃いやすさ 28
  29. 29. ボルツマンマシンの学習 29
  30. 30. ボルツマンマシンの学習 ❖ 実際に観測したデータの出現確率に沿うように パラメータ{θ,ω}の値を調整する! ❖ 可視変数のみの学習, 隠れ変数ありの学習がある! ❖ 可視変数:データに対応している変数! ❖ 隠れ変数:データに直接対応しない変数! ❖ 画素値は可視変数, ピクセルに欠損があったら隠れ変数 30
  31. 31. 可視変数のみの ボルツマンマシン学習 31
  32. 32. 可視変数のみの学習 ❖ 全ての確率変数が可視変数→Xiの代わりにviを使用! ! ! ❖ n次元の観測データ点がそれぞれ統計的に独立に 同分布からN個手に入ったとき(データセット) 32
  33. 33. 可視変数のみの学習 ❖ 白黒画像を観測データ点とすると、画像1枚が 各観測データ点x(&)に対応する 各データ点中のxi (&)に対してそれぞれ! 1つの確率変数を対応させるとすると! ボルツマンマシンは観測データ点と! 同じn次元の確率変数! ! を持つ確率モデルとなる 観測データセット D={x(&) | &=1,2,…,N} 33
  34. 34. 最尤法 34
  35. 35. 最尤法 ❖ ボルツマンマシンの学習では最尤法(MLE)を用いる! ❖ 観測データセットD={x(&) | &=1,2,…,N}に対して尤度関数を定義する! ! ❖ PB(x(&)|θ,ω)はボルツマンマシンが観測データx(&)を生成する確率! ❖ 各観測データ点は独立→PB(x(&)|θ,ω)の積である尤度関数は 観測データセットDをボルツマンマシンが生成する確率! ❖ この尤度を最大とするパラメータの値(最尤解)を求める (観測データセットを生成する一番尤もらしい分布を求める) 35
  36. 36. 最尤法 ❖ 実際には対数尤度関数を使う! ❖ 対数関数は単調増加なので最尤解は一致する 36
  37. 37. 最尤法 ❖ 最大点を求める→対数尤度関数のパラメータで偏微分 ❖ EB[…|θ,ω]はボルツマンマシンに関する期待値 ❖ 確率変数v全ての実現パターンに関する総和を実行して 得られる 37
  38. 38. 最尤法 ❖ よって、次の連立方程式が成り立つ ❖ ボルツマンマシンの学習方程式と呼ばれる! ❖ 最尤解はこの方程式の解! ❖ 別名、モーメントマッチングと呼ばれ、多くの 確率モデルの学習で現れる 38
  39. 39. カルバック・ライブラー 情報量 39
  40. 40. カルバック・ライブラー情報量 ❖ 確率変数Xに対する2つの確率分布P0(X)とP1(X)の間の近 さを考える量! ! ❖ KL情報量は0以上! ❖ P0(X) == P1(X)のときのみD(P0||P1)=0となる! ❖ 2つの確率分布間の距離のようなものとして扱える 40
  41. 41. KL情報量から 学習方程式の導出 41
  42. 42. KL情報量から導出 ❖ 観測データセットDに対する経験分布(観測データ点の 頻度分布)を定義! ❖ QD(v)>=0 を満たし、かつ規格化条件ΣvQD(v)=1を満た すので確率分布である 42
  43. 43. KL情報量からの導出 ❖ 経験分布とボルツマンマシンの間のKL情報量は ❖ このKL情報量を最小にするパラメータを求める 43
  44. 44. KL情報量からの導出 ❖ 微分したとき0となる条件から、最尤法と同様に ボルツマンマシンの学習方程式が成り立つ SDは観測データセットのエントロピーで、パラメータには依存しない ❖ KL情報量の観点で見ると、最尤法は観測データセット の経験分布とボルツマンマシンを最も近づける方法 44
  45. 45. 計算困難性 45
  46. 46. 計算困難性 ❖ 学習方程式を見ると、期待値の計算が必要! ❖ この計算は確率変数の全実現可能パターンに関する和! ❖ n次元のボルツマンマシンでは2n個の多重和演算! ❖ 計算量爆発 46
  47. 47. 計算困難性 ❖ でも最近では! ❖ 有用な近似学習法の開発! ❖ 確率伝搬法! ❖ 擬似最尤法 ←実装簡単、高い学習性能、よく利用される! ❖ 複合最尤法! ❖ スコアマッチング! ❖ コントラクティブ・ダイバージェンス法 47

×