
統計学および統計物理学において、メトロポリス・ヘイスティングス法は、直接サンプリングが困難な確率分布からランダムサンプルの系列を取得するためのマルコフ連鎖モンテカルロ(MCMC)法です。新しいサンプルは2つのステップで系列に追加されます。まず、前のサンプルに基づいて新しいサンプルが提案され、次に、その時点での確率分布の値に応じて、提案されたサンプルが系列に追加されるか、または拒否されます。得られた系列は、分布を近似する(例えば、ヒストグラムを生成する)ため、または積分を計算する(例えば、期待値を計算する)ために使用できます。
メトロポリス・ヘイスティングス法をはじめとするMCMCアルゴリズムは、一般的に多次元分布からのサンプリング、特に次元数が多い場合に用いられます。一方、一次元分布の場合、分布から直接独立したサンプルを取得できる他の手法(例えば、適応型棄却サンプリング)が通常存在し、これらの手法はMCMC法に内在する自己相関サンプルの問題から解放されます。
このアルゴリズムは、1953 年にArianna W. Rosenbluth、Marshall Rosenbluth、Augusta H. Teller、Edward Tellerと共に「高速計算機による状態方程式の計算」というタイトルの論文の最初の共著者であるNicholas Metropolisにちなんで名付けられました。長年にわたり、このアルゴリズムは単にメトロポリス アルゴリズムとして知られていました。[ 1 ] [ 2 ]この論文では、対称的な提案分布の場合にこのアルゴリズムが提案されましたが、1970 年にWK Hastings がそれをより一般的なケースに拡張しました。[ 3 ]一般化された方法は最終的に両方の名前で識別されるようになりましたが、「メトロポリス-ヘイスティングス アルゴリズム」という用語が最初に使用された時期は不明です。
メトロポリスアルゴリズムの開発の功績については、多少の論争がある。この手法の計算面に精通していたメトロポリスは、スタニスワフ・ウラムとの以前の論文で「モンテカルロ」という用語を作り出し、1952年の実験で使用されたMANIAC Iコンピュータを設計・構築した理論部門のグループを率いていた。しかし、2003年以前には、このアルゴリズムの開発に関する詳細な記述はなかった。マーシャル・ローゼンブルースは、亡くなる直前に、 1953年の論文発表から50周年を記念してロスアラモス国立研究所で開催された2003年の会議に出席した。この会議で、ローゼンブルースは「統計力学のためのモンテカルロアルゴリズムの起源」と題したプレゼンテーションで、このアルゴリズムとその開発について説明した。[ 4 ] 2005年のジャーナル記事[ 5 ]では、グベルナティスが50周年記念会議についてさらに歴史的な説明を行っている。ローゼンブルースは、彼と妻のアリアナが実際に作業を行い、メトロポリス社はコンピューターの使用時間を提供した以外、開発には一切関与していないことを明確に述べている。
これは、エドワード・テラーが回顧録で、1953年の論文の5人の著者が「昼も夜も」一緒に作業したと述べている記述と矛盾する。[ 6 ]対照的に、ローゼンブルースによる詳細な記述では、テラーが「詳細な運動学に従う代わりに、統計力学を利用してアンサンブル平均を取る」という重要かつ初期の提案をしたとされている。ローゼンブルースによれば、これが一般化モンテカルロ法について考えるきっかけとなり、このテーマについてはジョン・フォン・ノイマンとよく話し合ったという。アリアナ・ローゼンブルースは(2003年にグベルナティスに)オーガスタ・テラーがコンピュータ作業を開始したが、アリアナ自身がそれを引き継ぎ、コードを一から書いたと語った。ローゼンブルースは、死の直前に記録された口述歴史の中で[ 7 ]、再びテラーが元の問題を提起し、自分がそれを解決し、アリアナがコンピュータをプログラミングしたと述べている。
メトロポリス・ヘイスティングスアルゴリズムは、確率密度関数を持つ任意の確率分布からサンプルを抽出できます。関数が分かっている場合密度に比例するそしてその価値は計算できる。密度に比例するだけでよく、厳密に等しい必要はないため、メトロポリス・ヘイスティングスアルゴリズムは特に有用です。なぜなら、密度の正規化係数を計算する必要がなくなるからです。これは実際には非常に難しい場合が多いです。
メトロポリス・ヘイスティングスアルゴリズムは、サンプル値を生成する際に、生成されるサンプル値が増えるにつれて、値の分布が目的の分布に近づくように、サンプル値のシーケンスを生成します。これらのサンプル値は反復的に生成され、次のサンプルの分布は現在のサンプル値のみに依存するため、サンプルのシーケンスはマルコフ連鎖となります。具体的には、各反復において、アルゴリズムは現在のサンプル値に基づいて次のサンプル値の候補を提案します。そして、ある確率で、候補が受け入れられる場合、その候補値は次の反復で使用されます。受け入れられない場合、候補値は破棄され、現在の値が次の反復で再利用されます。受け入れの確率は、関数の値を比較することによって決定されます。目的の分布に関して、現在のサンプル値と候補となるサンプル値を比較する。
新しい候補者を提案するために使用される方法は、確率分布によって特徴付けられます。(時々、)新たに提案されたサンプル前のサンプルを考慮するとこれは提案密度、提案関数、またはジャンプ分布と呼ばれます。一般的な選択肢はは、を中心とするガウス分布である。つまり、次に訪問される可能性が高いサンプルは、サンプルのシーケンスをガウスランダムウォークにする。Metropolis らによる元の論文 (1953) では、は、最大距離に制限された一様分布であると示唆された。ハミルトニアンモンテカルロ法、ランジュバンモンテカルロ法、前処理付きクランク・ニコルソン法などの、より複雑な提案関数も可能です。
例として、提案関数が対称であるメトロポリス・ヘイスティングスアルゴリズムの特殊なケースであるメトロポリスアルゴリズムについて以下に説明する。
させて目的の確率密度関数に比例する関数である(別名:目標分布)[ a ]
このアルゴリズムは、サンプル空間内をランダムに移動しようと試み、時には移動を受け入れ、時にはその場にとどまることで進行する。特定の時点では、アルゴリズムがその点に費やした反復回数に比例します。受理率に注意してください。これは、密度が次の分布に従って、新しい提案サンプルが現在のサンプルに対してどの程度可能性が高いかを示します。既存のポイントよりも可能性の高いポイント(つまり、より高密度の領域にあるポイント)に移動しようとすると、に対応する)であれば、常にその移動を受け入れます。しかし、確率の低い地点に移動しようとすると、移動を拒否することがあり、確率の相対的な低下が大きいほど、新しい地点を拒否する可能性が高くなります。したがって、高密度領域にとどまり(そしてそこから多数のサンプルを返す)傾向があります。低密度領域はごくまれにしか訪れません。直感的に言えば、これがこのアルゴリズムが機能し、密度に関して目的の分布に従うサンプルを返す理由です。。
分布から独立したサンプルを直接生成する適応型棄却サンプリング[ 8 ]のようなアルゴリズムと比較すると、メトロポリス・ヘイスティングス法やその他のMCMCアルゴリズムにはいくつかの欠点がある。
一方、ほとんどの単純な棄却サンプリング法は、「次元の呪い」に悩まされます。これは、棄却確率が次元数の増加に伴って指数関数的に増加するという問題です。メトロポリス・ヘイスティングス法をはじめとするMCMC法は、この問題をそれほど深刻に抱えていないため、サンプリング対象となる分布の次元数が多い場合には、しばしば唯一の解決策となります。その結果、MCMC法は、階層ベイズモデルや、現在多くの分野で用いられているその他の高次元統計モデルからサンプルを生成するための最適な手法として広く採用されています。
多変量分布では、上述の古典的なメトロポリス・ヘイスティングスアルゴリズムでは、新しい多次元サンプル点を選択します。次元数が多い場合、異なる個々の次元が非常に異なる振る舞いをするため、使用するのに適したジャンプ分布を見つけるのは困難になることがあります。また、過度に遅い混合を避けるために、ジャンプ幅(上記参照)はすべての次元に対して同時に「ちょうど良い」ものでなければなりません。このような状況でより効果的な代替アプローチとして、ギブスサンプリングと呼ばれる方法があります。これは、すべての次元に対して一度にサンプルを選択するのではなく、各次元に対して他の次元とは別に新しいサンプルを選択するものです。このようにして、潜在的に高次元の空間からサンプリングするという問題は、低次元からサンプリングするという問題の集合に縮小されます。[ 10 ]これは、多変量分布が、各変数が少数の他の変数のみに条件付けられている一連の個々のランダム変数で構成されている場合に特に有効です。これは、ほとんどの典型的な階層モデルの場合に当てはまります。個々の変数は、各変数が他のすべての変数の最新の値に条件付けられる形で、一度に 1 つずつサンプリングされます。多変量分布の正確な形式に応じて、これらの個々のサンプルを選択するためにさまざまなアルゴリズムを使用できます。いくつかの可能性としては、適応的棄却サンプリング法[ 8 ] 、適応的棄却メトロポリスサンプリングアルゴリズム[ 11 ] 、単純な1次元メトロポリス-ヘイスティングスステップ、またはスライスサンプリングなどがあります。
メトロポリス・ヘイスティングスアルゴリズムの目的は、望ましい分布に従って状態の集合を生成することである。これを実現するために、このアルゴリズムはマルコフ過程を使用し、漸近的に一意の定常分布に到達します。そのため[ 12 ]
マルコフ過程は遷移確率によって一意に定義される。任意の状態から遷移する確率他の任意の状態へ独自の定常分布を持つ以下の2つの条件が満たされる場合:[ 12 ]
メトロポリス・ヘイスティングスアルゴリズムは、上記の2つの条件を満たすマルコフ過程(遷移確率を構築することによって)を設計し、その定常分布がに選ばれるアルゴリズムの導出は、詳細平衡の条件から始まる。
これは次のように書き換えられます
このアプローチでは、移行を2つのサブステップ(提案と受諾・拒否)に分けます。提案の配布状態を提案する条件付き確率与えられた、そして受諾分布提案された状態を受け入れる確率遷移確率は、これらの積として表すことができる。
この関係を前の式に代入すると、次のようになる。
導出の次のステップは、上記の条件を満たす受容率を選択することです。よく用いられる選択肢の一つは、メトロポリス選択です。
このメトロポリスの受容率、 どちらかまたはそして、いずれにしても、条件は満たされる。
メトロポリス・ヘイスティングス法は、次のように記述できる。
指定された条件が満たされる場合、保存された状態の経験的分布近づく反復回数(効果的に推定するために必要なもの関係性を含む要因の数に依存します提案分布と推定の望ましい精度。[ 13 ]離散状態空間上の分布の場合、マルコフ過程の自己相関時間のオーダーでなければならない。 [ 14 ]メトロポリス-ヘイスティングスの収束理論の分かりやすい説明は[ 15 ]に示されている。
一般的な問題では、どの分布が適切な推定を行うためには、反復回数または反復回数を使用する必要があります。これらはどちらもこの方法の自由パラメータであり、対象となる問題に合わせて調整する必要があります。
メトロポリス・ヘイスティングスアルゴリズムの一般的な用途は、積分を計算することです。具体的には、空間を考えます。確率分布以上、メトロポリス・ヘイスティングスは、次の形式の積分を推定することができる。
どここれは(測定可能な)関心対象関数である。
例えば、統計を考えてみましょうおよびその確率分布これは周辺分布です。目標は推定することだとします。のためにの後に正式には、次のように書くことができます
そして、推定すると指標関数の期待値を推定することで達成できる。、これは 1 のときそれ以外はゼロ。なぜならの後ろにいる州を引く確率との後にに比例するこれは定義上小さい値です。メトロポリス・ヘイスティングスアルゴリズムは、(まれな)状態をより可能性の高い形でサンプリングし、推定に使用されるサンプル数を増やすために使用できます。裾の部分で。これは、例えば標本分布を用いることで実現できます。これらの州を優遇するため(例:と)

サンプリングされた最新の値がメトロポリス・ヘイスティングスアルゴリズムに従うために、次に新しい提案状態を描画します。確率密度関数そして値を計算する
どこ
は、提案されたサンプル間の確率(例えば、ベイズ事後確率)比です。そして前のサンプル、 そして
は、2 方向の提案密度の比率です (に(逆もまた同様です)。提案密度が対称であれば、これは 1 に等しくなります。すると新しい状態は以下の規則に従って選択されます。
マルコフ連鎖は任意の初期値から開始されるそして、この初期状態が「忘れられる」まで、アルゴリズムは何度も繰り返されます。破棄されるこれらのサンプルはバーンインと呼ばれます。残りの受け入れられる値のセットは分布からのサンプルを表す。
提案密度が目標分布の形状と一致する場合に、このアルゴリズムは最も効果的に機能します。直接サンプリングが難しい、つまりガウス型提案密度の場合分散パラメータが使用されるバーンイン期間中に調整する必要があります。これは通常、受理率を計算することによって行われます。受理率とは、最後の期間のウィンドウ内で提案されたサンプルのうち受理されたサンプルの割合です。サンプル。望ましい受入率は目標分布に依存しますが、理論的には、一次元ガウス分布の理想的な受入率は約 50% であり、次元ガウス目標分布。[ 16 ]これらのガイドラインは、ベルンシュタイン-フォン・ミーゼスの定理を用いて確立できる多変量正規分布に従うことが多い、十分に規則的なベイズ事後分布からサンプリングする場合にうまく機能します。[ 17 ]
もしが小さすぎると、鎖はゆっくりと混ざり合います(つまり、受入率は高くなりますが、連続するサンプルは空間内をゆっくりと移動し、鎖はゆっくりとしか収束しません。) 一方、大きすぎると、提案が確率密度がはるかに低い領域に着地する可能性が高いため、受理率は非常に低くなります。は非常に小さくなり、連鎖の収束も非常に遅くなります。通常、アルゴリズムが全サンプルの約30%を受け入れるように提案分布を調整します。これは、前の段落で述べた理論的な推定値と一致します。
MCMCは、統計モデルの事後分布からサンプルを抽出するために使用できます。受容確率は次のように与えられます。 どこ可能性は、事前確率密度と(条件付き)提案確率。