6.2. ボルツマンマシン――Learning Deep Architectures for AI
Learning Deep Architectures for AI の翻訳です。
6.2. ボルツマンマシン
ボルツマンマシンは特定のタイプのエネルギー・ベースのモデルであり、制限ボルツマンマシンはボルツマンマシンの特殊な形式で、そこではとの両方が因数分解出来るため、扱い易くなっている。ボルツマンマシン(Hinton, Sejnowski, & Ackley, 1984; Ackley et al., 1985; Hinton & Sejnowski, 1986)では、エネルギー関数は2次の多項式
(21)
である。2つのタイプのパラメータがあり、それらはバイアスと(各々がベクトルの、あるいはベクトルの単一要素に関係する)と、重み、 、(各々がユニットのペアと関係する)であり、まとめてで表す。行列、は対称的であると仮定され、大部分のモデルでは対角要素がゼロである。対角要素がゼロでないものは、他の変形、例えば2項ユニットの代わりにガウシアンを用いるもの、を得るために使用可能である (Welling, Rosen-Zvi, & Hinton, 2005)。
の2次形式の相互作用項のため、自由エネルギーを解析的に計算するための手法(式18)は、ここでは適用出来ない。しかし、勾配の確率的評価子を得るために、MCMC(モンテカルロ・マルコフチェーン(Andrieu, de Freitas, Doucet, & Jordan, 2003))サンプリング手続きを適用することが出来る。log尤度の勾配は、式12から始めて、以下のように書くことが出来る。
(22)
は計算が容易であることに注意。よってもしからサンプル抽出する手順とからサンプル抽出する手順を持てば、我々はlog尤度勾配の、バイアスのない確率的評価子を得ることが出来る。Hinton et al. (1984), Ackley et al. (1985), Hinton and Sejnowski (1986)は以下の用語を導入した。ポジティブ・フェーズでは、は観察された入力ベクトルに固定され(? clamped to)、を与えた状態でをサンプル抽出する。ネガティブ・フェーズでは、との両方が、理想的にはモデル自身からサンプル抽出される。実際には、近似的なサンプリングだけが、例えばMCMCを構成する繰り返し手続きを用いて、達成可能である。Hinton et al. (1984),、Ackley et al. (1985)、Hinton and Sejnowski (1986)で導入されたMCMCサンプリング方法は、ギブスサンプリング (Geman & Geman, 1984; Andrieu et al., 2003)に基づいている。個の確率変数の結合のギブスサンプリングは
(23)
の形の回のサンプリング・サブステップによって行われる。ここでは、 内のを除いた他の個の確率変数を含む。これら個のサンプルが得られたのち、チェーンの1ステップが完了し、ステップの数がに近づくにつれて、その分布がに収束するようなのサンプルをもたらす。
で、ボルツマンマシン内の全てのユニットを表すとし、で、番目のユニットを除くすべてのユニットに関係する値の集合を表すとする。全てのパラメータをベクトル と対称行列内に置くことで、ボルツマンマシン・エネルギー関数は書き直すことが出来る。
, (24)
ここではベクトルの要素のないもの、は行列の番目の行と列がないもの、はの番目の行(または列)で番目の要素がないベクトルである。この考えは、はボルツマンマシンでは容易に計算出来、そこからサンプル抽出出来るという事実を利用することである。例えば、もしならば
(25)
これは、人工ニューラル・ネットワークで、他のニューロンに関する、あるニューロンの出力を計算する通常の方程式である。
個々の例のために、2つのMCMCチェーン(1つはポジティブ・フェーズのための、1つはネガティブ・フェーズのための)が必要であり、勾配の計算は非常に高価に、訓練時間は非常に長く、なる可能性がある。これは本質的に、ボルツマンマシンが80年代終わりに、主要な学習方法として、複数層ニューラル・ネットワークのためのバック・プロパゲーション・アルゴリズムに置き換わった理由である。しかし、近年の研究は、短いチェーンを使ってときどき成功することを示してきており、これは、以下で検討する、制限ボルツマンマシンを訓練するための対照分岐の原理である。