MHNG を理解する
Author : 森賀 新 他
Journal : 本につき省略
paper URL : https://www.kspub.co.jp/book/detail/5279786.html
preprint URL : 本につき省略
Date : Apr 25, 2026
Summerized by : 進藤稜真
Tags : #ベイズ #ベイズ機械学習 #MCMC #メトロポリスヘイスティングス #MH
MCMCとそのアルゴリズム
MCMCとは
MCMC(マルコフ連鎖モンテカルロ法)とは
複雑な確率分布(事後分布)から直接サンプルを得るのが難しい場合に、事後分布に従う乱数を取得して分布の性質(統計量)を推定する手法の総称。
周辺尤度(事後分布の式における分母)の積分計算が困難な場合でも、正規化されていない分子(事前分布 × 尤度)のみで実行できるのが利点。(= Ryoma SHINTO.icon 解析不可能な部分を回避して、サンプリングによって事後分布を近似する)
マルコフ連鎖 (Markov Chain)
「次の状態が1つ前の状態のみに依存して決まる」性質を持つ確率変数の系列。
遷移確率 : 状態 $ \mathbf{z} から次の状態 $ \mathbf{z}' へ移動する確率。
エルゴード性 : 初期値に関わらず、唯一の定常分布に収束する性質。MCMCはこの性質によって理論的に保証される。
十分なステップを経て収束する先の分布を 定常分布 と呼ぶ。
モンテカルロ法
乱数を用いた数値計算手法の総称。
モンテカルロ積分 : 期待値の積分計算をサンプルの平均値で近似する。
$ I = \int f(z)p(z)dz \approx \frac{1}{M} \sum_{m=1}^{M} f(z_m)
サンプル数 $ M が大きいほど精度が高まる。
MCMCでは、興味のあるパラメータの事後分布(目標分布)が定常分布になるように、うまくマルコフ連鎖の遷移確率を設計し、目標分布からのサンプルを取得する。
詳細釣り合い条件 (Detailed Balance Condition)
マルコフ連鎖が目標分布 $ p^*(\mathbf{z}) に収束するための十分条件。
任意の2点 $ \mathbf{z}, \mathbf{z}' について以下が成り立つとき、この条件を満たす:
$ p^(\mathbf{z})T(\mathbf{z}, \mathbf{z}') = p^(\mathbf{z}')T(\mathbf{z}', \mathbf{z})
===================================
MCMCのアルゴリズム
メトロポリス・ヘイスティングス法 (MH法)
提案分布 から得たサンプルを一定の基準で受理・棄却することで、詳細釣り合い条件を満たしつつ目標分布に従うサンプルを得るアルゴリズム。
手順:
1. 提案分布 $ q(\cdot | \mathbf{z}^{(t)}) から次の候補点 $ \mathbf{z}_* をサンプリングする。
2. 以下の 受理確率 $ R で候補点を受理する(受理されない場合は現在の値を維持)。
$ \overline{R}(\mathbf{z}, \mathbf{z}^*) = \frac{P(\mathbf{z}^*)Q(\mathbf{z} | \mathbf{z}^*)}{P(\mathbf{z})Q(\mathbf{z}^* | \mathbf{z})}
$ R(\mathbf{z}, \mathbf{z}^*) = \min(1, \overline{R}(\mathbf{z}, \mathbf{z}^*))
もっと詳しく
提案分布 (Proposal distribution) とは?
目標とする分布 $ p^(z) から直接サンプルを取ることが難しいため、代わりに「次の候補点 $ \mathbf{z}_* をとりあえず提案する」ために使う、扱いやすい確率分布のこと 。
通常は、現在の点 $ \mathbf{z}^{(t)} の近くを提案するような分布(ガウス分布 など)が用いられる 。
数式では $ q(\mathbf{z}_* | \mathbf{z}^{(t)}) と表記される 。
あくまで「提案」なので、これだけでは目標分布に従ったサンプルにはならない 。
「受理・棄却」で何をしているのか?
提案分布から出された候補 $ \mathbf{z}_* を、目標分布の「濃さ(確率密度)」と比較して、移動するかどうかを判定する。
受理 (Accept): 候補点 $ \mathbf{z}_* が目標分布においてもっともらしい場合、そこへ移動する 。
棄却 (Reject): 候補点があまりに不自然な場所であれば移動をあきらめ、現在の場所 $ \mathbf{z}^{(t)} にとどまる 。
この「選り好み」を特定のルール(メトロポリス・ハスティングス基準)で行うことで、提案分布のズレを修正し、最終的に目標分布に従うサンプルだけが残るように調整している 。
詳細釣り合い条件 を満たすということ
詳細釣り合い条件とは、「点Aから点Bへ行く確率」と「点Bから点Aへ行く確率」が、目標分布の密度 $ p^*(z) に応じて完全に釣り合っている状態を指す 。
提案分布 $ q だけではこの釣り合いは壊れているが、受理確率 $ R を掛け合わせることで、数学的にこの釣り合いを強制的に作り出すことができる。
この条件が満たされているマルコフ連鎖は、最終的に必ず目標分布(定常分布)へと収束することが保証される 。
論文「MH Naming Game」における意味
話し手の発話: 自身の内部状態から名前を出すこと自体が、MH法における「提案」にあたる。
聞き手の受容: 提示された名前が自身のカテゴリ認識と合っているかを確認し、「受理・棄却」を判断する。
結論: このやり取り(ネーミングゲーム)を繰り返すことが、そのまま社会全体の記号体系という目標分布を求める 分散型ベイズ推論 のアルゴリズムになっている。
MCMC/MH法の数学的メカニズム
定常分布と詳細釣り合い
定常分布の条件: $ \sum_z \pi(z) T(z, z') = \pi(z')
詳細釣り合い条件: $ p^(z)T(z, z') = p^(z')T(z', z)
各地点間の移動量が釣り合っていれば、全体の分布(水の溜まり具合)は変化しなくなる。
提案分布のサンプリング
現在の点 $ \mathbf{z}^{(t)} を中心とした分布 $ q(\cdot | \mathbf{z}^{(t)}) から、候補 $ \mathbf{z}_* を生成する。
論文の MH Naming Game では、話し手が名前を出す行為がこれにあたる。
遷移確率の 2 段階プロセス
$ T(z, z') = q(z'|z) r(z, z')
受理確率 $ r を適切に設定することで、提案分布の偏りを補正し、目標分布に従わせる。
========
MH法が有効であることの数学的証明
結論
MH法によって設計された 遷移確率 が 詳細釣り合い条件 を満たすため、そのマルコフ連鎖の 定常分布 は目標分布 $ p^*(z) に一致する。
目標分布:サンプリングしたい真の確率分布
提案分布:次に移動する候補を決めるための仮の分布
1. 詳細釣り合い条件 (Detailed Balance Condition)
マルコフ連鎖が目標分布 $ p^*(z) を定常分布として持つための十分条件は、任意の $ z, z' に対して以下が成り立つことである。
$ p^*(z)T(z, z') = p^*(z')T(z', z)
* $ T(z, z'): 状態 $ z から $ z' への遷移確率。
2. MH法における遷移確率の定義
MH法では、遷移確率 $ T(z, z') を 提案分布 $ q(z'|z) と 受理確率 $ r(z, z') の積として定義する。
$ T(z, z') = q(z'|z) r(z, z') (ただし $ z \neq z' の場合)
ここで、受理確率 $ r(z, z') は以下のように設定される。
$ r(z, z') = \min\left(1, \frac{p^*(z')q(z|z')}{p^*(z)q(z'|z)}\right)
3. 証明:条件を満たすかの検証
$ z = z' の場合は等式が自明に成り立つため、$ z \neq z' かつ $ p^*(z)q(z'|z) > 0 の場合を考える。
左辺 $ p^*(z)T(z, z') を展開する:
$ p^*(z) T(z, z') = p^*(z) q(z'|z) \min\left(1, \frac{p^*(z')q(z|z')}{p^*(z)q(z'|z)}\right)
$ \min の中に $ p^*(z)q(z'|z) を入れると:
$ = \min\left(p^*(z)q(z'|z), p^*(z')q(z|z')\right)
同様に、右辺 $ p^*(z')T(z', z) を展開する:
$ p^*(z') T(z', z) = p^*(z') q(z|z') \min\left(1, \frac{p^*(z)q(z'|z)}{p^*(z')q(z|z')}\right)
$ \min の中に $ p^*(z')q(z|z') を入れると:
$ = \min\left(p^*(z')q(z|z'), p^*(z)q(z'|z)\right)
両辺の結果が一致するため、詳細釣り合い条件が満たされていることが示された。
4. 論文「MH Naming Game」への適用
本論文では、この数学的性質を利用して 記号創発 を定式化している。
定理1: MHネーミングゲームは $ P(w,z,\theta,\phi|o) のメトロポリス・ハスティングスサンプラーである。
話し手が名前を サンプリング して提案し、聞き手が 受理確率 $ r で判定するプロセスそのものが遷移確率 $ T を構築している。
これにより、エージェント間の通信を通じて社会全体の 事後分布 からのサンプリング(分散型ベイズ推論)が実現される。
ギブスサンプリング (Topline): 理論上の比較対象(トップライン)として、中央集中型のギブスサンプラーによる推論も評価されている。
これは両エージェントの内部状態(脳内状態 $ z_d^A, z_d^B)を同時に参照できる「同期したシステム」を想定しているが、現実のコミュニケーションでは不可能(他人の頭は覗けない)なモデルである 。
実験の結果、分散型である MH法 を用いても、この中央集中型のギブスサンプリングに匹敵するレベルでカテゴリ形成と記号共有が可能であることが示された。
MH法 と ネーミングゲーム の対応関係
1. 何をサンプリングしているのか?(状態 $ z)
純粋なMH法: 求めたい分布の変数(地点)$ z 。
ネーミングゲーム: 対象物 $ d に付けられる共有の「名前(記号)」 $ w_d。
つまり、エージェントたちが対話を通じて更新し続けている「状態」は、単語そのものです。
2. 誰が提案するのか?(提案分布 $ q)
純粋なMH法: 現在の点 $ z の近傍をランダムに探る数式。
ネーミングゲーム: 話し手 (Speaker) の発話。
話し手が自分の知識(内部表現 $ z_d^{Sp} やパラメータ $ \phi^{Sp})に基づいて「この物体は『$ w_d^{Sp}』じゃない?」と言うことが、MH法の 提案分布 として機能します。
3. 誰が受理を判定するのか?(受理確率 $ r)
純粋なMH法: 目標分布の比を使って、移動の是非を決める。
ネーミングゲーム: 聞き手 (Listener) の納得度。
聞き手は相手から提案された単語 $ w_d^{Sp} と、自分が今暫定的に使っている単語 $ w_d^{Li} を比較します。
4. 同じガウス分布を使うのか?
ここが重要なポイントですが、「モデルの形」は同じですが「中身(パラメータ)」は個々で持っています。
エージェントAとBは、それぞれ自分の脳内に GMM(ガウス混合モデル)を持っています。
聞き手 は、自分自身のガウス分布(自分の知識) を物差しにして、相手の提案を評価します。
「自分の知識で『$ w_d^{Sp}』と言われた時、今の物体 $ z_d^{Li} はどれくらいそれっぽく見えるか?」
「自分の知識で今までの『$ w_d^{Li}』と言った時と比べて、どっちがしっくりくるか?」
このように、聞き手はあくまで 自分の calc_likelihood(自分の物差し) を使って、新旧2つの単語を天秤にかけているのです。
=====
提案分布 の直感的な理解
$ q(z'|z) は「点」か「分布」か?
結論から言うと、$ q(z'|z) 自体は「分布(ルール)」であり、そこから取り出された $ z' が「点(候補)」です。
$ q(z'|z) (関数/ルール): 「今の場所 $ z の周りを、どれくらいの広がり(ガウス分布 など)で探索するか」という方針そのものを指します。
$ z' (サンプル/点): そのルールに基づいて、実際にサイコロを振って決まった「具体的な移動先の候補地」です。
遷移確率の数式における意味: 数式 $ T(z, z') = q(z'|z) r(z, z') において、$ q(z'|z) は「地点 $ z から $ z' が提案される確率密度」という数値を表しています。
受理確率 の直感的な理解
受理確率 $ r(z, z') は何を表現しているのか?
一言で言えば、**「移動先の『質』のチェック(フィルタリング)」**を表現しています。
イメージ図:
質の比較: 候補点 $ z' のもっともらしさ(事後分布 の高さ)を、現在の点 $ z と比較します。
1. 今より「良い」場所なら (確率が高い):
受理確率は $ 1 になり、100%の確率で移動します。
より正解(山の頂上)に近い方へ、積極的に進むイメージです。
2. 今より「悪い」場所なら (確率が低い):
受理確率は $ 0 から $ 1 の間の値(確率の比)になります。
「少し悪い程度なら、たまには行ってみよう」「すごく悪い場所なら、まず行かない」という慎重な探索を表現しています。
なぜ「悪い場所」にもわざわざ行くのか?
常に良い方(山の上)へ行くだけだと、局所解(小さな丘の頂上)に閉じ込められてしまうからです。
たまに「下り坂」を進む(悪い場所を受理する)ことで、谷を越えて別の大きな山を見つけることができます。
この「受理・棄却」のさじ加減が絶妙に設計されているため、最終的にサンプルは目標分布の「山の形」に正しく集まります。
論文「MH Naming Game」における受理の意味
提案(発話): 話し手が、自分の頭の中にあるガウス分布から一つの単語 $ w を選んで発信します。
受理(同意): 聞き手は、その単語を聞いて「自分のカテゴリ認識とどれくらい一致するか」を計算し、確率 $ r でその名前を自分の知識として受け入れます。
社会的な意味: この「相手の言葉を、自分の信念に照らして吟味する(受理・棄却)」というステップこそが、社会全体で一つの 記号体系 へと収束させるためのエンジンになっています。
=========
MH法における ハイパーパラメータ
提案分布 におけるハイパーパラメータ
最も一般的な ランダムウォークMH法 では、現在の地点 $ \mathbf{z}^{(t)} にノイズ(攪乱項)を加えたものを候補点 $ \mathbf{z}_* とします。
このとき、ノイズ $ \epsilon が従う分布の広がりを制御する値がハイパーパラメータです。
数式による表現:
$ \mathbf{z}_* = \mathbf{z}^{(t)} + \epsilon
$ \epsilon \sim \mathcal{N}(0, \sigma^2 \mathbf{I})
$ \sigma (標準偏差/ステップサイズ): これが主要なハイパーパラメータです。
意味: 探索の「歩幅」を決定します。
$ \sigma が大きい:遠くまで一気に探すが、受理確率 が低くなりやすく、現在の場所に留まり続けるリスクがあります。
$ \sigma が小さい:着実に受理されるが、分布全体を探索するのに膨大な時間がかかります。
論文「inter-GMM+VAE」における設定
本論文の実験(MNIST や Fruits 360)では、MH法および生成モデル全体に対して以下のハイパーパラメータが設定されています 。
MH法に関連するパラメータ:
$ T = 100: MHネーミングゲームの反復回数 。
$ K = 10: 記号(カテゴリ)の総数 。
GMM (生成モデル) のハイパーパラメータ:
$ \alpha = 1.0: 正規-ウィシャート分布のパラメータ 。
$ m = 0: 平均の事前分布 。
$ \beta = 0.05\mathbf{I}: 精度行列のスケール 。
$ \nu = 12: 自由度 。
VAE の学習設定:
学習率: $ 0.001 (Optimizer: Adam) 。
潜在変数の次元: $ 12 。
ハイパーパラメータがアルゴリズムに与える影響
詳細釣り合い条件 を満たしている限り、どんな $ \sigma を選んでも最終的には正しい分布に収束します。
しかし、実用上は「いかに早く収束させるか」が重要であるため、受理確率 が適切(一般的に 0.23〜0.44 程度)になるように $ \sigma を調整することが不可欠です。