10.ディープ・ビリーフ・ネットワーク――Learning Deep Architectures for AI
Learning Deep Architectures for AI の翻訳です。
10.ディープ・ビリーフ・ネットワーク
層のディープ・ビリーブ・ネットワーク(Hinton et al., 2006)は、観測されたベクトルと、枚の隠れた層、の間の結合分布を以下のようにモデル化する。
(51)
ここでであり、は、ディープ・ビリーフ・ネットワークのレベルに対応する制限ボルツマンマシン内の見えるユニットと隠れたユニットの条件つき分布であり、は、最上層の制限ボルツマンマシン内の見えるユニットと隠れたユニットの結合分布である。これを図9に示す。
図9:生成モデル(太線矢印で生成パスを示す)と、入力の表現の複数レベルを抽出する手段(点線矢印で認識パスを示す)、としてのディープ・ビリーフ・ネットワーク。最上の2つの層とは(それらの結合分布についての)制限ボルツマンマシンを形成する。低い層は、有向グラフ・モデル(シグモイド・ビリーフ・ネット)を形成し、最後から2番目の層のための事前分布は最上レベルの制限ボルツマンマシンによって供給される。
個々の追加された層が対照分岐によって制限ボルツマンマシンとして訓練される、貪欲層毎手続きによって、ディープ・ビリーフ・ネットワークを純粋に教師なしのやり方で訓練する。
は、ネットワークの、入力訓練分布である。
は、対照分岐における確率的勾配降下の、学習レートである。
は訓練する層の数である。
は、個々の層にある隠れたユニットの数である。
は、レベルの重み行列であり、は1からまでの数である。
は、レベルのバイアス・ベクトルであり、は0からまでの数である。
- 初期化
- for to do
- 初期化 ,
- while 停止基準を満たさない do
- からを抽出
- for to do
- からを抽出
- end for
- {よって、将来の使用のためにを提供}
- end while
- end for
アルゴリズム2の擬似コードで示したように、ディープ・ビリーフ・ネットワークを貪欲層毎のやり方で訓練する際、個々の層は制限ボルツマンマシンとして初期化され、を、このやり方で訓練された番目の制限ボルツマンマシンを表すものとする。我々はを、の近似として用いる。というのは、(これは因数分解可能ではない)ではなく(これは因数分解可能)を計算し、そこからサンプル抽出するのは容易だからである。これらのは、入力ベクトルの表現を構築するためにも使用される。全てのレベルについて事後分布、あるいは表現、の近似を得るために、我々は以下の手順を用いる。最初に、1番目のレベルの制限ボルツマンマシンからを抽出する、あるいは、別の策として、平均場法によってのサンプルの代わりにを用いる。そこでは期待値は制限ボルツマンマシン分布に渡ってのものである。それらが2項ユニットであるような通常の場合、これはちょうど隠れたユニットの出力確率 になる。2番目のレベルの制限ボルツマンマシンの入力として、サンプルか、平均場ベクトル、のいずれかを取って、またはサンプルを計算する、などを、最後の層まで行う。についてのディープ・ビリーフ・ネットワーク生成モデルのサンプルは以下のようにして得ることが出来る。
- 最高レベルの制限ボルツマンマシンから、見えるベクトルをサンプル抽出する。これは、セクション6.3.1に概説したようにとの間を行き来する、その制限ボルツマンマシン内でギブスチェーンを実行することにより、近似的に達成できる。(上述のようにによって)訓練集合例から得られた表現からチェーンを始めることにより、必要になるギブスステップの数はより少なくなる。
- から1まで順に減らして、レベルの隠れた層から見える層への条件付き分布に従って、を与えてを抽出することを繰り返す。
- がディープ・ビリーブ・ネットワークのサンプルである。
前に訓練した層の上にある層の、貪欲層単位での教師なし訓練の原理は、個々の層の構成要素としての制限ボルツマンマシンに適用出来る(Hinton et al., 2006; Hinton & Salakhutdinov, 2006; Bengio et al., 2007; Salakhutdinov & Hinton, 2007)。
- 最初の層を、その見える層としてのナマ入力をモデル化する制限ボルツマンマシンとして訓練する。
- 上に概説したように、最初の層を用いて、2番目の層のためのデータとして用いられる、入力データの表現を得る。2つの普通のソリューションは、この表現のために、の隠れた層のサンプルか、あるいは、実際の値、を得ることである。
- 2番目の層を制限ボルツマンマシンとして訓練し、(その制限ボルツマンマシンの見える層のための)訓練例として変換されたデータを得る。
- (2)と(3)を、希望する層の数だけ繰り返し、1回毎に、サンプルか平均値のいずれかを上に伝える。
- このディープ・アーキテクチャの全てのパラメータを、ディープ・ビリーフ・ネットワークのlog尤度の代理について、あるいは(学習で得た表現を学習ありの予測に変換する、余分の学習機械を追加したのちに)教師あり訓練判断基準について、微調整する。
半教師ありと部分教師ありの訓練についてセクション9の最後に述べた意見はディープ・ビリーフ・ネットワークにも当てはまる。ラベルのついたデータとついていないデータを組合せることは、ディープ・ビリーフ・ネットワークでは簡単であり、部分教師ありの設定は、若干のタスクについて役立つことが実験的に分かっている(Bengio et al., 2007)。