ボルツマンマシンについて勉強した その3
はじめに
ボルツマンマシンについて勉強したのでメモその3.今回は本題と少し外れて平均場近似について.教科書は例によって以下.
機械学習スタートアップシリーズ これならわかる深層学習入門 (KS情報科学専門書)
- 作者: 瀧雅人
- 出版社/メーカー: 講談社
- 発売日: 2017/10/21
- メディア: 単行本(ソフトカバー)
- この商品を含むブログ (1件) を見る
平均場近似
ボルツマンマシンは各ノード同士を掛け合わせるがあるため期待値の計算が難しい.逆にこの項が存在しなければボルツマンマシンの分布は
となり,簡単化する.平均場近似では各変数が独立となっている分布(テスト分布)の集合を用意し,その中で最も元の分布に近いものをボルツマンマシンの近似として採用しようというもの(よりかは表現力のあるもの).
まず,テスト分布をとするとテスト分布の各変数は独立であると仮定していることから,
とかける.このようにかける分布の中から,ボルツマンマシンの分布とのKLダイバージェンスが最小となる分布を探すというのが目的.つまり,
の最小化を行う.等式制約条件つきなのでラグランジュの未定乗数法を使えば
という目的関数が得られる.ただし,はラグランジュ未定乗数.この目的関数をとで変分することで得られる2つの方程式の解を求めれば分布が決まる.に関する変分は元の拘束条件を表すため,についての変分を考える.まず,変分を考えやすくするため,の独立性を使って,目的関数のKLダイバージェンスの項を以下のように変形する.
上記をについて変分すると
となる.よって,目的関数をについて変分したものは
ともとまる.ここで右辺の第1項のに対して,がに関係ないことと制約条件を使って
と変形できる.またの部分に関してはで期待値を取っているため確率変数によらない定数になる.さらに第二項目に関してもボルツマンマシンの具体形を代入すると
と変形できる.ただし,2行目から3行目において右辺第1項と同様にの項に関する関係性を使った.さらに3行目で導入されたは,ノードに隣接するノードのインデックスを示す.また,4行目で導入されたは期待値計算によって出てくる定数で,以下で定義される.
これがいわゆる平均場で,期待値計算になっていることがわかる.よって今までの変形を組み合わせて確率変数に注目すると
と簡単にかける.よって求める分布は
となる.ここで上記分布は拘束条件を満たすので,を代入して計算することでラグランジュ未定乗数は簡単にもとまって,求める分布は
となる.結局のところ,注目している変数以外は平均値で置き換えてしまおうというのがこの近似法.ここでを書き下して見ると,からの項のみが残り
が得らる.これを条件に平均場の値を決定する必要がある.ちなみにこれは自己無撞着方程式や平均場方程式と呼ばれるらしい.しかし問題は,これは非線形な連立方程式になるため解析的に解くのは困難ということ.実践的には期待値をランダムに初期化して,得られた期待値を使って実際に計算することで期待値の値を更新するという手続きを繰り返して求めるらしい.
最終的にボルツマンマシンにおいては,と近似するだけの話.
まとめ
平均場近似について勉強した.教科書によると平均場近似は簡単化しすぎているせいで変数間の相関を失って精度が落ちるらしい.独立の要請を緩めたベーテ近似やクラスター変分法という方法もあるらしいがとりあえず教科書にはないので機会があれば勉強してみようかくらい.