7.ギブスチェーン・モデルにおけるLog尤度の打切り――Learning Deep Architectures for AI

Learning Deep Architectures for AIの翻訳です。

7.ギブスチェーン・モデルにおけるLog尤度の打切り


ここでは、異なる観点から対照分岐更新ルールに近づく。これはその可能な一般化をもたらし、その性能を監視するのにしばしば用いられる再構築誤差に関係し、これはオートアソシエータを最適するのに用いられる(式5)。この導出のひらめきはHinton et al. (2006)に由来する。最初に(セクション11.1で説明する)ギブスチェーンは無限有向グラフモデルに関係づけることが出来るというアイディアから(ここでは無限有向グラフモデルをlog尤度とその勾配の展開に関連づける)。2番目に、(チェーンのサンプル\tilde{x}がモデルに由来するとき、式33の期待値は式15に等しくなるので)チェーンの収束は対照分岐を正当化するというアイディアから来ている。


条件付き分布P(h_t|x_t)P(x_{t+1}|h_t)によって定義される、収束するマルコフチェーンx_t\Rightar{h}_t\Rightar{x}_{t+1}\Rightar...を考察しよう。収束のための充分条件はそれが混合すること、つまり、任意の状態から任意の状態へ有限時間のうちに到達出来ること、である。


以下の補題(Bengio & Delalleau, 2007で示された)は、ベイズの規則の連続適用によって、シリーズ内のlog尤度をギブスチェーンでのサンプルを含むように展開することが出来ることを示している。


補題7.1. データ点x_1から出発するギブスチェーンx_1\Rightar{h}_1\Rightar{x_2}\Rightar{h_2}...を考える。チェーンの任意のパスについてlog尤度は以下のように展開出来る。
        \log{P}(x_1)=\log{P}(x_t)+\Bigsum_{s=1}^{t-1}\log\frac{P(x_s|h_s)}{P(h_s|x_s)}+\log\frac{P(h_s|x_{s+1})}{P(x_{s+1}|h_s)}     (39)
そしてその結果、これは任意のパスで真なので
        \log{P}(x_1)=E\left[\log{P}(x_t)\right]+\Bigsum_{s=1}^{t-1}E\left[\log\frac{P(x_s|h_s)}{P(h_s|x_s)}+\log\frac{P(h_s|x_{s+1})}{P(x_{s+1}|h_s)}\right]     (40)
ただし期待値はマルコフチェーン上であり、x_1に関して条件付けられている。


極限t\rightar\inftyにおいて、最後の項は分布P(x)エントロピーになる。t\rightar\inftyで諸項が消滅しないので、この展開はlog尤度の近似のために級数を打ち切ることを正当化しないことに注意。制限ボルツマンマシンの訓練の進歩を監視するためにしばしば用いられる、再建誤差が級数の第1項に密接に関係していることをあとで確かめる。


さて、対応する勾配級数を考察しよう。この定理を証明するためには、以下の簡単な補題が非常に有効で、これはのちに使用される。


補題7.2. パラメータ\thetaを持つ任意のモデルP(Y)について、期待値がP(Y)に従って取られる時
        E\left[\frac{\partial\log{P(Y)}}{\partial\theta}\right]=0      (41)


証明。合計が1になるというP(Y)に関する制約から始め、微分してこの補題を得る。以下の最後の行を得るために、任意の関数f(\theta)について\frac{\partial{f}(\theta)}{\partial\theta}=f(\theta)\frac{\partial\log{f}(\theta)}{\partial\theta}であるという事実を用いる。
        E[1]=\Bigsum_yP(Y=y)=1
        \frac{\partial\Bigsum_yP(Y=y)}{\partial\theta}=\frac{\partial{1}}{\partial\theta}=0
        \Bigsum_yP(Y=y)\frac{\partial\log{P}(Y=y)}{\partial\theta}=0
                         □


次に以下の定理が証明出来る(Bengio & Delalleau, 2007)。


定理7.3. データ点x_1から始まって収束するギブスチェーンx_1\Rightar{h_1}\Rightar{x_2}\Rightar{h_2}...を考察する。収束する級数でのlog尤度勾配は以下のように展開出来る。ここで全ての期待値はx_1についての条件付きである。
    \frac{\partial\log{P}(x_1)}{\partial\theta}=\Bigsum_{s=1}^{t-1}\left(E\left[\frac{\partial\log{P}(x_s|h_s)}{\partial\theta}\right]+E\left[\frac{\partial\log{P}(h_s|x_{s+1})}{\partial\theta}\right]\right)
          +E\left[\frac{\partial\log{P}(x_t)}{\partial\theta}\right]       (42)
ここで、sの項はs\rightar\inftyで0に収束し、最後の(tの)項もt\rightar\inftyで0に収束する。


k番目の項はkが増加すると小さくなるので、これはチェーンをkステップで打ち切ることを正当化する。上の展開での和が(ギブスチェーンの最初の[tex;k]ステップについての)サンプルを得ることでどれほど容易に置き換えられるかについて注意せよ。これは確率的勾配をもたらし、その期待値は上のlog尤度勾配展開の打ち切りに関係する正確な式である。最後に、二項制限ボルツマンマシンの場合、最初のkステップでの打切りは、まさにCD-k更新であるようなパラメータ更新を与えることを、示すことが出来る(Bengio & Delalleau, 2007)。


系7.4. ギブスチェーンにおける最初のkステップx_1\Rightar{h_1}\Rightar{x_2}\Rightar{h_2}\Rightar...x_k\Rightar{h_k}から生れる項だけを考えるとき、二項制限ボルツマンマシンの場合、(チェーン内のサンプルで置き換えた期待値を持つ)定理7.3の、打ち切られたlog尤度展開の勾配の、バイアスのない確率的評価子はCD-k更新に等しい。


実験と理論は、CD-kはCD-(k-1)に比べて、よりよい、そして(繰り返しの回数について)より速い収束をもたらす、という考えを支持している(しかし計算コストがいつもそれに見合っているとは限らないだろう)。これは、より小さいkは、log尤度勾配の評価におけるより多くのバイアスに対応するためである。よってCD-1は、この展開の最初の2つの項(h_1|x_1のサンプル1個とx_2|h_1のサンプル1個)を採用することに対応する。最初の1項だけ採用するとしたらどうであろうか? log尤度勾配の最初の項は
         \Bigsum_{h_1}P(h_1|x_1)\frac{\partial\log{P}(x_1|h_1)}{\partial\theta}      (43)
である。さて、上記の平均場近似を考える。そこでは、P(h_1|x_1)に従う全てのh_1構成に渡っての平均の代わりに、h_1をその平均構成\hat{h}_1=E[h_1|x1]に置換えて、
           \frac{\partial\log{P}(x_1|\hat{h}_1)}{\partial\theta}        (44)
を得る。これは、通常オートアソシエータを訓練するのに用いる再建誤差
           -\log{P}(x_1|\hat{h}_1)         (45)
の勾配にマイナスをつけたものである。


よって、log尤度展開の打切りは(バイアスのある平均場近似によって)おおよそ再建誤差になる一次近似(1つの項)、(期待値を1つのサンプルで近似する)CD-1になる、若干良い近似(2つの項)、CD-kになる、より多くの項、をもたらす。再建誤差は決定論的に計算され、この理由で、制限ボルツマンマシンをCDで訓練する時に進歩を追跡するのに用いられてきた。再建誤差とCD-kは(log尤度勾配の評価子として)バイアスと分散に関して相補的であるので、それらの組合せを調査することは興味のあることであろう。低分散高バイアス評価子(再建誤差勾配)は訓練の開始時には(勾配の精密な評価はあまり重要でないので)より有効であろうが、一方、低バイアス高分散評価子(CD-k)は訓練を収束させるためにはより有効である。