562

第 17 章

モンテカルロ法

ランダム化アルゴリズムは,ラスベガスアルゴリズムとモンテカルロアルゴリズムという 2
つのおおまかなカテゴリに分類される.ラスベガスアルゴリズムはつねに正しい答え(また
は失敗したという報告)を正確に返す.このようなアルゴリズムは,ランダムな量の資源,通
常はメモリや時間を消費する.反対に,モンテカルロアルゴリズムはランダムな誤差量で答
えを返す.一般に,より多くの資源(通常は実行時間とメモリ)を消費することで,この誤差
量を減らすことができる.どんな計算量の設定でも,モンテカルロアルゴリズムは近似解を
提供できる.

機械学習の多くの問題は非常に困難なため,それらの問題に対する正確な答えを得ること
は決して期待できない.このため,正確な決定論的アルゴリズムやラスベガスアルゴリズム
は,機械学習アルゴリズムの選択肢から除外される.代わりに,決定論的近似アルゴリズムや
モンテカルロ近似を使用する必要がある.どちらのアプローチも,機械学習のいたるところ
に現れる.本章ではモンテカルロ法に焦点を当てる.

17.1 サンプリングとモンテカルロ法
機械学習の目標を達成するために使われる多くの重要な技術は,ある確率分布からサンプ
ルを抽出し,このサンプルを利用してある望ましい量のモンテカルロ推定を行うことに基づ
いている.
第 17. モンテカルロ法

17.1.1 なぜサンプリングをするのか

確率分布からサンプルを抽出したい理由は多くある.サンプリングは,低コストで多くの
総和と積分を近似する柔軟な方法を提供する.ミニバッチで全訓練コストをサブサンプリン
グする場合のように,コストはかかるが計算的に扱いやすい総和を求める際には,サンプリン
グを利用することで大幅な高速化を実現できることがある.学習アルゴリズムによって,無
向モデルの対数分配関数の勾配のような,計算困難な総和や積分の近似が必要になる場合も
ある.他の多くの場合でも,訓練分布からサンプリングできるモデルを訓練したいという意
味で,サンプリングは実際に目標となる.

17.1.2 モンテカルロサンプリングの基礎

総和や積分が正確に計算できない(たとえば,指数関数的に多くの項の総和となり,かつ正
確な単純化が知られていない)ときに,モンテカルロサンプリングを使用して近似できる場
合が多い.このアイディアは,総和や積分がある分布の下での期待値であるかのようにみて,
対応する平均値によって期待値を近似するというものである.
!
s= p(x)f (x) = Ep [f (x)] (17.1)
x

または "
s= p(x)f (x)dx = Ep [f (x)] (17.2)

のように,推定する総和や積分を期待値で書き直そう.ただし,p は確率変数 x における確率
分布(総和の場合)もしくは確率密度(積分の場合)である.

p から n 個のサンプル x(1) , . . . , x(n) を抽出して,経験平均値
n
1!
ŝn = f (x(i) ) (17.3)
n i=1

を形成することで s を近似できる.この近似はいくつかの異なる特性によって正当化される.
最初の自明な観察は,推定量 ŝ が不偏ということである.これは,
n n
1! 1!
E[ŝn ] = E[f (x(i) )] = s=s (17.4)
n i=1 n i=1

563
第 17. モンテカルロ法

となるためである.しかし,それに加えて大数の法則(law of large numbers)によれば,
サンプル x(i) が i.i.d. ならば平均値はほぼ確実に期待値

lim ŝn = s (17.5)
n→∞

に収束する.ただし,個々の項の分散 Var[f (x(i) )] が有界である場合に限る.これをより明
確に確かめるために,n が増加したときの ŝn の分散を考えよう.分散 Var[ŝn ] は減少し,
Var[f (x(i) )] < ∞ である限り,0 に収束する.すなわち
n
1 !
Var[ŝn ] = Var[f (x)] (17.6)
n2 i=1
Var[f (x)]
= . (17.7)
n
この便利な結果は,モンテカルロ平均の不確実性,すなわちモンテカルロ近似における期待誤
差量を推定する方法も示している.f (x(i) ) の経験平均と経験分散の両方を計算し,*1 推定さ
れた分散をサンプル数 n で割って,Var[ŝn ] の推定量を得る.中心極限定理(central limit
Var[f (x)]
theorem)によれば,平均の分布 ŝn は,平均 s と分散 n をもつ正規分布に収束する.
これにより,標準密度(normal density)の累積分布を用いて推定値 ŝn の信頼区間を推定で
きる,

これはすべて,基準分布(base distribution)p(x) から簡単にサンプリングできることに
依存しているが,それはいつも可能であるとは限らない.p からサンプリングできないとき
は,17.2節に示されている重点サンプリングを使用する方法もある.より一般的なアプローチ
は,関心のある分布に向かって収束する連続した推定量を形成することである.それがマル
コフ連鎖モンテカルロ法である (17.3節).

17.2 重点サンプリング
式17.2のモンテカルロ法で使われる被積分関数(もしくは被総和関数)の分解において重要
なのは,被積分関数のどの部分が確率 p(x) の役割を果たすべきか,それから被積分関数のど
の部分が(その確率分布における)期待値を推定される量 f (x) の役割を果たすべきかを決定
することである.p(x)f (x) は,つねに

p(x)f (x)
p(x)f (x) = q(x) (17.8)
q(x)

*1 多くの場合,分散の不偏推定量が好まれる.分散の不偏推定量では,差の二乗和を n ではなく n − 1 で割る.

564
第 17. モンテカルロ法

のように書き換えられるので,分解は一通りではない.この場合,q からサンプリングして,
pf
q の平均をとることになる.多くの場合,p が与えられ,それと f とで期待値を計算するこ
とが望まれる.そして,この問題が最初から期待値として指定されていることから,この p
と f とに分解するのが自然な選択であることが示される.しかし,問題の最初の仕様によっ
ては,所定の水準の精度を得るために必要なサンプル数という点では,最適な選択でないかも
しれない.幸いなことに,最適な選択 q ∗ の形は容易に得られる.この最適な q ∗ は最適重点
サンプリングと呼ばれるものに対応する.

式17.8で示された同一性のために,どのようなモンテカルロ推定量
n
!
1
ŝp = f (x(i) ) (17.9)
n
i=1,x(i) ∼p

も次のような重点サンプリング推定量に変換することができる.
n
!
1 p(x(i) )f (x(i) )
ŝq = . (17.10)
n q(x(i) )
i=1,x(i) ∼q

推定量の期待値が q に依存しないことは容易に分かる.すなわち,

Eq [ŝq ] = Eq [ŝp ] = s. (17.11)

しかし,重点サンプリングの推定量の分散は q の選択にかなり敏感である可能性がある.分
散は
p(x)f (x)
Var[ŝq ] = Var[ ]/n (17.12)
q(x)
で与えられる.最小の分散は,q が

p(x)|f (x)|
q ∗ (x) = (17.13)
Z
のときである.ただし,Z は正規化定数で,q ∗ (x) の総和や積分が 1 になるように適切に選択
される.よりよい重点サンプリング分布は,被積分関数が大きい場所ほど重みを大きくする.
実際,f (x) の符号が変化しないときには Var[ŝq∗ ] = 0 となり,これは,最適な分布が使われ
るときには単一のサンプルで十分であることを意味する.もちろん,これは単に q ∗ の計算が
本来の問題を本質的に解決したためであり,したがって,最適分布から単一サンプルを抽出す
るというこのアプローチは,通常実用的ではない.

どんなサンプリング分布 q の選択も(正しい期待値が得られるという意味で)有効であり,
q ∗ は(小さい分散が得られるという意味で)最適なものである.q ∗ からのサンプリングは通
常不可能だが,それでもある程度分散を減らしつつ,他の q を選択することはできる.
565
第 17. モンテカルロ法

もう一つのアプローチは,正規化した p や q を必要としない利点をもつバイアス重点サン
プリング(biased importance sampling)を使用することである.離散変数の場合,バイ
アス重点サンプリング推定量は
!n p(x(i) ) (i)
i=1 q(x(i) ) f (x )
ŝBIS = !n p(x(i) ) (17.14)
i=1 q(x(i) )
!n p(x(i) ) (i)
i=1 q̃(x(i) ) f (x )
= !n p(x(i) ) (17.15)
i=1 q̃(x(i) )
!n p̃(x(i) ) (i)
i=1 q̃(x(i) ) f (x )
= !n p̃(x(i) ) (17.16)
i=1 q̃(x(i) )

で与えられる.ただし,p̃ と q̃ は p と q の非正規形で,x(i) は q からのサンプルである.こ
の推定量は E[ŝBIS ] ̸= s のため偏る.ただし漸近的に,n → ∞ で式17.14の分母が 1 に収束
する場合を除く.したがって,この推定量は漸近不偏と呼ばれる.

良い q を選択することでモンテカルロ推定の効率は大きく改善するが,悪い q の選択は効
p(x)|f (x)|
率をかなり悪化させる可能性がある.式17.12に戻ると, q(x) を大きくする q のサンプル
がある場合,推定量の分散がかなり大きくなることがわかる.これは,q(x) が小さく,p(x)
も f (x) もそれを埋め合わせるほどには小さくない場合に起こりうる.分布 q は,通常,簡単
にサンプリングできるように単純な分布が選ばれる.x が高次元のとき,q のこの単純さのた
め,p や p|f | はあまり一致しなくなる.q(x(i) ) ≫ p(x(i) )|f (x(i) )| のとき,重点サンプリン
グは(小さな数や 0 を合計する)無駄なサンプルを収集する.一方,これは滅多に発生しない
が,q(x(i) ) ≪ p(x(i) )|f (x(i) )| のとき,比は莫大になる.後者の事象は滅多に起こらないた
め,代表的サンプルに現れず,代表的な s の過小評価をもたらすため,全体の過大評価によっ
て補われることは滅多にない.このような非常に大きい,または非常に小さい数は,x が高次
元のときに典型的である.なぜなら,高次元では同時確率の動的範囲が非常に大きくなる可
能性があるからである.

この危険性にもかかわらず,重点サンプリングとその変形は,深層学習アルゴリズムを含む
多くの機械学習アルゴリズムで非常に有用であることがわかっている.例として,大規模な
語彙があるニューラル言語モデル(12.4.3.3節)や,大規模な数の出力を持つその他のニュー
ラルネットにおいて,訓練を加速させるための重点サンプリングの利用を参照されたい.ま
た,18.7節で分配関数(確率変数の正規化定数)を推定するため,それから20.10.3節で変分
自己符号化器のような深層有向モデルにおける対数尤度を推定するために,重点サンプリン
グがどのように使われるかを参照されたい.重点サンプリングは,確率的勾配降下法でモデ

566
第 17. モンテカルロ法

ルパラメータの学習に使われるコスト関数の勾配の推定を改善するためにも使われる.特に,
コスト関数の合計値のほとんどが,少数の誤分類された事例に由来する分類器のようなモデ
ルの場合に使われる.より頻繁に,より難しい事例をサンプリングすることで,このような場
合における勾配の分散を減らすことができる (Hinton, 2006).

17.3 マルコフ連鎖モンテカルロ法
多くの場合,モンテカルロ法を使用したくても,分布 pmodel (x),もしくは良い(分散が小さ
い)重点サンプリング分布 q(x) から正確にサンプルを抽出する扱いやすい手法はない.深層
学習に関しては,これは pmodel (x) が無向モデルで表現されるときに最も起こりやすい.こう
した場合,pmodel (x) から近似的にサンプリングするために,マルコフ連鎖(Markov chain)
と呼ばれる数学的なツールを導入する.マルコフ連鎖を使用してモンテカルロ推定を行うア
ルゴリズム族は,マルコフ連鎖モンテカルロ法(Markov chain Monte Carlo methods,
MCMC)と呼ばれる.機械学習のためのマルコフ連鎖モンテカルロ法については,Koller
and Friedman (2009) の中でより詳細に述べられている.MCMC 技術を適用するための最
も標準的で一般的な約束事は,モデルがどの状態に対しても確率ゼロを割り当てないことで
ある.したがって,この技術は,16.2.4節で述べたエネルギーベースモデル(energy-based
model,EBM)p(x) ∝ exp (−E(x)) からのサンプリングとして提示するのが最も便利であ
る.EBM の定式化では,どの状態もゼロ以外の確率をもつことが保証されている.MCMC
法は実際にはより広範に適用可能であり,確率ゼロの状態を含む多くの確率分布でも利用す
ることができる.しかし,MCMC 法の振る舞いに関する理論的保証は,そのような異なる分
布族に対して個別に示さなければならない.深層学習においては,すべてのエネルギーベー
スモデルに自然に適用される一般的な理論的保証に依存することが最も多い.

エネルギーベースモデルからサンプルを抽出するのが困難である理由を理解するために,
分布 p(a, b) を定義する 2 つの変数だけを持つ EBM を考えよう.a をサンプリングするには
p(a | b) から抽出しなければならないし,b をサンプリングするには p(b | a) から抽出しな
ければならない.それでは鶏と卵問題のように困難に思われる.有向モデルは,そのグラフ
が有向かつ非巡回なため,こういった問題を回避している.伝承サンプリング(ancestral
sampling)を実行するには,単に各変数をトポロジカルな順序でサンプリングすればよい.
これは,すでにサンプリングされたことが保証されている,各変数の親で条件づけているから
である(16.3節).伝承サンプリングは,サンプルを得るための効率的な単一パス手法を定義
する.

EBM では,マルコフ連鎖を使ってサンプリングすることで,この鶏と卵問題を回避でき
567
第 17. モンテカルロ法

る.マルコフ連鎖の基本的な考えは,任意の値として始まる状態 x を持つということである.
時間が経つと,x は繰り返しランダムに更新される.最終的に,x は p(x) からの正しいサン
プルに(非常に近く)なる.形式的には,マルコフ連鎖は確率状態 x と遷移分布 T (x′ | x) に
よって定義される.遷移分布は,状態 x から始まる場合に,ランダム更新によって状態 x′ に
移る確率を示している.マルコフ連鎖を実行することは,状態 x を,T (x′ | x) からサンプリ
ングした値 x′ に繰り返し更新することを意味する.

MCMC 法がどのように働くかを理論的に理解するには,問題の再パラメータ化が役立つ.
まず,確率変数 x が可算個の状態を持つ場合に注目する.すると,この状態を単なる正の整
数 x として表現できる.x の異なる整数値は,元の問題の異なる状態 x に対応する.

無限に多くのマルコフ連鎖を並列して実行すると,何が起こるか考えよう.異なるマルコ
フ連鎖のすべての状態は,ある分布 q (t) (x) から抽出される,ただし,t は経過した時間ステッ
プ数を示す.開始時の q (0) は,各マルコフ連鎖について x を任意に初期化するために使用さ
れる分布である.その後,q (t) は,これまで実行したマルコフ連鎖のすべてのステップに影響
される.目標は,q (t) (x) が p(x) に収束することである.

問題を正の整数 x に関して再パラメータ化したので,確率分布 q はベクトル v を使って

q(x = i) = vi (17.17)

と記述できる.

単一のマルコフ連鎖の状態 x を新たな状態 x′ に更新すると,何が起こるか考えよう.状態
x′ に到達する単一状態の確率は,次のように与えられる.
!
q (t+1) (x′ ) = q (t) (x)T (x′ | x) (17.18)
x

整数のパラメータ化を使うことで,行列 A を使用して遷移演算子 T の効果を表現でき
る.A を
Ai,j = T (x′ = i | x = j) (17.19)

となるように定義する.この定義を使用して,式17.18を書き換えることができる.単一状態
がどのように更新されるかを理解するために q と T の形で記述するのではなく,ここでは,
更新を適用するときに(並行して実行する)すべての異なるマルコフ連鎖における分布全体が
どのように推移するかを v と A で記述する.すなわち,

v (t) = Av (t−1) . (17.20)

568
第 17. モンテカルロ法

マルコフ連鎖の更新を繰り返し適用することは,行列 A を繰り返し掛けることに対応する.
言い換えると,この処理を行列 A の累乗と考えることができる.すなわち,

v (t) = At v (0) . (17.21)

行列 A は,それぞれの列が確率分布を表現しているため特別な構造を持つ.このような行
列は確率行列(stochastic matrices)と呼ばれる.ある指数 t について,任意の状態 x か
ら他の任意の状態 x′ に遷移する確率がいずれもゼロでないならば,ペロン=フロベニウスの
定理(Perron-Frobenius theorem)(Perron, 1907; Frobenius, 1908) によって最大の固有値
が実数であり,かつ 1 に等しいことが保証される.時間が経過するとともに,以下のように,
すべての固有値がべき乗されることが確認できる.
! "t
v (t) = V diag(λ)V −1 v (0) = V diag(λ)t V −1 v (0) . (17.22)

この過程により,1 に等しくないすべての固有値が 0 に減衰する.いくつかの追加的な緩い条
件下では,A は固有値 1 を持つただ 1 つの固有ベクトルだけを持つことが保証される.した
がって,この過程は定常分布(stationary distribution)に収束する.定常分布は平衡分
布(equilibrium distribution)と呼ばれることもある.収束すると,

v ′ = Av = v (17.23)

となり,そして,この同様の条件はすべての追加ステップで保持される.これは固有ベクトル
方程式である.定常点となるためには,v は対応する固有値 1 を持つ固有ベクトルでなけれ
ばならない.この条件は,一度定常分布に達すると,遷移サンプリング処理を繰り返し適用し
ても,様々なマルコフ連鎖の状態における分布が変更されないことを保証する(もちろん,遷
移演算子によってそれぞれ個々の状態は変更される).

正しく T を選んだ場合,定常分布 q は,サンプリングしたい分布 p と等しくなる.17.4節
で,T の選択方法について説明する.

可算状態をもつマルコフ連鎖のほとんどの特性は連続変数に一般化できる.この状況では
マルコフ連鎖をハリス連鎖(Harris chain)と呼ぶ著者もいるが,本書ではマルコフ連鎖と
いう用語を使って両方の条件を記述する.一般に,遷移演算子 T をもつマルコフ連鎖は,緩
い条件の下で,以下の式で記述される固定点に収束する.

q ′ (x′ ) = Ex∼q T (x′ | x). (17.24)

離散の場合は式17.23を書き換えるだけである.x が離散の場合,期待値は総和に対応し,x
が連続の場合,期待値は積分に対応する.

569
第 17. モンテカルロ法

状態が連続か離散かにかかわらず,すべてのマルコフ連鎖法は,最終的に状態が平衡分布か
らサンプルを生成し始めるまで確率的更新を繰り返し適用することで成り立っている.平衡
分布に達するまでマルコフ連鎖を実行することは,マルコフ連鎖の「バーンイン(burning
in)」と呼ばれる.連鎖が平衡分布に達したあとは,連続する無限に多くのサンプルが平衡分
布から抽出される.それらは同一に分布しているが,任意の連続する 2 つのサンプルは非常に
高い相関関係にある.したがって,有限個の連続するサンプルは,平衡分布をそれほど表して
いるわけではないかもしれない.この問題を軽減する方法の 1 つは,連続する n 個のサンプ
ルごとに 1 つだけを返すことである.これによって,平衡分布の統計量の推定値は,MCMC
サンプルと次のいくつかのサンプルとの間の相関によって偏らない.したがって,マルコフ
連鎖の使用コストが高いのは,平衡分布にバーンインするまでに必要な時間と,平衡に到達し
たのち,あるサンプルから別の相関のない適切なサンプルへの遷移に必要な時間のためであ
る.真に独立したサンプルが望まれる場合,複数のマルコフ連鎖を並行して実行させること
ができる.このアプローチでは,追加した並列計算を利用することで,待ち時間が解消する.
全サンプルを生成するために単一のマルコフ連鎖だけを使う戦略と,望ましいサンプル 1 つ 1
つに対してマルコフ連鎖を 1 つずつ使う戦略は両極にある.深層学習の専門家は,通常ミニ
バッチ内の事例数とほぼ同数の連鎖を使い,この固定されたマルコフ連鎖の集合から必要な
数のサンプルを抽出する.一般に使われるマルコフ連鎖の数は 100 である.

もう 1 つの難しさは,平衡分布に達するまでマルコフ連鎖がどのくらいのステップ数を実
行しなければならないかが,事前にはわからないということである.この時間の長さは混合
時間(mixing time)と呼ばれる.マルコフ連鎖が平衡分布に達したかどうかテストするこ
とも困難である.この質問の答えに導いてくれる正確な理論は存在しない.理論によって連
鎖が収束することはわかるが,それ以上はわからない.マルコフ連鎖を確率ベクトル v に作
用する行列 A の観点から分析すると,At が,唯一の固有値 1 を除くすべての固有値を実質
的に A から失ったときに,連鎖が混合することがわかる.これは,2 番目に大きい固有値の
大きさが混合時間を決定することを意味する.しかし,実際にはマルコフ連鎖を行列の形で
表現できない.確率モデルが遷移できる状態の数は,変数の数に対して指数関数的に大きく
なるので,v ,A,A の固有値を表現することは不可能である.こうした障害や他の障害のた
めに,通常マルコフ連鎖が混合しているかどうかはわからない.代わりに,十分と思われる時
間をおおまかに見積もってマルコフ連鎖を単純に実行し,ヒューリスティックな手法を使っ
て連鎖が混合したかどうかを判断する.このようなヒューリスティックな手法には,手作業
でサンプルを調べたり,連続するサンプル間の相関を測定したりすることが含まれる.

570
第 17. モンテカルロ法

17.4 ギブスサンプリング
ここまでは,x ← x′ ∼ T (x′ | x) を繰り返し更新することで,分布 q(x) からサンプルを
抽出する方法を説明してきた.しかし,q(x) が有用な分布であると保証する方法は説明しな
かった.本書では,2 つの基本的なアプローチを検討する.1 つ目のアプローチは,学習した
pmodel から T を導出することである.この手法については,EBM からサンプリングした場
合を例に,以下で説明する.2 つ目のアプローチは,T を直接パラメータ化して学習すること
で,その定常分布が関心のある pmodel を暗黙的に定義するというものである.2 つ目のアプ
ローチの例は,20.12および20.13節で議論されている.

深層学習においては,一般に,分布 pmodel (x) を定義するエネルギーベースモデルからマ
ルコフ連鎖を使用してサンプルを抽出する.この場合,マルコフ連鎖の q(x) が pmodel (x) に
なってほしい.望ましい q(x) を得るためには,適切な T (x′ | x) を選択する必要がある.

pmodel (x) からサンプリングするマルコフ連鎖を設計するための概念的に単純で効果的なア
プローチは,ギブスサンプリング(Gibbs sampling)を使うことである,ギブスサンプリ
ングでは,T (x′ | x) からのサンプリングは,1 つの変数 xi を選択し,無向グラフ G 内の近傍
によって条件づけられた pmodel からサンプリングすることで達成される.この無向グラフは
エネルギーベースモデルの構造を定義している.また,複数の変数がすべての近傍の下で条
件付き独立であるならば,それらを同時にサンプルすることもできる.16.7.1節の RBM の例
で示したように,RBM のすべての隠れユニットは,すべての可視ユニットの下で互いに条件
付き独立なため同時にサンプリングすることができる.同様に,すべての可視ユニットは,す
べての隠れユニットの下で互いに条件付き独立なため同時にサンプリングすることができる.
このようにして多くの変数を同時に更新するギブスサンプリングのアプローチはブロックギ
ブスサンプリング(block Gibbs sampling)と呼ばれる.

pmodel からサンプリングするためにマルコフ連鎖を設計する別のアプローチも可能である.
たとえば,メトロポリス・ヘイスティングス法(Metropolis-Hastings algorithm)は他の分野
で広く使われている.無向モデリングに対する深層学習のアプローチに関しては,ギブスサ
ンプリング以外のアプローチを利用することはまれである.サンプリング技術の改善は,可
能性のある研究フロンティアの 1 つである.

571
第 17. モンテカルロ法

17.5 分離されたモード間の混合の課題
MCMC 法に伴う主な難しさは,それらが不十分に混合(mix)する傾向にあるということ
である.理想的には,p(x) からサンプリングするように設計されたマルコフ連鎖からの連続
サンプルは,互いに完全に独立であり,その確率に比例して x 空間内の多くの異なる領域に
現れるだろう.しかしそうではなく,特に高次元の場合には,MCMC サンプルは強く相関
するようになる.このような振る舞いを,緩速混合(slow mixing)や,さらには混合の失敗
(failure to mix)と呼ぶ.緩速混合をもつ MCMC 法は,連鎖の状態(サンプリングされた確
率変数)に関して,エネルギー関数に対するノイズあり勾配降下法,あるいは等価な,確率に
対するノイズあり山登り法に類似するものを意図せずに実行しているとみなせる.一般的に,
エネルギー E(x(t) ) がエネルギー E(x(t−1) ) より低いか,またはほぼ等しくなる場合,連鎖
は状態 x(t−1) から状態 x(t) まで(マルコフ連鎖の状態空間で)小さなステップをとる傾向が
ある.これは,連鎖がより低いエネルギー状態をもたらす移動を優先するためである.あま
り起こりそうにない状態(p(x) からの典型的なエネルギーより高いエネルギー)から出発す
ると,連鎖によって状態のエネルギーが徐々に減らされ,たまにしか他のモードに移動しない
傾向がある.連鎖が,モードと呼ばれる低エネルギー領域(例えば,もし変数が画像における
画素ならば,低エネルギー領域は同じ物体の画像の連続した多様体かもしれない)を一旦見
つけると,連鎖はそのモードの周りを(一種のランダムウォークに従って)移動する傾向があ
る.時々そのモードを抜け出して,通常は元に戻るか,あるいは(脱出ルートを見つけた場合
は)他のモードに移動する.問題は,成功する脱出ルートが多くの興味深い分布には稀なの
で,マルコフ連鎖は同じモードを必要以上に長くサンプリングし続けるということである.

この問題は,ギブスサンプリングアルゴリズム (17.4節) を考えると,非常に明確となる.
この状況で,与えられたステップ数以内で,あるモードから近くのモードに移る確率を考え
よう.その確率を決めるのは,これらのモード間の「エネルギー障壁(energy barrier)」の
形状である.高いエネルギー障壁(低い確率の領域)で分離される 2 つのモード間の遷移は
(エネルギー障壁の高さに関して)指数関数的に低い可能性となる.これを図17.1で説明する.
この問題は,低い確率の領域で分離された,高い確率をもつモードが複数あるときに生じ,そ
の中でも特に,各ギブスサンプリングステップが,主にその他の変数によって値が決定される
変数の小さな部分集合だけを更新する必要がある場合に生じる.

単純な例として,2 つの変数 a と b におけるエネルギーベースモデルを考えよう.両変
数は −1 と 1 の二値をとる.もし,ある大きな正の数 w について E(a, b) = −wab なら
ば,そのモデルは a と b が同じ符号をもつという強い信念を表している.a = 1 のギブ

572
第 17. モンテカルロ法

図 17.1: 3 つの分布におけるギブスサンプリングに従う経路.マルコフ連鎖は,両方の場合のモードで
初期化されている.(左)2 つの独立変数をもつ多変量正規分布.変数が独立なので,ギブスサンプリ
ングはうまく混合する.(中央)相関の高い変数をもつ多変量正規分布.変数間の相関は,マルコフ連
鎖の混合を困難にする.各変数の更新は他の変数で条件づけされなければならないので,相関によって,
マルコフ連鎖が出発点から離れられる率は減少する.(右)座標軸に平行でなく大きく離れたモードを
もつ混合ガウス分布.1 度に 1 つの変数だけを変更しながらモードを変更することは困難なので,ギブ
スサンプリングは非常に遅く混合する.

スサンプリングステップを使って b を更新することを考えよう.b における条件付き確率
は P (b = 1 | a = 1) = σ(w) で与えられる.w が大きければシグモイドは飽和し,そし
て b を 1 にする確率も 1 に近づく.同様に,a = −1 ならば,b を −1 にする確率は 1 に
近づく.Pmodel (a, b) に従えば,両方の変数の両方の符号はどれも同程度に起こりやすい.
Pmodel (a | b) に従えば,両方の変数は同じ符号を持つだろう.これは,ギブスサンプリング
によって,これらの変数の符号が反転することは非常に稀であることを意味する.

実際の状況では,2 つのモード間の遷移だけでなく,より一般的に,実際のモデルに含まれ
る多くのモード間について配慮するため,この課題はさらに大きくなる.モード間の混合が
困難なために,いくつかのそのような遷移が困難な場合,ほとんどのモードを覆うような信頼
できるサンプル集合を得るのは非常にコストがかかり,その定常分布への連鎖の収束は非常
に遅くなる.

この問題は,高度に依存するユニット群を見つけて,ブロック内でそれらすべてを同時に更
新することで解決できる場合もある.残念ながら,依存関係が複雑な場合,そのユニット群か
らサンプルを抽出するのは計算的に困難となる.結局のところ,マルコフ連鎖が導入された
元々の解決すべき問題は,大規模な変数群からサンプリングするというこの問題である.

573
第 17. モンテカルロ法

図 17.2: 深層確率モデルにおける緩速混合問題の説明.各パネルは左から右へ,上から下に読む.(左)
MNIST データ集合で訓練した深層ボルツマンマシンに適用された,ギブスサンプリングからの連続サ
ンプル.連続サンプルはお互いに類似している.ギブスサンプリングは深層グラフィカルモデルで実行
されるため,この類似性は生の視覚的特徴ではなく意味的なものに基づいているが,ギブス連鎖が,た
とえば数字を変更するといった,分布のあるモードから別のモードに遷移することは困難である.(右)
敵対的生成ネットワーク(generative adversarial network)からの連続伝承サンプル.伝承サンプリ
ングは他のサンプルから独立して各サンプルを生成するため,混合問題はない.

同時分布 pmodel (x, h) を定義する潜在変数をもつモデルにおいては,pmodel (x | h) からの
サンプリングと pmodel (h | x) からのサンプリングを交互に繰り返すことで x のサンプルを抽
出することが多い.急速に混合するという観点からは,pmodel (h | x) には高いエントロピー
が望まれる.しかし,h の有用な表現を学習するという観点からは,h には,x をうまく再構
成するために x についての十分な情報を符号化することが望まれる.これは,h と x が大き
な相互情報量となるべきであることを示している.これら 2 つの目標は互いに対立している.
しばしば,x を h に正確に符号化するが,あまり上手く混合できないような生成モデルが学
習される.この状況はボルツマンマシンで頻繁に発生する.ボルツマンマシンが学習する分
布がよりはっきりするほど,モデル分布からサンプリングするマルコフ連鎖にとって,うまく
混合することがより困難となる.この問題は図17.2で説明される.

興味のある分布が,クラスごとに別々の多様体があるような多様体構造をもつとき,MCMC
法はあまり役に立たなくなる.すなわち,分布は多くのモードの周りに集中し,これらのモー
ドは高エネルギーの広大な領域によって分離されてしまう.この種の分布は多くの分類問題
で予期されるものであり,モード間の混合が悪いため,MCMC 法は非常に遅く収束すること
になる.

574
第 17. モンテカルロ法

17.5.1 モード間の混合のためのテンパリング

分布が,低い確率の領域に囲まれた高い確率の尖った峰を持つとき,分布の異なるモード間
で混合することは困難となる.高速混合のためのいくつかの技術は,別の種類の目標分布を
構成することに基づいている.そのような分布では,峰がそれほど高くなく,周囲の谷もそ
れほど低くない.エネルギーベースモデルによって,そのための特に簡単な方法が得られる.
ここまでは,エネルギーベースモデルを確率分布

p(x) ∝ exp (−E(x)) (17.25)

で定義して説明してきた.エネルギーベースモデルは,分布がどれほど尖った峰かを制御す
る追加パラメータ β を用いて以下のように拡張できる.

pβ (x) ∝ exp (−βE(x)) (17.26)

この β パラメータは,統計物理学におけるエネルギーベースモデルの起源を反映して,しば
しば温度(temperature)の逆数として記述される.温度がゼロに落ちて,β が無限大に上
昇すると,エネルギーベースモデルは決定論的になる.温度が無限大に上昇して,β が 0 に落
ちると,(離散 x についての)分布は一様になる.

通常,モデルは β = 1 で評価されるように訓練される.しかし,他の温度,特に β < 1 を
使うこともできる.テンパリング(焼き戻し,tempering) はサンプルを β < 1 で抽出す
ることで,p1 のモード間を急速に混合する一般的な戦略である.

焼きなまし遷移(焼き戻し遷移,tempered transitions)(Neal, 1994) に基づくマルコ
フ連鎖は,一時的に高い温度の分布からサンプリングして異なるモードに混合し,その後,単
位温度の分布からサンプリングを再開する.これらの技術は RBM などのモデルに適用され
ている (Salakhutdinov, 2010).もう一つのアプローチは,パラレルテンパリング(並列焼き
戻し,parallel tempering)を使用することである.この手法では,マルコフ連鎖は,さま
ざまな温度のさまざまな状態を並列にシミュレーションする.最も高い温度状態ではゆっく
り混合するが,最も低い温度,すなわち温度 1 ではモデルから正確なサンプルが提供される.
遷移演算子は 2 つの異なる温度レベル間で確率的に入れ替わる状態を含むので,高温スロッ
トからの十分に高い確率のサンプルは,より低い温度スロットに飛び込むことができる.こ
のアプローチは RBM にも適用される (Desjardins et al., 2010; Cho et al., 2010).テンパリ
ングは有望なアプローチであるが,現時点では,研究者は複雑な EBM からのサンプリング
という課題を解決するような強力な前進を遂げていない.考えられる理由の 1 つは,臨界温

575
第 17. モンテカルロ法

度(critical temperatures)が存在して,その付近では,テンパリングを効果的にするた
めに,温度遷移を(温度が徐々に低下するように)非常に遅くしなければならないということ
である.

17.5.2 深さが混合に役立つ可能性

潜在変数モデル p(h, x) からサンプルを抽出するとき,p(h | x) があまりにも良く x を符
号化した場合,p(x | h) からのサンプリングによって x はあまり変化せず,混合が不十分に
なるということを見てきた.この問題を解決する 1 つの方法は h を深い表現にすることであ
る.これは,h の空間におけるマルコフ連鎖をより容易に混合できるように,x を h に符号
化する.自己符号化器や RBM などのような多くの表現学習アルゴリズムは,x における元
のデータ分布に比べて,より一様でより単峰な h における周辺分布をもたらす傾向にある.
これは,すべての利用可能な表現空間を使いながら,再構成誤差を最小化しようとすること
から生じるとも言える.なぜなら,異なる訓練事例が h 空間で互いに容易に区別でき,した
がって十分に分離されるときに,訓練事例における訓練誤差の最小化はより良く達成される
からである.Bengio et al. (2013a) は,より深く重ねた正則化自己符号化器や RBM が,最
上位の h 空間において,異なるモード(実験ではカテゴリ)に対応した領域間の隔たりが少な
い,より広がって一様な周辺分布をもたらすことを観測した.そのようなより高位の空間で
RBM を訓練することで,ギブスサンプリングはモード間でより早く混合できるようになっ
た.しかし,この観測結果を使って深層生成モデルのより良い訓練や,深層生成モデルからの
より良いサンプリングを支援する方法は不明なままである.

混合の困難さにもかかわらず,モンテカルロ技術は便利であり,多くの場合で利用可能な最
良のツールである.実際,これらは次に議論する,無向モデルの困難な分配関数に立ち向かう
ために使われる,最も重要なツールである.

576

Sign up to vote on this title
UsefulNot useful