繰り返し計算を伴う深層学習モデルの有効性が示されてきた。しかし、計算を無限回せずとも、有限回の計算で近似する「カップリング」というテクニックの有効性が検証され、機械学習の場でも応用が広がっている。
深層学習では、データを入力して何らかの予測値を出力する関数を深層ニューラルネットワーク(DNN)で構成する。通常は、1度データを入力したら、そのDNNで行われる計算は1回のみである。例えば、画像認識モデルであれば、画像をDNNの一種である畳み込みニューラルネットワーク(CNN)などに入力して、その出力値をそのまま予測値とすることが一般的だ。しかし、近年では、1回計算した出力値をそのまま使うのではなく、DNNの関数を何度も繰り返し適用するような手法が数多く提案されており、様々な領域でその有効性が示唆されている。
例えば、第34回 ノイズから画像を復元 拡散確率モデルによる画像生成の最前線 で紹介した拡散確率モデルと呼ばれる深層生成モデルでは、ノイズ画像に対してDNNを繰り返し適用することで、徐々にノイズを除去していき、最終的に奇麗な画像を生成することができる。他には、第21回 識別モデルと生成モデルを同時に学習!? 深層学習の再解釈 で紹介したエネルギーベースモデルでも、ノイズ画像を、DNNで定義されたエネルギー関数の勾配に沿って更新するマルコフ連鎖を繰り返し適用することで、奇麗な画像を生成することができる。
無限回の計算を有限回で近似
しかし、このような繰り返しDNNを適用するような手法を学習する際には、繰り返し計算を無限回行わなければ求められないことがしばしば存在する。例えば、前述のエネルギーベースモデルでは、x+を学習データ、x-をモデルからのサンプルとして、E[ f(x+;θ)-f(x-;θ)]を最小化するように学習されるが、モデルからのサンプルx-を得るためには、ノイズ画像からのマルコフ連鎖による更新を無限回行わなければならない。実用上は、この更新を適当な回数で打ち切ったものを用いて学習を行うが、このように学習したモデルは、最適な解に収束するとは限らないことが知られているため、エネルギーベースモデルをうまく学習するには様々なヒューリスティクスを駆使する必要があった。しかし近年、このような本来は無限回の計算が必要なものを、カップリングというテクニックを使って有限回の計算でうまく計算する方法が提案された。今回はその方法について、少々テクニカルな内容になるが、その概要を簡単に解説していく。
カップリングを用いた期待値の近似
今回対象とするのは、先ほどのエネルギーベースモデルの例のように、無限回の計算によって得られるある変数x∞についての期待値E[ f(x∞)]を推定したい場合である。
まず、このような期待値の計算は、非常に複雑な積分計算を含むため、解析的に計算することはほとんどの場合不可能である。そこで、通常用いられるのが、確率変数x∞のn個のサンプルを使って、その平均(下図、数式 1)で近似する方法である。しかし、前述した通り、この方法もまた、x∞のサンプリングに無限回の計算を要するため、現実的には求めることができない。そこで、求めたい期待値を次のように式変形することを考える(下図、数式 2)。
ただし、xtはマルコフ連鎖の計算をt回行って得られた値とし、ytはxtと同じ確率分布に従う変数とする。この式変形はxtとytが同じ確率分布に従うことから、直ちに導くことができる。すると、もし t≥τ で xt+1=yt が常に成り立つならば、右辺第2項の総和の計算が t≥τ で常に0となるため、以下のように有限回の計算のみで期待値の近似値が計算できることが分かる(下図、数式 3)。
このxt+1とytのような2つの確率変数のペアをカップリングといい、xt+1=ytとなる確率を最大にするカップリング(最大カップリングという)の構成方法が知られている。これを用いることによって、本来無限回の計算が必要だった期待値の計算を、有限回の計算で近似することが可能になるというわけだ。
この記事は会員限定(無料)です。