ベイズ推論と機械学習で使用される数学的手法
変分ベイズ法は、 ベイズ推論 と 機械学習 で生じる扱いにくい 積分を 近似する手法のグループです 。これらは通常、 観測変数 (通常「データ」と呼ばれる) と未知の パラメータ および 潜在変数で構成される複雑な 統計モデルで使用され、3 種類の ランダム変数 間のさまざまな関係は グラフィカル モデル で説明できます 。ベイズ推論でよくあるように、パラメータと潜在変数は「観測されない変数」としてグループ化されます。変分ベイズ法は主に次の 2 つの目的で使用されます。
観測されない変数の事後確率 に対する解析的近似値を提供し、これらの変数に対して 統計的推論 を行う 。
観測データの 周辺尤度 ( 証拠 と呼ばれることもある)の 下限を 導出する(つまり 、観測されていない変数に対して周辺化を行ったモデルにおけるデータの 周辺確率)。これは通常、 モデル選択 を実行するために使用され、一般的な考え方としては、特定のモデルの周辺尤度が高いほど、そのモデルによるデータの適合度が高く、したがって、問題のモデルがデータを生成した確率が高いことを示している。( ベイズ係数の 記事も参照。)
前者の目的(事後確率を近似すること)では、変分ベイズは、直接評価したりサンプリングしたりすることが難しい複雑な分布に対する統計的推論に完全なベイズ的アプローチをとるための モンテカルロサンプリング法(特にギブスサンプリング など の マルコフ 連鎖 モンテカルロ 法 ) の 代替 手段 です。特に、モンテカルロ手法はサンプルのセットを使用して正確な事後確率の数値近似値を提供しますが、変分ベイズは事後確率の近似値に対する局所最適で正確な解析的ソリューションを提供します。
変分ベイズは、 各パラメータの単一の最も可能性の高い値の 最大 尤度(ML) または 最大事後確率 (MAP) 推定から、パラメータと 潜在変数の 事後分布 全体 (の近似値) を計算する完全なベイズ推定までの、期待値最大化(EM) アルゴリズムの拡張と見ることができます。EM と同様に、最適なパラメータ値のセットを見つけ、解析的に解くことができない一連の連動した (相互に依存する) 方程式に基づいて、EM と同じ交互構造を持ちます。
多くのアプリケーションでは、変分ベイズはギブス サンプリングと同等の精度のソリューションをより高速に生成します。ただし、パラメータを繰り返し更新するために使用される方程式のセットを導出するには、同等のギブス サンプリング方程式を導出する場合に比べて、多くの場合、膨大な作業量が必要になります。これは、概念的に非常に単純な多くのモデルにも当てはまります。以下では、パラメータが 2 つだけで潜在変数がない基本的な非階層モデルの例で示します。
数学的導出
問題
変分 推論では、 あるデータが与えられた場合の 観測されない変数の集合の事後分布は、 いわゆる 変分分布 によって近似される。
Z
=
{
Z
1
…
Z
n
}
{\displaystyle \mathbf {Z} =\{Z_{1}\dots Z_{n}\}}
X
{\displaystyle \mathbf {X} }
Q
(
Z
)
:
{\displaystyle Q(\mathbf {Z} ):}
P
(
Z
∣
X
)
≈
Q
(
Z
)
.
{\displaystyle P(\mathbf {Z} \mid \mathbf {X} )\approx Q(\mathbf {Z} ).}
分布は 、真の事後分布に類似する ように意図されて選択された、 より単純な形式の分布の族(例えば、ガウス分布の族)に属するように制限されます 。
Q
(
Z
)
{\displaystyle Q(\mathbf {Z} )}
P
(
Z
∣
X
)
{\displaystyle P(\mathbf {Z} \mid \mathbf {X} )}
Q
(
Z
)
{\displaystyle Q(\mathbf {Z} )}
P
(
Z
∣
X
)
{\displaystyle P(\mathbf {Z} \mid \mathbf {X} )}
類似度(または非類似度)は非類似度関数によって測定されるため、推論は を最小化する 分布を選択することによって実行されます 。
d
(
Q
;
P
)
{\displaystyle d(Q;P)}
Q
(
Z
)
{\displaystyle Q(\mathbf {Z} )}
d
(
Q
;
P
)
{\displaystyle d(Q;P)}
KLダイバージェンス
最も一般的な変分ベイズ法では、 Q と Pの カルバック・ライブラー距離 (KL距離)を 非類似度関数として選択する。この選択により、この最小化が扱いやすくなる。KL距離は次のように定義される。
D
K
L
(
Q
∥
P
)
≜
∑
Z
Q
(
Z
)
log
Q
(
Z
)
P
(
Z
∣
X
)
.
{\displaystyle D_{\mathrm {KL} }(Q\parallel P)\triangleq \sum _{\mathbf {Z} }Q(\mathbf {Z} )\log {\frac {Q(\mathbf {Z} )}{P(\mathbf {Z} \mid \mathbf {X} )}}.}
Q と P が 予想とは逆になっていること に注意してください。この逆 KL ダイバージェンスの使用は、概念的には 期待値最大化アルゴリズム に似ています。(KL ダイバージェンスを逆方向に使用すると、 期待値伝播 アルゴリズムが生成されます。)
扱いにくさ
変分法は、通常、以下の近似値を求めるために使用されます。
P
(
Z
∣
X
)
=
P
(
X
∣
Z
)
P
(
Z
)
P
(
X
)
=
P
(
X
∣
Z
)
P
(
Z
)
∫
Z
P
(
X
,
Z
′
)
d
Z
′
{\displaystyle P(\mathbf {Z} \mid \mathbf {X} )={\frac {P(\mathbf {X} \mid \mathbf {Z} )P(\mathbf {Z} )}{P(\mathbf {X} )}}={\frac {P(\mathbf {X} \mid \mathbf {Z} )P(\mathbf {Z} )}{\int _{\mathbf {Z} }P(\mathbf {X} ,\mathbf {Z} ')\,d\mathbf {Z} '}}}
分母でを計算するための 上の周辺化は 、通常、扱いにくいものです。これは、たとえば の探索空間が 組み合わせ的に大きいためです。したがって、 を使用して近似値を求めます 。
Z
{\displaystyle \mathbf {Z} }
P
(
X
)
{\displaystyle P(\mathbf {X} )}
Z
{\displaystyle \mathbf {Z} }
Q
(
Z
)
≈
P
(
Z
∣
X
)
{\displaystyle Q(\mathbf {Z} )\approx P(\mathbf {Z} \mid \mathbf {X} )}
証拠の下限
とすると 、上記のKLダイバージェンスは次のようにも書ける。
P
(
Z
∣
X
)
=
P
(
X
,
Z
)
P
(
X
)
{\displaystyle P(\mathbf {Z} \mid \mathbf {X} )={\frac {P(\mathbf {X} ,\mathbf {Z} )}{P(\mathbf {X} )}}}
D
K
L
(
Q
∥
P
)
=
∑
Z
Q
(
Z
)
[
log
Q
(
Z
)
P
(
Z
,
X
)
+
log
P
(
X
)
]
=
∑
Z
Q
(
Z
)
[
log
Q
(
Z
)
−
log
P
(
Z
,
X
)
]
+
∑
Z
Q
(
Z
)
[
log
P
(
X
)
]
{\displaystyle {\begin{array}{rl}D_{\mathrm {KL} }(Q\parallel P)&=\sum _{\mathbf {Z} }Q(\mathbf {Z} )\left[\log {\frac {Q(\mathbf {Z} )}{P(\mathbf {Z} ,\mathbf {X} )}}+\log P(\mathbf {X} )\right]\\&=\sum _{\mathbf {Z} }Q(\mathbf {Z} )\left[\log Q(\mathbf {Z} )-\log P(\mathbf {Z} ,\mathbf {X} )\right]+\sum _{\mathbf {Z} }Q(\mathbf {Z} )\left[\log P(\mathbf {X} )\right]\end{array}}}
は定数であり 、 は 分布な
ので、
P
(
X
)
{\displaystyle P(\mathbf {X} )}
Z
{\displaystyle \mathbf {Z} }
∑
Z
Q
(
Z
)
=
1
{\displaystyle \sum _{\mathbf {Z} }Q(\mathbf {Z} )=1}
Q
(
Z
)
{\displaystyle Q(\mathbf {Z} )}
D
K
L
(
Q
∥
P
)
=
∑
Z
Q
(
Z
)
[
log
Q
(
Z
)
−
log
P
(
Z
,
X
)
]
+
log
P
(
X
)
{\displaystyle D_{\mathrm {KL} }(Q\parallel P)=\sum _{\mathbf {Z} }Q(\mathbf {Z} )\left[\log Q(\mathbf {Z} )-\log P(\mathbf {Z} ,\mathbf {X} )\right]+\log P(\mathbf {X} )}
これは、期待値 の定義 (離散 確率変数 の場合)によれば、次のように書ける。
D
K
L
(
Q
∥
P
)
=
E
Q
[
log
Q
(
Z
)
−
log
P
(
Z
,
X
)
]
+
log
P
(
X
)
{\displaystyle D_{\mathrm {KL} }(Q\parallel P)=\mathbb {E} _{\mathbf {Q} }\left[\log Q(\mathbf {Z} )-\log P(\mathbf {Z} ,\mathbf {X} )\right]+\log P(\mathbf {X} )}
これを並べ替えると
log
P
(
X
)
=
D
K
L
(
Q
∥
P
)
−
E
Q
[
log
Q
(
Z
)
−
log
P
(
Z
,
X
)
]
=
D
K
L
(
Q
∥
P
)
+
L
(
Q
)
{\displaystyle {\begin{array}{rl}\log P(\mathbf {X} )&=D_{\mathrm {KL} }(Q\parallel P)-\mathbb {E} _{\mathbf {Q} }\left[\log Q(\mathbf {Z} )-\log P(\mathbf {Z} ,\mathbf {X} )\right]\\&=D_{\mathrm {KL} }(Q\parallel P)+{\mathcal {L}}(Q)\end{array}}}
対数 エビデンスは に関して固定されている ため 、最終項を最大化する と から の KL ダイバージェンスが最小化されます 。 を適切に選択することで 、を計算し、 を最大化することが扱いやすくなります。したがって、 事後 の 解析的近似と、 対数エビデンスの 下限値 (KL ダイバージェンスは非負であるため) の両方が得られます。
log
P
(
X
)
{\displaystyle \log P(\mathbf {X} )}
Q
{\displaystyle Q}
L
(
Q
)
{\displaystyle {\mathcal {L}}(Q)}
Q
{\displaystyle Q}
P
{\displaystyle P}
Q
{\displaystyle Q}
L
(
Q
)
{\displaystyle {\mathcal {L}}(Q)}
Q
{\displaystyle Q}
P
(
Z
∣
X
)
{\displaystyle P(\mathbf {Z} \mid \mathbf {X} )}
L
(
Q
)
{\displaystyle {\mathcal {L}}(Q)}
log
P
(
X
)
{\displaystyle \log P(\mathbf {X} )}
下限は 、負のエネルギー に エントロピーを 加えたもの として表現することもできるため、 熱力学的自由エネルギー と同様に(負の) 変分自由エネルギー と呼ばれます 。この用語は、データの対数証拠の下限(最悪のケース)境界であることを強調するために、 証拠下限 (ELBO) とも呼ばれ ます。
L
(
Q
)
{\displaystyle {\mathcal {L}}(Q)}
E
Q
[
log
P
(
Z
,
X
)
]
{\displaystyle \operatorname {E} _{Q}[\log P(\mathbf {Z} ,\mathbf {X} )]}
Q
{\displaystyle Q}
L
(
Q
)
{\displaystyle {\mathcal {L}}(Q)}
証明
ブレグマンダイバージェンス の一般化されたピタゴラスの定理 (KLダイバージェンスはその特別なケースである)により、次のことが示される: [1] [2]
ブレグマンダイバージェンス に対する一般化されたピタゴラスの定理 [2]
D
K
L
(
Q
∥
P
)
≥
D
K
L
(
Q
∥
Q
∗
)
+
D
K
L
(
Q
∗
∥
P
)
,
∀
Q
∗
∈
C
{\displaystyle D_{\mathrm {KL} }(Q\parallel P)\geq D_{\mathrm {KL} }(Q\parallel Q^{*})+D_{\mathrm {KL} }(Q^{*}\parallel P),\forall Q^{*}\in {\mathcal {C}}}
ここで は 凸集合であり、次の条件を満たす場合等式が成立します。
C
{\displaystyle {\mathcal {C}}}
Q
=
Q
∗
≜
arg
min
Q
∈
C
D
K
L
(
Q
∥
P
)
.
{\displaystyle Q=Q^{*}\triangleq \arg \min _{Q\in {\mathcal {C}}}D_{\mathrm {KL} }(Q\parallel P).}
この場合、グローバル最小値 は 次のように求められる。 [1]
Q
∗
(
Z
)
=
q
∗
(
Z
1
∣
Z
2
)
q
∗
(
Z
2
)
=
q
∗
(
Z
2
∣
Z
1
)
q
∗
(
Z
1
)
,
{\displaystyle Q^{*}(\mathbf {Z} )=q^{*}(\mathbf {Z} _{1}\mid \mathbf {Z} _{2})q^{*}(\mathbf {Z} _{2})=q^{*}(\mathbf {Z} _{2}\mid \mathbf {Z} _{1})q^{*}(\mathbf {Z} _{1}),}
Z
=
{
Z
1
,
Z
2
}
,
{\displaystyle \mathbf {Z} =\{\mathbf {Z_{1}} ,\mathbf {Z_{2}} \},}
q
∗
(
Z
2
)
=
P
(
X
)
ζ
(
X
)
P
(
Z
2
∣
X
)
exp
(
D
K
L
(
q
∗
(
Z
1
∣
Z
2
)
∥
P
(
Z
1
∣
Z
2
,
X
)
)
)
=
1
ζ
(
X
)
exp
E
q
∗
(
Z
1
∣
Z
2
)
(
log
P
(
Z
,
X
)
q
∗
(
Z
1
∣
Z
2
)
)
,
{\displaystyle {\begin{array}{rl}q^{*}(\mathbf {Z} _{2})&={\frac {P(\mathbf {X} )}{\zeta (\mathbf {X} )}}{\frac {P(\mathbf {Z} _{2}\mid \mathbf {X} )}{\exp(D_{\mathrm {KL} }(q^{*}(\mathbf {Z} _{1}\mid \mathbf {Z} _{2})\parallel P(\mathbf {Z} _{1}\mid \mathbf {Z} _{2},\mathbf {X} )))}}\\&={\frac {1}{\zeta (\mathbf {X} )}}\exp \mathbb {E} _{q^{*}(\mathbf {Z} _{1}\mid \mathbf {Z} _{2})}\left(\log {\frac {P(\mathbf {Z} ,\mathbf {X} )}{q^{*}(\mathbf {Z} _{1}\mid \mathbf {Z} _{2})}}\right),\end{array}}}
ここで正規化定数は次のようになります。
ζ
(
X
)
=
P
(
X
)
∫
Z
2
P
(
Z
2
∣
X
)
exp
(
D
K
L
(
q
∗
(
Z
1
∣
Z
2
)
∥
P
(
Z
1
∣
Z
2
,
X
)
)
)
=
∫
Z
2
exp
E
q
∗
(
Z
1
∣
Z
2
)
(
log
P
(
Z
,
X
)
q
∗
(
Z
1
∣
Z
2
)
)
.
{\displaystyle {\begin{array}{rl}\zeta (\mathbf {X} )&=P(\mathbf {X} )\int _{\mathbf {Z} _{2}}{\frac {P(\mathbf {Z} _{2}\mid \mathbf {X} )}{\exp(D_{\mathrm {KL} }(q^{*}(\mathbf {Z} _{1}\mid \mathbf {Z} _{2})\parallel P(\mathbf {Z} _{1}\mid \mathbf {Z} _{2},\mathbf {X} )))}}\\&=\int _{\mathbf {Z} _{2}}\exp \mathbb {E} _{q^{*}(\mathbf {Z} _{1}\mid \mathbf {Z} _{2})}\left(\log {\frac {P(\mathbf {Z} ,\mathbf {X} )}{q^{*}(\mathbf {Z} _{1}\mid \mathbf {Z} _{2})}}\right).\end{array}}}
この用語は 実際には 証拠 下限値( ELBO )と呼ばれることが多い 。 [1] 上記の通りである。
ζ
(
X
)
{\displaystyle \zeta (\mathbf {X} )}
P
(
X
)
≥
ζ
(
X
)
=
exp
(
L
(
Q
∗
)
)
{\displaystyle P(\mathbf {X} )\geq \zeta (\mathbf {X} )=\exp({\mathcal {L}}(Q^{*}))}
と の役割を入れ替えることで、 真のモデルの周辺と の近似値 と をそれぞれ 反復的に計算することができます 。この反復スキームは単調に収束することが保証されていますが、 [1] 収束値 は の局所的最小値にすぎません 。
Z
1
{\displaystyle \mathbf {Z} _{1}}
Z
2
,
{\displaystyle \mathbf {Z} _{2},}
q
∗
(
Z
1
)
{\displaystyle q^{*}(\mathbf {Z} _{1})}
q
∗
(
Z
2
)
{\displaystyle q^{*}(\mathbf {Z} _{2})}
P
(
Z
1
∣
X
)
{\displaystyle P(\mathbf {Z} _{1}\mid \mathbf {X} )}
P
(
Z
2
∣
X
)
,
{\displaystyle P(\mathbf {Z} _{2}\mid \mathbf {X} ),}
Q
∗
{\displaystyle Q^{*}}
D
K
L
(
Q
∥
P
)
{\displaystyle D_{\mathrm {KL} }(Q\parallel P)}
制約空間 が独立空間内に限定されている場合、つまり 上記の反復スキームは以下に示すようにいわゆる平均場近似になります 。
C
{\displaystyle {\mathcal {C}}}
q
∗
(
Z
1
∣
Z
2
)
=
q
∗
(
Z
1
)
,
{\displaystyle q^{*}(\mathbf {Z} _{1}\mid \mathbf {Z} _{2})=q^{*}(\mathbf {Z_{1}} ),}
Q
∗
(
Z
)
=
q
∗
(
Z
1
)
q
∗
(
Z
2
)
,
{\displaystyle Q^{*}(\mathbf {Z} )=q^{*}(\mathbf {Z} _{1})q^{*}(\mathbf {Z} _{2}),}
平均場近似
変分分布は 通常、 潜在変数の何らかの 分割 、すなわち潜在変数の何らかの分割に対して因数分解されると仮定される 。
Q
(
Z
)
{\displaystyle Q(\mathbf {Z} )}
Z
{\displaystyle \mathbf {Z} }
Z
1
…
Z
M
{\displaystyle \mathbf {Z} _{1}\dots \mathbf {Z} _{M}}
Q
(
Z
)
=
∏
i
=
1
M
q
i
(
Z
i
∣
X
)
{\displaystyle Q(\mathbf {Z} )=\prod _{i=1}^{M}q_{i}(\mathbf {Z} _{i}\mid \mathbf {X} )}
変分法 (「変分ベイズ」という名前が由来)を用いると、各因子の 「最良」分布(上記のようにKLダイバージェンスを最小化する分布の観点から)は次式を満たす ことが示される : [3]
q
j
∗
{\displaystyle q_{j}^{*}}
q
j
{\displaystyle q_{j}}
q
j
∗
(
Z
j
∣
X
)
=
e
E
q
−
j
∗
[
ln
p
(
Z
,
X
)
]
∫
e
E
q
−
j
∗
[
ln
p
(
Z
,
X
)
]
d
Z
j
{\displaystyle q_{j}^{*}(\mathbf {Z} _{j}\mid \mathbf {X} )={\frac {e^{\operatorname {E} _{q_{-j}^{*}}[\ln p(\mathbf {Z} ,\mathbf {X} )]}}{\int e^{\operatorname {E} _{q_{-j}^{*}}[\ln p(\mathbf {Z} ,\mathbf {X} )]}\,d\mathbf {Z} _{j}}}}
ここで、は、 分割に含まれないすべての変数 についてとった、データと潜在変数の 結合確率 の対数の 期待値 です。 分布の導出については、 [4] の補題4.1を参照してください。
E
q
−
j
∗
[
ln
p
(
Z
,
X
)
]
{\displaystyle \operatorname {E} _{q_{-j}^{*}}[\ln p(\mathbf {Z} ,\mathbf {X} )]}
q
∗
{\displaystyle q^{*}}
q
j
∗
(
Z
j
∣
X
)
{\displaystyle q_{j}^{*}(\mathbf {Z} _{j}\mid \mathbf {X} )}
実際には、通常は対数で作業します。つまり、
ln
q
j
∗
(
Z
j
∣
X
)
=
E
q
−
j
∗
[
ln
p
(
Z
,
X
)
]
+
constant
{\displaystyle \ln q_{j}^{*}(\mathbf {Z} _{j}\mid \mathbf {X} )=\operatorname {E} _{q_{-j}^{*}}[\ln p(\mathbf {Z} ,\mathbf {X} )]+{\text{constant}}}
上記の式の定数は、 正規化定数 (上記の式の の分母 )に関連しており、式の残りの部分は通常、既知の分布の種類( ガウス 、 ガンマ など)として認識できるため、通常は検査によって復元されます。
q
j
∗
{\displaystyle q_{j}^{*}}
期待値の特性を利用すると、式は通常 、潜在変数の 事前分布 の 固定 ハイパーパラメータ と、現在のパーティションにない潜在変数(つまり、 に含まれない潜在変数)の期待値(および場合によっては 分散 などの高次 モーメント )の関数に簡略化できます。これにより、 1 つのパーティションの変数の分布のパラメータと他のパーティションの変数の期待値の間に 循環依存関係が 作成されます。これは当然、EM( 期待値最大化アルゴリズム)によく似た 反復 アルゴリズムを示唆します。この反復アルゴリズムでは、潜在変数の期待値(および場合によっては高次モーメント)が何らかの方法(おそらくランダム)で初期化され、次に各分布のパラメータが期待値の現在の値を使用して順番に計算され、その後、新しく計算された分布の期待値が計算されたパラメータに従って適切に設定されます。この種のアルゴリズムは に 収束する ことが保証されています。 [5]
E
q
−
j
∗
[
ln
p
(
Z
,
X
)
]
{\displaystyle \operatorname {E} _{q_{-j}^{*}}[\ln p(\mathbf {Z} ,\mathbf {X} )]}
Z
j
{\displaystyle \mathbf {Z} _{j}}
言い換えれば、変数の各パーティションについて、パーティションの変数に対する分布の式を簡略化し、問題の変数に対する分布の機能的依存性を調べることによって、分布の族を通常は決定できます (これにより、定数の値が決まります)。分布のパラメータの式は、事前分布のハイパーパラメータ (既知の定数) で表現されるだけでなく、他のパーティションの変数の関数の期待値でも表現されます。通常、これらの期待値は、変数自体の期待値 (つまり、平均 ) の関数に簡略化できます。場合によっては、変数の 二乗の期待値 (変数の 分散 に関連します ) や、より高いべき乗の期待値 (つまり、より高い モーメント ) も表示されます。ほとんどの場合、他の変数の分布は既知の族からのものであり、関連する期待値の式を調べることができます。ただし、これらの式は分布のパラメータに依存し、パラメータは他の変数に関する期待値に依存します。その結果、各変数の分布のパラメータの式は、変数間の相互 非線形 依存関係を持つ一連の方程式として表現できます。通常、この方程式系を直接解くことはできません。ただし、前述のように、依存関係は単純な反復アルゴリズムを示唆しており、ほとんどの場合、収束することが保証されています。例を挙げて、このプロセスをより明確にします。
双対公式による座標上昇変分推論アルゴリズムの図解 [4]
次の定理は変分推論の双対性公式と呼ばれています。 [4] これは変分ベイズ法で使用される変分分布のいくつかの重要な特性を説明しています。
定理 と の2 つの 確率空間 を考える。 と と なる共通の支配 確率測度 があると仮定する 。 を満たす任意 の 実数値 ランダム変数 を と表記する。すると、次の等式が成立する。
(
Θ
,
F
,
P
)
{\displaystyle (\Theta ,{\mathcal {F}},P)}
(
Θ
,
F
,
Q
)
{\displaystyle (\Theta ,{\mathcal {F}},Q)}
Q
≪
P
{\displaystyle Q\ll P}
λ
{\displaystyle \lambda }
P
≪
λ
{\displaystyle P\ll \lambda }
Q
≪
λ
{\displaystyle Q\ll \lambda }
h
{\displaystyle h}
(
Θ
,
F
,
P
)
{\displaystyle (\Theta ,{\mathcal {F}},P)}
h
∈
L
1
(
P
)
{\displaystyle h\in L_{1}(P)}
log
E
P
[
exp
h
]
=
sup
Q
≪
P
{
E
Q
[
h
]
−
D
KL
(
Q
∥
P
)
}
.
{\displaystyle \log E_{P}[\exp h]={\text{sup}}_{Q\ll P}\{E_{Q}[h]-D_{\text{KL}}(Q\parallel P)\}.}
さらに、右辺の上限は、
q
(
θ
)
p
(
θ
)
=
exp
h
(
θ
)
E
P
[
exp
h
]
,
{\displaystyle {\frac {q(\theta )}{p(\theta )}}={\frac {\exp h(\theta )}{E_{P}[\exp h]}},}
確率測度 に関してほぼ確実に 、 および はそれぞれ確率測度 および に関する ラドン・ニコディム微分を表します 。
Q
{\displaystyle Q}
p
(
θ
)
=
d
P
/
d
λ
{\displaystyle p(\theta )=dP/d\lambda }
q
(
θ
)
=
d
Q
/
d
λ
{\displaystyle q(\theta )=dQ/d\lambda }
P
{\displaystyle P}
Q
{\displaystyle Q}
λ
{\displaystyle \lambda }
基本的な例
平均 と 分散 が不明な ガウス分布 からの iid 観測値の集合からなる単純な非階層的ベイズモデルを考えてみましょう 。 [6] 以下では、変分ベイズ法の仕組みを説明するために、このモデルを詳細に検討します。
数学的な便宜上、次の例では、分散そのものではなく、 精度 、つまり分散の逆数(または多変量ガウス分布では 共分散行列の逆数)を基準にしています。(理論的な観点からは、精度と分散は 1 対 1 で対応し ているので同等です 。)
数学モデル
未知の平均値 と精度に 共役事前 分布を配置します 。つまり、平均値はガウス分布に従い、精度は ガンマ分布 に従います。言い換えると、
μ
{\displaystyle \mu }
τ
{\displaystyle \tau }
τ
∼
Gamma
(
a
0
,
b
0
)
μ
|
τ
∼
N
(
μ
0
,
(
λ
0
τ
)
−
1
)
{
x
1
,
…
,
x
N
}
∼
N
(
μ
,
τ
−
1
)
N
=
number of data points
{\displaystyle {\begin{aligned}\tau &\sim \operatorname {Gamma} (a_{0},b_{0})\\\mu |\tau &\sim {\mathcal {N}}(\mu _{0},(\lambda _{0}\tau )^{-1})\\\{x_{1},\dots ,x_{N}\}&\sim {\mathcal {N}}(\mu ,\tau ^{-1})\\N&={\text{number of data points}}\end{aligned}}}
事前分布の ハイパーパラメータ と は固定され、値が与えられています。 これらを小さな正の数値に設定して、 およびの事前分布について無知であることを示す広い事前分布を与えることができます 。
μ
0
,
λ
0
,
a
0
{\displaystyle \mu _{0},\lambda _{0},a_{0}}
b
0
{\displaystyle b_{0}}
μ
{\displaystyle \mu }
τ
{\displaystyle \tau }
与えられた データポイントから パラメータの 事後分布 を推測することが目的であり 、
N
{\displaystyle N}
X
=
{
x
1
,
…
,
x
N
}
{\displaystyle \mathbf {X} =\{x_{1},\ldots ,x_{N}\}}
q
(
μ
,
τ
)
=
p
(
μ
,
τ
∣
x
1
,
…
,
x
N
)
{\displaystyle q(\mu ,\tau )=p(\mu ,\tau \mid x_{1},\ldots ,x_{N})}
μ
{\displaystyle \mu }
τ
.
{\displaystyle \tau .}
結合確率
すべての変数の結合 確率は 次のように書き直すことができる。
p
(
X
,
μ
,
τ
)
=
p
(
X
∣
μ
,
τ
)
p
(
μ
∣
τ
)
p
(
τ
)
{\displaystyle p(\mathbf {X} ,\mu ,\tau )=p(\mathbf {X} \mid \mu ,\tau )p(\mu \mid \tau )p(\tau )}
個々の要因は
p
(
X
∣
μ
,
τ
)
=
∏
n
=
1
N
N
(
x
n
∣
μ
,
τ
−
1
)
p
(
μ
∣
τ
)
=
N
(
μ
∣
μ
0
,
(
λ
0
τ
)
−
1
)
p
(
τ
)
=
Gamma
(
τ
∣
a
0
,
b
0
)
{\displaystyle {\begin{aligned}p(\mathbf {X} \mid \mu ,\tau )&=\prod _{n=1}^{N}{\mathcal {N}}(x_{n}\mid \mu ,\tau ^{-1})\\p(\mu \mid \tau )&={\mathcal {N}}\left(\mu \mid \mu _{0},(\lambda _{0}\tau )^{-1}\right)\\p(\tau )&=\operatorname {Gamma} (\tau \mid a_{0},b_{0})\end{aligned}}}
どこ
N
(
x
∣
μ
,
σ
2
)
=
1
2
π
σ
2
e
−
(
x
−
μ
)
2
2
σ
2
Gamma
(
τ
∣
a
,
b
)
=
1
Γ
(
a
)
b
a
τ
a
−
1
e
−
b
τ
{\displaystyle {\begin{aligned}{\mathcal {N}}(x\mid \mu ,\sigma ^{2})&={\frac {1}{\sqrt {2\pi \sigma ^{2}}}}e^{\frac {-(x-\mu )^{2}}{2\sigma ^{2}}}\\\operatorname {Gamma} (\tau \mid a,b)&={\frac {1}{\Gamma (a)}}b^{a}\tau ^{a-1}e^{-b\tau }\end{aligned}}}
因数分解近似
、つまり事後分布が およびについて独立した因子に因数分解されると 仮定します 。このタイプの仮定は変分ベイズ法の基礎となります。実際の事後分布はこのように因数分解されません(実際、この単純なケースでは、 ガウスガンマ分布 であることが知られています)。したがって、得られる結果は近似値になります。
q
(
μ
,
τ
)
=
q
(
μ
)
q
(
τ
)
{\displaystyle q(\mu ,\tau )=q(\mu )q(\tau )}
μ
{\displaystyle \mu }
τ
{\displaystyle \tau }
の導出 q ( μ )
それから
ln
q
μ
∗
(
μ
)
=
E
τ
[
ln
p
(
X
∣
μ
,
τ
)
+
ln
p
(
μ
∣
τ
)
+
ln
p
(
τ
)
]
+
C
=
E
τ
[
ln
p
(
X
∣
μ
,
τ
)
]
+
E
τ
[
ln
p
(
μ
∣
τ
)
]
+
E
τ
[
ln
p
(
τ
)
]
+
C
=
E
τ
[
ln
∏
n
=
1
N
N
(
x
n
∣
μ
,
τ
−
1
)
]
+
E
τ
[
ln
N
(
μ
∣
μ
0
,
(
λ
0
τ
)
−
1
)
]
+
C
2
=
E
τ
[
ln
∏
n
=
1
N
τ
2
π
e
−
(
x
n
−
μ
)
2
τ
2
]
+
E
τ
[
ln
λ
0
τ
2
π
e
−
(
μ
−
μ
0
)
2
λ
0
τ
2
]
+
C
2
=
E
τ
[
∑
n
=
1
N
(
1
2
(
ln
τ
−
ln
2
π
)
−
(
x
n
−
μ
)
2
τ
2
)
]
+
E
τ
[
1
2
(
ln
λ
0
+
ln
τ
−
ln
2
π
)
−
(
μ
−
μ
0
)
2
λ
0
τ
2
]
+
C
2
=
E
τ
[
∑
n
=
1
N
−
(
x
n
−
μ
)
2
τ
2
]
+
E
τ
[
−
(
μ
−
μ
0
)
2
λ
0
τ
2
]
+
E
τ
[
∑
n
=
1
N
1
2
(
ln
τ
−
ln
2
π
)
]
+
E
τ
[
1
2
(
ln
λ
0
+
ln
τ
−
ln
2
π
)
]
+
C
2
=
E
τ
[
∑
n
=
1
N
−
(
x
n
−
μ
)
2
τ
2
]
+
E
τ
[
−
(
μ
−
μ
0
)
2
λ
0
τ
2
]
+
C
3
=
−
E
τ
[
τ
]
2
{
∑
n
=
1
N
(
x
n
−
μ
)
2
+
λ
0
(
μ
−
μ
0
)
2
}
+
C
3
{\displaystyle {\begin{aligned}\ln q_{\mu }^{*}(\mu )&=\operatorname {E} _{\tau }\left[\ln p(\mathbf {X} \mid \mu ,\tau )+\ln p(\mu \mid \tau )+\ln p(\tau )\right]+C\\&=\operatorname {E} _{\tau }\left[\ln p(\mathbf {X} \mid \mu ,\tau )\right]+\operatorname {E} _{\tau }\left[\ln p(\mu \mid \tau )\right]+\operatorname {E} _{\tau }\left[\ln p(\tau )\right]+C\\&=\operatorname {E} _{\tau }\left[\ln \prod _{n=1}^{N}{\mathcal {N}}\left(x_{n}\mid \mu ,\tau ^{-1}\right)\right]+\operatorname {E} _{\tau }\left[\ln {\mathcal {N}}\left(\mu \mid \mu _{0},(\lambda _{0}\tau )^{-1}\right)\right]+C_{2}\\&=\operatorname {E} _{\tau }\left[\ln \prod _{n=1}^{N}{\sqrt {\frac {\tau }{2\pi }}}e^{-{\frac {(x_{n}-\mu )^{2}\tau }{2}}}\right]+\operatorname {E} _{\tau }\left[\ln {\sqrt {\frac {\lambda _{0}\tau }{2\pi }}}e^{-{\frac {(\mu -\mu _{0})^{2}\lambda _{0}\tau }{2}}}\right]+C_{2}\\&=\operatorname {E} _{\tau }\left[\sum _{n=1}^{N}\left({\frac {1}{2}}(\ln \tau -\ln 2\pi )-{\frac {(x_{n}-\mu )^{2}\tau }{2}}\right)\right]+\operatorname {E} _{\tau }\left[{\frac {1}{2}}(\ln \lambda _{0}+\ln \tau -\ln 2\pi )-{\frac {(\mu -\mu _{0})^{2}\lambda _{0}\tau }{2}}\right]+C_{2}\\&=\operatorname {E} _{\tau }\left[\sum _{n=1}^{N}-{\frac {(x_{n}-\mu )^{2}\tau }{2}}\right]+\operatorname {E} _{\tau }\left[-{\frac {(\mu -\mu _{0})^{2}\lambda _{0}\tau }{2}}\right]+\operatorname {E} _{\tau }\left[\sum _{n=1}^{N}{\frac {1}{2}}(\ln \tau -\ln 2\pi )\right]+\operatorname {E} _{\tau }\left[{\frac {1}{2}}(\ln \lambda _{0}+\ln \tau -\ln 2\pi )\right]+C_{2}\\&=\operatorname {E} _{\tau }\left[\sum _{n=1}^{N}-{\frac {(x_{n}-\mu )^{2}\tau }{2}}\right]+\operatorname {E} _{\tau }\left[-{\frac {(\mu -\mu _{0})^{2}\lambda _{0}\tau }{2}}\right]+C_{3}\\&=-{\frac {\operatorname {E} _{\tau }[\tau ]}{2}}\left\{\sum _{n=1}^{N}(x_{n}-\mu )^{2}+\lambda _{0}(\mu -\mu _{0})^{2}\right\}+C_{3}\end{aligned}}}
上記の導出において、、 および は に関して定数である値を参照します 。項は の関数ではなく 、 の値に関係なく同じ値を持つことに注意してください 。したがって、3 行目でこれを最後の定数項に吸収することができます。7 行目でも同じことを行います。
C
{\displaystyle C}
C
2
{\displaystyle C_{2}}
C
3
{\displaystyle C_{3}}
μ
{\displaystyle \mu }
E
τ
[
ln
p
(
τ
)
]
{\displaystyle \operatorname {E} _{\tau }[\ln p(\tau )]}
μ
{\displaystyle \mu }
μ
{\displaystyle \mu }
最後の行は、 の単純な2次多項式です 。 これは の対数なので、 自体は ガウス分布 であることがわかります 。
μ
{\displaystyle \mu }
q
μ
∗
(
μ
)
{\displaystyle q_{\mu }^{*}(\mu )}
q
μ
∗
(
μ
)
{\displaystyle q_{\mu }^{*}(\mu )}
ある程度の面倒な計算(中括弧内の四角を展開し、およびを含む項を分離してグループ化し 、 上 で 平方完成させる )を行うことで、ガウス分布のパラメータを導くことができます。
μ
{\displaystyle \mu }
μ
2
{\displaystyle \mu ^{2}}
μ
{\displaystyle \mu }
ln
q
μ
∗
(
μ
)
=
−
E
τ
[
τ
]
2
{
∑
n
=
1
N
(
x
n
−
μ
)
2
+
λ
0
(
μ
−
μ
0
)
2
}
+
C
3
=
−
E
τ
[
τ
]
2
{
∑
n
=
1
N
(
x
n
2
−
2
x
n
μ
+
μ
2
)
+
λ
0
(
μ
2
−
2
μ
0
μ
+
μ
0
2
)
}
+
C
3
=
−
E
τ
[
τ
]
2
{
(
∑
n
=
1
N
x
n
2
)
−
2
(
∑
n
=
1
N
x
n
)
μ
+
(
∑
n
=
1
N
μ
2
)
+
λ
0
μ
2
−
2
λ
0
μ
0
μ
+
λ
0
μ
0
2
}
+
C
3
=
−
E
τ
[
τ
]
2
{
(
λ
0
+
N
)
μ
2
−
2
(
λ
0
μ
0
+
∑
n
=
1
N
x
n
)
μ
+
(
∑
n
=
1
N
x
n
2
)
+
λ
0
μ
0
2
}
+
C
3
=
−
E
τ
[
τ
]
2
{
(
λ
0
+
N
)
μ
2
−
2
(
λ
0
μ
0
+
∑
n
=
1
N
x
n
)
μ
}
+
C
4
=
−
E
τ
[
τ
]
2
{
(
λ
0
+
N
)
μ
2
−
2
(
λ
0
μ
0
+
∑
n
=
1
N
x
n
λ
0
+
N
)
(
λ
0
+
N
)
μ
}
+
C
4
=
−
E
τ
[
τ
]
2
{
(
λ
0
+
N
)
(
μ
2
−
2
(
λ
0
μ
0
+
∑
n
=
1
N
x
n
λ
0
+
N
)
μ
)
}
+
C
4
=
−
E
τ
[
τ
]
2
{
(
λ
0
+
N
)
(
μ
2
−
2
(
λ
0
μ
0
+
∑
n
=
1
N
x
n
λ
0
+
N
)
μ
+
(
λ
0
μ
0
+
∑
n
=
1
N
x
n
λ
0
+
N
)
2
−
(
λ
0
μ
0
+
∑
n
=
1
N
x
n
λ
0
+
N
)
2
)
}
+
C
4
=
−
E
τ
[
τ
]
2
{
(
λ
0
+
N
)
(
μ
2
−
2
(
λ
0
μ
0
+
∑
n
=
1
N
x
n
λ
0
+
N
)
μ
+
(
λ
0
μ
0
+
∑
n
=
1
N
x
n
λ
0
+
N
)
2
)
}
+
C
5
=
−
E
τ
[
τ
]
2
{
(
λ
0
+
N
)
(
μ
−
λ
0
μ
0
+
∑
n
=
1
N
x
n
λ
0
+
N
)
2
}
+
C
5
=
−
1
2
(
λ
0
+
N
)
E
τ
[
τ
]
(
μ
−
λ
0
μ
0
+
∑
n
=
1
N
x
n
λ
0
+
N
)
2
+
C
5
{\displaystyle {\begin{aligned}\ln q_{\mu }^{*}(\mu )&=-{\frac {\operatorname {E} _{\tau }[\tau ]}{2}}\left\{\sum _{n=1}^{N}(x_{n}-\mu )^{2}+\lambda _{0}(\mu -\mu _{0})^{2}\right\}+C_{3}\\&=-{\frac {\operatorname {E} _{\tau }[\tau ]}{2}}\left\{\sum _{n=1}^{N}(x_{n}^{2}-2x_{n}\mu +\mu ^{2})+\lambda _{0}(\mu ^{2}-2\mu _{0}\mu +\mu _{0}^{2})\right\}+C_{3}\\&=-{\frac {\operatorname {E} _{\tau }[\tau ]}{2}}\left\{\left(\sum _{n=1}^{N}x_{n}^{2}\right)-2\left(\sum _{n=1}^{N}x_{n}\right)\mu +\left(\sum _{n=1}^{N}\mu ^{2}\right)+\lambda _{0}\mu ^{2}-2\lambda _{0}\mu _{0}\mu +\lambda _{0}\mu _{0}^{2}\right\}+C_{3}\\&=-{\frac {\operatorname {E} _{\tau }[\tau ]}{2}}\left\{(\lambda _{0}+N)\mu ^{2}-2\left(\lambda _{0}\mu _{0}+\sum _{n=1}^{N}x_{n}\right)\mu +\left(\sum _{n=1}^{N}x_{n}^{2}\right)+\lambda _{0}\mu _{0}^{2}\right\}+C_{3}\\&=-{\frac {\operatorname {E} _{\tau }[\tau ]}{2}}\left\{(\lambda _{0}+N)\mu ^{2}-2\left(\lambda _{0}\mu _{0}+\sum _{n=1}^{N}x_{n}\right)\mu \right\}+C_{4}\\&=-{\frac {\operatorname {E} _{\tau }[\tau ]}{2}}\left\{(\lambda _{0}+N)\mu ^{2}-2\left({\frac {\lambda _{0}\mu _{0}+\sum _{n=1}^{N}x_{n}}{\lambda _{0}+N}}\right)(\lambda _{0}+N)\mu \right\}+C_{4}\\&=-{\frac {\operatorname {E} _{\tau }[\tau ]}{2}}\left\{(\lambda _{0}+N)\left(\mu ^{2}-2\left({\frac {\lambda _{0}\mu _{0}+\sum _{n=1}^{N}x_{n}}{\lambda _{0}+N}}\right)\mu \right)\right\}+C_{4}\\&=-{\frac {\operatorname {E} _{\tau }[\tau ]}{2}}\left\{(\lambda _{0}+N)\left(\mu ^{2}-2\left({\frac {\lambda _{0}\mu _{0}+\sum _{n=1}^{N}x_{n}}{\lambda _{0}+N}}\right)\mu +\left({\frac {\lambda _{0}\mu _{0}+\sum _{n=1}^{N}x_{n}}{\lambda _{0}+N}}\right)^{2}-\left({\frac {\lambda _{0}\mu _{0}+\sum _{n=1}^{N}x_{n}}{\lambda _{0}+N}}\right)^{2}\right)\right\}+C_{4}\\&=-{\frac {\operatorname {E} _{\tau }[\tau ]}{2}}\left\{(\lambda _{0}+N)\left(\mu ^{2}-2\left({\frac {\lambda _{0}\mu _{0}+\sum _{n=1}^{N}x_{n}}{\lambda _{0}+N}}\right)\mu +\left({\frac {\lambda _{0}\mu _{0}+\sum _{n=1}^{N}x_{n}}{\lambda _{0}+N}}\right)^{2}\right)\right\}+C_{5}\\&=-{\frac {\operatorname {E} _{\tau }[\tau ]}{2}}\left\{(\lambda _{0}+N)\left(\mu -{\frac {\lambda _{0}\mu _{0}+\sum _{n=1}^{N}x_{n}}{\lambda _{0}+N}}\right)^{2}\right\}+C_{5}\\&=-{\frac {1}{2}}(\lambda _{0}+N)\operatorname {E} _{\tau }[\tau ]\left(\mu -{\frac {\lambda _{0}\mu _{0}+\sum _{n=1}^{N}x_{n}}{\lambda _{0}+N}}\right)^{2}+C_{5}\end{aligned}}}
上記の手順はすべて、 2 つの二次方程式の和の 公式を使用することで短縮できることに注意してください 。
言い換えると:
q
μ
∗
(
μ
)
∼
N
(
μ
∣
μ
N
,
λ
N
−
1
)
μ
N
=
λ
0
μ
0
+
N
x
¯
λ
0
+
N
λ
N
=
(
λ
0
+
N
)
E
τ
[
τ
]
x
¯
=
1
N
∑
n
=
1
N
x
n
{\displaystyle {\begin{aligned}q_{\mu }^{*}(\mu )&\sim {\mathcal {N}}(\mu \mid \mu _{N},\lambda _{N}^{-1})\\\mu _{N}&={\frac {\lambda _{0}\mu _{0}+N{\bar {x}}}{\lambda _{0}+N}}\\\lambda _{N}&=(\lambda _{0}+N)\operatorname {E} _{\tau }[\tau ]\\{\bar {x}}&={\frac {1}{N}}\sum _{n=1}^{N}x_{n}\end{aligned}}}
の導出 q(τ)
の導出は 上記と同様ですが、簡潔にするために詳細の一部を省略します。
q
τ
∗
(
τ
)
{\displaystyle q_{\tau }^{*}(\tau )}
ln
q
τ
∗
(
τ
)
=
E
μ
[
ln
p
(
X
∣
μ
,
τ
)
+
ln
p
(
μ
∣
τ
)
]
+
ln
p
(
τ
)
+
constant
=
(
a
0
−
1
)
ln
τ
−
b
0
τ
+
1
2
ln
τ
+
N
2
ln
τ
−
τ
2
E
μ
[
∑
n
=
1
N
(
x
n
−
μ
)
2
+
λ
0
(
μ
−
μ
0
)
2
]
+
constant
{\displaystyle {\begin{aligned}\ln q_{\tau }^{*}(\tau )&=\operatorname {E} _{\mu }[\ln p(\mathbf {X} \mid \mu ,\tau )+\ln p(\mu \mid \tau )]+\ln p(\tau )+{\text{constant}}\\&=(a_{0}-1)\ln \tau -b_{0}\tau +{\frac {1}{2}}\ln \tau +{\frac {N}{2}}\ln \tau -{\frac {\tau }{2}}\operatorname {E} _{\mu }\left[\sum _{n=1}^{N}(x_{n}-\mu )^{2}+\lambda _{0}(\mu -\mu _{0})^{2}\right]+{\text{constant}}\end{aligned}}}
両辺を累乗すると、ガンマ分布 である ことがわかります 。具体的には、
q
τ
∗
(
τ
)
{\displaystyle q_{\tau }^{*}(\tau )}
q
τ
∗
(
τ
)
∼
Gamma
(
τ
∣
a
N
,
b
N
)
a
N
=
a
0
+
N
+
1
2
b
N
=
b
0
+
1
2
E
μ
[
∑
n
=
1
N
(
x
n
−
μ
)
2
+
λ
0
(
μ
−
μ
0
)
2
]
{\displaystyle {\begin{aligned}q_{\tau }^{*}(\tau )&\sim \operatorname {Gamma} (\tau \mid a_{N},b_{N})\\a_{N}&=a_{0}+{\frac {N+1}{2}}\\b_{N}&=b_{0}+{\frac {1}{2}}\operatorname {E} _{\mu }\left[\sum _{n=1}^{N}(x_{n}-\mu )^{2}+\lambda _{0}(\mu -\mu _{0})^{2}\right]\end{aligned}}}
パラメータを計算するアルゴリズム
前のセクションの結論を要約してみましょう。
q
μ
∗
(
μ
)
∼
N
(
μ
∣
μ
N
,
λ
N
−
1
)
μ
N
=
λ
0
μ
0
+
N
x
¯
λ
0
+
N
λ
N
=
(
λ
0
+
N
)
E
τ
[
τ
]
x
¯
=
1
N
∑
n
=
1
N
x
n
{\displaystyle {\begin{aligned}q_{\mu }^{*}(\mu )&\sim {\mathcal {N}}(\mu \mid \mu _{N},\lambda _{N}^{-1})\\\mu _{N}&={\frac {\lambda _{0}\mu _{0}+N{\bar {x}}}{\lambda _{0}+N}}\\\lambda _{N}&=(\lambda _{0}+N)\operatorname {E} _{\tau }[\tau ]\\{\bar {x}}&={\frac {1}{N}}\sum _{n=1}^{N}x_{n}\end{aligned}}}
そして
q
τ
∗
(
τ
)
∼
Gamma
(
τ
∣
a
N
,
b
N
)
a
N
=
a
0
+
N
+
1
2
b
N
=
b
0
+
1
2
E
μ
[
∑
n
=
1
N
(
x
n
−
μ
)
2
+
λ
0
(
μ
−
μ
0
)
2
]
{\displaystyle {\begin{aligned}q_{\tau }^{*}(\tau )&\sim \operatorname {Gamma} (\tau \mid a_{N},b_{N})\\a_{N}&=a_{0}+{\frac {N+1}{2}}\\b_{N}&=b_{0}+{\frac {1}{2}}\operatorname {E} _{\mu }\left[\sum _{n=1}^{N}(x_{n}-\mu )^{2}+\lambda _{0}(\mu -\mu _{0})^{2}\right]\end{aligned}}}
いずれの場合も、変数の 1 つに対する分布のパラメータは、他の変数に関して取られた期待値に依存します。ガウス分布とガンマ分布のモーメントの期待値の標準式を使用して、期待値を拡張できます。
E
[
τ
∣
a
N
,
b
N
]
=
a
N
b
N
E
[
μ
∣
μ
N
,
λ
N
−
1
]
=
μ
N
E
[
X
2
]
=
Var
(
X
)
+
(
E
[
X
]
)
2
E
[
μ
2
∣
μ
N
,
λ
N
−
1
]
=
λ
N
−
1
+
μ
N
2
{\displaystyle {\begin{aligned}\operatorname {E} [\tau \mid a_{N},b_{N}]&={\frac {a_{N}}{b_{N}}}\\\operatorname {E} \left[\mu \mid \mu _{N},\lambda _{N}^{-1}\right]&=\mu _{N}\\\operatorname {E} \left[X^{2}\right]&=\operatorname {Var} (X)+(\operatorname {E} [X])^{2}\\\operatorname {E} \left[\mu ^{2}\mid \mu _{N},\lambda _{N}^{-1}\right]&=\lambda _{N}^{-1}+\mu _{N}^{2}\end{aligned}}}
これらの式を上記の方程式に適用することはほとんどの場合簡単ですが、次の方程式の場合は さらに作業が必要です。
b
N
{\displaystyle b_{N}}
b
N
=
b
0
+
1
2
E
μ
[
∑
n
=
1
N
(
x
n
−
μ
)
2
+
λ
0
(
μ
−
μ
0
)
2
]
=
b
0
+
1
2
E
μ
[
(
λ
0
+
N
)
μ
2
−
2
(
λ
0
μ
0
+
∑
n
=
1
N
x
n
)
μ
+
(
∑
n
=
1
N
x
n
2
)
+
λ
0
μ
0
2
]
=
b
0
+
1
2
[
(
λ
0
+
N
)
E
μ
[
μ
2
]
−
2
(
λ
0
μ
0
+
∑
n
=
1
N
x
n
)
E
μ
[
μ
]
+
(
∑
n
=
1
N
x
n
2
)
+
λ
0
μ
0
2
]
=
b
0
+
1
2
[
(
λ
0
+
N
)
(
λ
N
−
1
+
μ
N
2
)
−
2
(
λ
0
μ
0
+
∑
n
=
1
N
x
n
)
μ
N
+
(
∑
n
=
1
N
x
n
2
)
+
λ
0
μ
0
2
]
{\displaystyle {\begin{aligned}b_{N}&=b_{0}+{\frac {1}{2}}\operatorname {E} _{\mu }\left[\sum _{n=1}^{N}(x_{n}-\mu )^{2}+\lambda _{0}(\mu -\mu _{0})^{2}\right]\\&=b_{0}+{\frac {1}{2}}\operatorname {E} _{\mu }\left[(\lambda _{0}+N)\mu ^{2}-2\left(\lambda _{0}\mu _{0}+\sum _{n=1}^{N}x_{n}\right)\mu +\left(\sum _{n=1}^{N}x_{n}^{2}\right)+\lambda _{0}\mu _{0}^{2}\right]\\&=b_{0}+{\frac {1}{2}}\left[(\lambda _{0}+N)\operatorname {E} _{\mu }[\mu ^{2}]-2\left(\lambda _{0}\mu _{0}+\sum _{n=1}^{N}x_{n}\right)\operatorname {E} _{\mu }[\mu ]+\left(\sum _{n=1}^{N}x_{n}^{2}\right)+\lambda _{0}\mu _{0}^{2}\right]\\&=b_{0}+{\frac {1}{2}}\left[(\lambda _{0}+N)\left(\lambda _{N}^{-1}+\mu _{N}^{2}\right)-2\left(\lambda _{0}\mu _{0}+\sum _{n=1}^{N}x_{n}\right)\mu _{N}+\left(\sum _{n=1}^{N}x_{n}^{2}\right)+\lambda _{0}\mu _{0}^{2}\right]\\\end{aligned}}}
すると、期待値なしでパラメータ方程式を次のように記述できます。
μ
N
=
λ
0
μ
0
+
N
x
¯
λ
0
+
N
λ
N
=
(
λ
0
+
N
)
a
N
b
N
x
¯
=
1
N
∑
n
=
1
N
x
n
a
N
=
a
0
+
N
+
1
2
b
N
=
b
0
+
1
2
[
(
λ
0
+
N
)
(
λ
N
−
1
+
μ
N
2
)
−
2
(
λ
0
μ
0
+
∑
n
=
1
N
x
n
)
μ
N
+
(
∑
n
=
1
N
x
n
2
)
+
λ
0
μ
0
2
]
{\displaystyle {\begin{aligned}\mu _{N}&={\frac {\lambda _{0}\mu _{0}+N{\bar {x}}}{\lambda _{0}+N}}\\\lambda _{N}&=(\lambda _{0}+N){\frac {a_{N}}{b_{N}}}\\{\bar {x}}&={\frac {1}{N}}\sum _{n=1}^{N}x_{n}\\a_{N}&=a_{0}+{\frac {N+1}{2}}\\b_{N}&=b_{0}+{\frac {1}{2}}\left[(\lambda _{0}+N)\left(\lambda _{N}^{-1}+\mu _{N}^{2}\right)-2\left(\lambda _{0}\mu _{0}+\sum _{n=1}^{N}x_{n}\right)\mu _{N}+\left(\sum _{n=1}^{N}x_{n}^{2}\right)+\lambda _{0}\mu _{0}^{2}\right]\end{aligned}}}
と の 式の間には循環依存関係があることに注意してください 。これは自然に EM のようなアルゴリズムを示唆します。
λ
N
{\displaystyle \lambda _{N}}
b
N
{\displaystyle b_{N}}
計算し て これらの値を使用して計算し 、
∑
n
=
1
N
x
n
{\displaystyle \sum _{n=1}^{N}x_{n}}
∑
n
=
1
N
x
n
2
.
{\displaystyle \sum _{n=1}^{N}x_{n}^{2}.}
μ
N
{\displaystyle \mu _{N}}
a
N
.
{\displaystyle a_{N}.}
任意の値に 初期化します。
λ
N
{\displaystyle \lambda _{N}}
の現在の値 と他のパラメータの既知の値を使用して、 を計算します 。
λ
N
,
{\displaystyle \lambda _{N},}
b
N
{\displaystyle b_{N}}
の現在の値 と他のパラメータの既知の値を使用して、 を計算します 。
b
N
,
{\displaystyle b_{N},}
λ
N
{\displaystyle \lambda _{N}}
収束するまで(つまり、どちらの値も少ししか変化しなくなるまで)最後の 2 つの手順を繰り返します。
次に、事後パラメータの近似分布のハイパーパラメータの値を取得し、これを使用して事後分布の必要なプロパティ(平均と分散、95% 最高密度領域(全確率の 95% を含む最小の間隔)など)を計算できます。
このアルゴリズムは局所的最大値に収束することが保証されていることがわかります。
また、事後分布は対応する事前分布と同じ形になることにも注意してください。これは仮定してい ません 。私たちが行った唯一の仮定は、分布が因数分解され、分布の形が自然に従うというものでした。事後分布が事前分布と同じ形になるという事実は偶然ではなく、事前分布が 指数族 のメンバーである場合は常に一般的な結果であることがわかります(以下を参照)。これは、ほとんどの標準分布の場合に当てはまります。
さらなる議論
ステップバイステップのレシピ
上記の例は、与えられたベイジアン ネットワーク における 事後確率 密度に対する変分ベイジアン近似を導出する
方法を示しています。
観測変数 (データ) と観測されない変数 ( パラメータ と 潜在変数 ) およびそれらの 条件付き確率分布を特定し、 グラフィカル モデル を使用してネットワークを記述します。 変分ベイズは事後確率の近似値を構築します。近似値は因数分解された分布、つまり 観測されない変数の互いに素なサブセット上の 2 つ以上の 独立した分布の積であるという基本的な特性を持ちます。
X
{\displaystyle \mathbf {X} }
Θ
{\displaystyle {\boldsymbol {\Theta }}}
Z
{\displaystyle \mathbf {Z} }
p
(
Z
,
Θ
∣
X
)
{\displaystyle p(\mathbf {Z} ,{\boldsymbol {\Theta }}\mid \mathbf {X} )}
観測されない変数を 2 つ以上のサブセットに分割し、そこから独立因子を導き出します。これを行うための普遍的な手順はありません。サブセットを作成しすぎると近似値が低くなり、作成するサブセットが少なすぎると変分ベイズ手順全体が扱いにくくなります。通常、最初の分割はパラメータと潜在変数を分離することです。多くの場合、これだけで扱いやすい結果が得られます。パーティションが と呼ばれるものとします 。
Z
1
,
…
,
Z
M
{\displaystyle \mathbf {Z} _{1},\ldots ,\mathbf {Z} _{M}}
与えられたパーティションに対して、 基本方程式を使用して 最も近似する分布の式を書きなさい 。
Z
j
{\displaystyle \mathbf {Z} _{j}}
q
j
∗
(
Z
j
∣
X
)
{\displaystyle q_{j}^{*}(\mathbf {Z} _{j}\mid \mathbf {X} )}
ln
q
j
∗
(
Z
j
∣
X
)
=
E
i
≠
j
[
ln
p
(
Z
,
X
)
]
+
constant
{\displaystyle \ln q_{j}^{*}(\mathbf {Z} _{j}\mid \mathbf {X} )=\operatorname {E} _{i\neq j}[\ln p(\mathbf {Z} ,\mathbf {X} )]+{\text{constant}}}
グラフィカル モデルを使用して、結合確率分布 の式を入力します 。 内の変数のいずれも含まないコンポーネント条件付き分布は 無視できます。これらは定数項に組み込まれます。
Z
j
{\displaystyle \mathbf {Z} _{j}}
上記の例に従って、式を簡略化し、期待値演算子を適用します。理想的には、これは に含まれない変数の基本関数の期待値 (たとえば、第 1 または第 2 の生の モーメント 、対数の期待値など) に簡略化されるはずです。変分ベイズ手順が適切に機能するためには、これらの期待値は一般に、これらの変数の分布のパラメーターおよび/または ハイパーパラメーター の関数として解析的に表現できる必要があります。すべての場合において、これらの期待値は、現在のパーティション内の変数に関して定数です。
Z
j
{\displaystyle \mathbf {Z} _{j}}
現在のパーティション内の変数に関する式の関数形式は、分布の種類を示します。特に、式を累乗すると、分布の 確率密度関数 (PDF) (または少なくとも、未知の 正規化定数 を持つそれに比例するもの) が生成されます。全体的な方法を扱いやすくするためには、関数形式が既知の分布に属することを認識できる必要があります。式を既知の分布の PDF と一致する形式に変換するには、かなりの数学的操作が必要になる場合があります。これが実行できる場合、正規化定数は定義によって復元でき、式の適切な部分を抽出することで、既知の分布のパラメーターの方程式を導出できます。
すべての期待値を現在のパーティションに含まれない変数の関数で解析的に置き換えることができ、PDF を既知の分布との識別を可能にする形式にすると、結果は、他のパーティション内の変数のパラメータの関数として最適パラメータの値を表す一連の方程式になります。
この手順をすべてのパーティションに適用できる場合、結果はすべてのパラメータの最適値を指定する相互にリンクされた方程式のセットになります。
次に、期待値最大化 (EM) タイプの手順 が適用され、各パラメータの初期値が選択され、一連の手順が反復されます。各手順では方程式を循環し、各パラメータを順番に更新します。これにより、収束が保証されます。
最も重要な点
数学的な操作が多岐にわたるため、全体像を見失いがちです。重要な点は次のとおりです。
変分ベイズの考え方は、 データが与えられた場合、観測されない変数(パラメータと潜在変数)のセットの 事後確率の解析的近似を構築することです。つまり、ソリューションの形式は、 ギブス サンプリング などの他の ベイズ推論 方法、つまり変数についてわかっているすべてのことを記述しようとする分布に似ています。他のベイズ法と同様に、ただし 期待値最大化 (EM) 法やその他の 最大尤度 法などとは異なり、両方のタイプの観測されない変数(パラメータと潜在変数)は同じように、つまり ランダム変数として扱われます。その後、変数の推定値は、たとえば分布の平均を計算して単一の点推定値を取得したり、 信頼区間 や最高密度領域など を導出したりするなど、標準的なベイズの方法で導出できます。
「解析的近似」とは、事後分布の式を書き下すことができることを意味します。この式は一般に、よく知られた確率分布の積で構成され、各分布は 観測されない変数のセットに対して 因数分解されます(つまり、観測されたデータが与えられた場合、他の変数から 条件付きで独立してい ます)。この式は真の事後分布ではなく、その近似値です。特に、 平均 や 分散 などの観測されない変数の最小 モーメント では、一般にかなり厳密に一致します。
すべての数学的操作の結果は、(1) 因子を構成する確率分布の同一性と、(2) これらの分布のパラメータの相互に依存する式です。これらのパラメータの実際の値は、EM によく似た交互反復手順を通じて数値的に計算されます。
期待最大化(EM)との比較
変分ベイズ (VB) は、 期待値最大化 (EM) とよく比較されます。実際の数値手順は、どちらも最適なパラメータ値に連続的に収束する交互反復手順であるという点で非常に似ています。それぞれの手順を導出する最初の手順も、漠然と似ており、どちらも確率密度の式から始まり、かなりの量の数学的操作を伴います。
ただし、いくつかの違いがあります。最も重要なのは、 何 が計算されるかです。
EM は、「パラメータ」として分類できるランダム変数の事後分布の点推定を計算しますが、潜在変数の実際の事後分布の推定値のみを計算します (少なくとも「ソフト EM」では、潜在変数が離散的である場合に限ります)。計算される点推定値はこれらのパラメータの モード であり、他の情報は利用できません。
一方、VB は、パラメータと潜在変数の両方を含むすべての変数の実際の事後分布の推定値を計算します。点推定値を導出する必要がある場合、 ベイズ推論で通常行われているように、通常、モードではなく 平均が使用されます。これに伴って、VB で計算されるパラメータは、EM のパラメータと同じ重要性を持ちませ ん 。EM は、ベイズ ネットワーク自体のパラメータの最適値を計算します。VB は、ベイズ ネットワークのパラメータと潜在変数を近似するために使用される分布のパラメータの最適値を計算します。たとえば、一般的なガウス 混合モデル には、各混合コンポーネントの平均と分散のパラメータがあります。EM は、これらのパラメータの最適値を直接推定します。ただし、VB は、最初にこれらのパラメータに分布を適合させます (通常は 事前分布 の形式、たとえば 正規尺度の逆ガンマ分布 )。次に、この事前分布のパラメータの値、つまり基本的に ハイパーパラメータ を計算します。この場合、VB は、コンポーネントの平均と分散の結合分布を記述する正規スケール逆ガンマ分布の 4 つのパラメータの最適推定値を計算します。
より複雑な例
プレート表記法 を使用したベイジアン ガウス混合モデル 。小さい四角は固定パラメータ、大きい円はランダム変数を示します。塗りつぶされた図形は既知の値を示します。[K] はサイズ K のベクトル、[ D , D ] はサイズ D × D の行列 、 K のみは結果 が K 個の カテゴリ変数であることを意味します 。z から始まりクロスバーで終わる 波線は スイッチを示します。この変数の値は、他の入力変数に対して、サイズ K の可能な値の配列からどの値を使用するかを選択します 。
以下のように記述されるベイズガウス混合モデル を想像してください : [3]
π
∼
SymDir
(
K
,
α
0
)
Λ
i
=
1
…
K
∼
W
(
W
0
,
ν
0
)
μ
i
=
1
…
K
∼
N
(
μ
0
,
(
β
0
Λ
i
)
−
1
)
z
[
i
=
1
…
N
]
∼
Mult
(
1
,
π
)
x
i
=
1
…
N
∼
N
(
μ
z
i
,
Λ
z
i
−
1
)
K
=
number of mixing components
N
=
number of data points
{\displaystyle {\begin{aligned}\mathbf {\pi } &\sim \operatorname {SymDir} (K,\alpha _{0})\\\mathbf {\Lambda } _{i=1\dots K}&\sim {\mathcal {W}}(\mathbf {W} _{0},\nu _{0})\\\mathbf {\mu } _{i=1\dots K}&\sim {\mathcal {N}}(\mathbf {\mu } _{0},(\beta _{0}\mathbf {\Lambda } _{i})^{-1})\\\mathbf {z} [i=1\dots N]&\sim \operatorname {Mult} (1,\mathbf {\pi } )\\\mathbf {x} _{i=1\dots N}&\sim {\mathcal {N}}(\mathbf {\mu } _{z_{i}},{\mathbf {\Lambda } _{z_{i}}}^{-1})\\K&={\text{number of mixing components}}\\N&={\text{number of data points}}\end{aligned}}}
注記:
SymDir() は、 各コンポーネントのハイパーパラメータが に設定された、 次元 の対称 ディリクレ分布 です。ディリクレ分布は、 カテゴリ分布 または 多項分布 の 共役事前分布 です。
K
{\displaystyle K}
α
0
{\displaystyle \alpha _{0}}
W
(
)
{\displaystyle {\mathcal {W}}()}
はウィシャート分布 であり、 多変量ガウス分布 の 精度行列 (逆 共分散行列 )の共役事前分布です 。
Mult() は、 単一の観測値に対する 多項分布です ( カテゴリ分布 と同等)。状態空間は「K のうちの 1 つ」の表現、つまり、 要素の 1 つが 1 (観測値の ID を指定) で、他のすべての要素が 0 である次元ベクトルです。
K
{\displaystyle K}
N
(
)
{\displaystyle {\mathcal {N}}()}
はガウス分布 であり 、この場合は具体的には 多変量ガウス分布 です。
上記の変数の解釈は次のとおりです。
X
=
{
x
1
,
…
,
x
N
}
{\displaystyle \mathbf {X} =\{\mathbf {x} _{1},\dots ,\mathbf {x} _{N}\}}
は、多変量ガウス分布 に従って分布する次元ベクトルである データポイント の集合です 。
N
{\displaystyle N}
D
{\displaystyle D}
Z
=
{
z
1
,
…
,
z
N
}
{\displaystyle \mathbf {Z} =\{\mathbf {z} _{1},\dots ,\mathbf {z} _{N}\}}
は、データ ポイントごとに 1 つずつ存在する潜在変数の集合であり、前述のように、 のコンポーネントを持つ「K 個の中の 1 つ」のベクトル表現を使用して、対応するデータ ポイントがどの混合コンポーネントに属するかを指定し ます 。
z
n
k
{\displaystyle z_{nk}}
k
=
1
…
K
{\displaystyle k=1\dots K}
π
{\displaystyle \mathbf {\pi } }
混合成分の混合比率です 。
K
{\displaystyle K}
μ
i
=
1
…
K
{\displaystyle \mathbf {\mu } _{i=1\dots K}}
各混合成分に関連付けられた パラメータ( 平均 と 精度 )を指定します。
Λ
i
=
1
…
K
{\displaystyle \mathbf {\Lambda } _{i=1\dots K}}
すべての変数の結合確率は次のように書き直すことができる。
p
(
X
,
Z
,
π
,
μ
,
Λ
)
=
p
(
X
∣
Z
,
μ
,
Λ
)
p
(
Z
∣
π
)
p
(
π
)
p
(
μ
∣
Λ
)
p
(
Λ
)
{\displaystyle p(\mathbf {X} ,\mathbf {Z} ,\mathbf {\pi } ,\mathbf {\mu } ,\mathbf {\Lambda } )=p(\mathbf {X} \mid \mathbf {Z} ,\mathbf {\mu } ,\mathbf {\Lambda } )p(\mathbf {Z} \mid \mathbf {\pi } )p(\mathbf {\pi } )p(\mathbf {\mu } \mid \mathbf {\Lambda } )p(\mathbf {\Lambda } )}
個々の要因は
p
(
X
∣
Z
,
μ
,
Λ
)
=
∏
n
=
1
N
∏
k
=
1
K
N
(
x
n
∣
μ
k
,
Λ
k
−
1
)
z
n
k
p
(
Z
∣
π
)
=
∏
n
=
1
N
∏
k
=
1
K
π
k
z
n
k
p
(
π
)
=
Γ
(
K
α
0
)
Γ
(
α
0
)
K
∏
k
=
1
K
π
k
α
0
−
1
p
(
μ
∣
Λ
)
=
∏
k
=
1
K
N
(
μ
k
∣
μ
0
,
(
β
0
Λ
k
)
−
1
)
p
(
Λ
)
=
∏
k
=
1
K
W
(
Λ
k
∣
W
0
,
ν
0
)
{\displaystyle {\begin{aligned}p(\mathbf {X} \mid \mathbf {Z} ,\mathbf {\mu } ,\mathbf {\Lambda } )&=\prod _{n=1}^{N}\prod _{k=1}^{K}{\mathcal {N}}(\mathbf {x} _{n}\mid \mathbf {\mu } _{k},\mathbf {\Lambda } _{k}^{-1})^{z_{nk}}\\p(\mathbf {Z} \mid \mathbf {\pi } )&=\prod _{n=1}^{N}\prod _{k=1}^{K}\pi _{k}^{z_{nk}}\\p(\mathbf {\pi } )&={\frac {\Gamma (K\alpha _{0})}{\Gamma (\alpha _{0})^{K}}}\prod _{k=1}^{K}\pi _{k}^{\alpha _{0}-1}\\p(\mathbf {\mu } \mid \mathbf {\Lambda } )&=\prod _{k=1}^{K}{\mathcal {N}}(\mathbf {\mu } _{k}\mid \mathbf {\mu } _{0},(\beta _{0}\mathbf {\Lambda } _{k})^{-1})\\p(\mathbf {\Lambda } )&=\prod _{k=1}^{K}{\mathcal {W}}(\mathbf {\Lambda } _{k}\mid \mathbf {W} _{0},\nu _{0})\end{aligned}}}
どこ
N
(
x
∣
μ
,
Σ
)
=
1
(
2
π
)
D
/
2
1
|
Σ
|
1
/
2
exp
{
−
1
2
(
x
−
μ
)
T
Σ
−
1
(
x
−
μ
)
}
W
(
Λ
∣
W
,
ν
)
=
B
(
W
,
ν
)
|
Λ
|
(
ν
−
D
−
1
)
/
2
exp
(
−
1
2
Tr
(
W
−
1
Λ
)
)
B
(
W
,
ν
)
=
|
W
|
−
ν
/
2
{
2
ν
D
/
2
π
D
(
D
−
1
)
/
4
∏
i
=
1
D
Γ
(
ν
+
1
−
i
2
)
}
−
1
D
=
dimensionality of each data point
{\displaystyle {\begin{aligned}{\mathcal {N}}(\mathbf {x} \mid \mathbf {\mu } ,\mathbf {\Sigma } )&={\frac {1}{(2\pi )^{D/2}}}{\frac {1}{|\mathbf {\Sigma } |^{1/2}}}\exp \left\{-{\frac {1}{2}}(\mathbf {x} -\mathbf {\mu } )^{\rm {T}}\mathbf {\Sigma } ^{-1}(\mathbf {x} -\mathbf {\mu } )\right\}\\{\mathcal {W}}(\mathbf {\Lambda } \mid \mathbf {W} ,\nu )&=B(\mathbf {W} ,\nu )|\mathbf {\Lambda } |^{(\nu -D-1)/2}\exp \left(-{\frac {1}{2}}\operatorname {Tr} (\mathbf {W} ^{-1}\mathbf {\Lambda } )\right)\\B(\mathbf {W} ,\nu )&=|\mathbf {W} |^{-\nu /2}\left\{2^{\nu D/2}\pi ^{D(D-1)/4}\prod _{i=1}^{D}\Gamma \left({\frac {\nu +1-i}{2}}\right)\right\}^{-1}\\D&={\text{dimensionality of each data point}}\end{aligned}}}
と仮定します 。
q
(
Z
,
π
,
μ
,
Λ
)
=
q
(
Z
)
q
(
π
,
μ
,
Λ
)
{\displaystyle q(\mathbf {Z} ,\mathbf {\pi } ,\mathbf {\mu } ,\mathbf {\Lambda } )=q(\mathbf {Z} )q(\mathbf {\pi } ,\mathbf {\mu } ,\mathbf {\Lambda } )}
その後 [3]
ln
q
∗
(
Z
)
=
E
π
,
μ
,
Λ
[
ln
p
(
X
,
Z
,
π
,
μ
,
Λ
)
]
+
constant
=
E
π
[
ln
p
(
Z
∣
π
)
]
+
E
μ
,
Λ
[
ln
p
(
X
∣
Z
,
μ
,
Λ
)
]
+
constant
=
∑
n
=
1
N
∑
k
=
1
K
z
n
k
ln
ρ
n
k
+
constant
{\displaystyle {\begin{aligned}\ln q^{*}(\mathbf {Z} )&=\operatorname {E} _{\mathbf {\pi } ,\mathbf {\mu } ,\mathbf {\Lambda } }[\ln p(\mathbf {X} ,\mathbf {Z} ,\mathbf {\pi } ,\mathbf {\mu } ,\mathbf {\Lambda } )]+{\text{constant}}\\&=\operatorname {E} _{\mathbf {\pi } }[\ln p(\mathbf {Z} \mid \mathbf {\pi } )]+\operatorname {E} _{\mathbf {\mu } ,\mathbf {\Lambda } }[\ln p(\mathbf {X} \mid \mathbf {Z} ,\mathbf {\mu } ,\mathbf {\Lambda } )]+{\text{constant}}\\&=\sum _{n=1}^{N}\sum _{k=1}^{K}z_{nk}\ln \rho _{nk}+{\text{constant}}\end{aligned}}}
ここで定義した
ln
ρ
n
k
=
E
[
ln
π
k
]
+
1
2
E
[
ln
|
Λ
k
|
]
−
D
2
ln
(
2
π
)
−
1
2
E
μ
k
,
Λ
k
[
(
x
n
−
μ
k
)
T
Λ
k
(
x
n
−
μ
k
)
]
{\displaystyle \ln \rho _{nk}=\operatorname {E} [\ln \pi _{k}]+{\frac {1}{2}}\operatorname {E} [\ln |\mathbf {\Lambda } _{k}|]-{\frac {D}{2}}\ln(2\pi )-{\frac {1}{2}}\operatorname {E} _{\mathbf {\mu } _{k},\mathbf {\Lambda } _{k}}[(\mathbf {x} _{n}-\mathbf {\mu } _{k})^{\rm {T}}\mathbf {\Lambda } _{k}(\mathbf {x} _{n}-\mathbf {\mu } _{k})]}
利回り
の式の両辺を累乗する
ln
q
∗
(
Z
)
{\displaystyle \ln q^{*}(\mathbf {Z} )}
q
∗
(
Z
)
∝
∏
n
=
1
N
∏
k
=
1
K
ρ
n
k
z
n
k
{\displaystyle q^{*}(\mathbf {Z} )\propto \prod _{n=1}^{N}\prod _{k=1}^{K}\rho _{nk}^{z_{nk}}}
これを正規化することを要求すると、 のすべての値にわたって合計が1になることが要求され 、
ρ
n
k
{\displaystyle \rho _{nk}}
k
{\displaystyle k}
q
∗
(
Z
)
=
∏
n
=
1
N
∏
k
=
1
K
r
n
k
z
n
k
{\displaystyle q^{*}(\mathbf {Z} )=\prod _{n=1}^{N}\prod _{k=1}^{K}r_{nk}^{z_{nk}}}
どこ
r
n
k
=
ρ
n
k
∑
j
=
1
K
ρ
n
j
{\displaystyle r_{nk}={\frac {\rho _{nk}}{\sum _{j=1}^{K}\rho _{nj}}}}
言い換えると、 は単一観測 多項分布 と各個体 上の因子の積であり、 の パラメータを持つ単一観測多項分布として分布します 。
q
∗
(
Z
)
{\displaystyle q^{*}(\mathbf {Z} )}
z
n
{\displaystyle \mathbf {z} _{n}}
r
n
k
{\displaystyle r_{nk}}
k
=
1
…
K
{\displaystyle k=1\dots K}
さらに、我々は
E
[
z
n
k
]
=
r
n
k
{\displaystyle \operatorname {E} [z_{nk}]=r_{nk}\,}
これはカテゴリ分布の標準的な結果です。
ここで、因子 について考えると、 上で指定したガウス混合モデルを定義するグラフィカル モデルの構造により、
それが自動的に に因数分解されることに注意してください。
q
(
π
,
μ
,
Λ
)
{\displaystyle q(\mathbf {\pi } ,\mathbf {\mu } ,\mathbf {\Lambda } )}
q
(
π
)
∏
k
=
1
K
q
(
μ
k
,
Λ
k
)
{\displaystyle q(\mathbf {\pi } )\prod _{k=1}^{K}q(\mathbf {\mu } _{k},\mathbf {\Lambda } _{k})}
それから、
ln
q
∗
(
π
)
=
ln
p
(
π
)
+
E
Z
[
ln
p
(
Z
∣
π
)
]
+
constant
=
(
α
0
−
1
)
∑
k
=
1
K
ln
π
k
+
∑
n
=
1
N
∑
k
=
1
K
r
n
k
ln
π
k
+
constant
{\displaystyle {\begin{aligned}\ln q^{*}(\mathbf {\pi } )&=\ln p(\mathbf {\pi } )+\operatorname {E} _{\mathbf {Z} }[\ln p(\mathbf {Z} \mid \mathbf {\pi } )]+{\text{constant}}\\&=(\alpha _{0}-1)\sum _{k=1}^{K}\ln \pi _{k}+\sum _{n=1}^{N}\sum _{k=1}^{K}r_{nk}\ln \pi _{k}+{\text{constant}}\end{aligned}}}
両辺の指数をとると、 ディリクレ分布 として認識される。
q
∗
(
π
)
{\displaystyle q^{*}(\mathbf {\pi } )}
q
∗
(
π
)
∼
Dir
(
α
)
{\displaystyle q^{*}(\mathbf {\pi } )\sim \operatorname {Dir} (\mathbf {\alpha } )\,}
どこ
α
k
=
α
0
+
N
k
{\displaystyle \alpha _{k}=\alpha _{0}+N_{k}\,}
どこ
N
k
=
∑
n
=
1
N
r
n
k
{\displaystyle N_{k}=\sum _{n=1}^{N}r_{nk}\,}
ついに
ln
q
∗
(
μ
k
,
Λ
k
)
=
ln
p
(
μ
k
,
Λ
k
)
+
∑
n
=
1
N
E
[
z
n
k
]
ln
N
(
x
n
∣
μ
k
,
Λ
k
−
1
)
+
constant
{\displaystyle \ln q^{*}(\mathbf {\mu } _{k},\mathbf {\Lambda } _{k})=\ln p(\mathbf {\mu } _{k},\mathbf {\Lambda } _{k})+\sum _{n=1}^{N}\operatorname {E} [z_{nk}]\ln {\mathcal {N}}(\mathbf {x} _{n}\mid \mathbf {\mu } _{k},\mathbf {\Lambda } _{k}^{-1})+{\text{constant}}}
とを含む項をグループ化して読み取ると 、 結果は ガウス-ウィシャート分布 となり、次のように表される。
μ
k
{\displaystyle \mathbf {\mu } _{k}}
Λ
k
{\displaystyle \mathbf {\Lambda } _{k}}
q
∗
(
μ
k
,
Λ
k
)
=
N
(
μ
k
∣
m
k
,
(
β
k
Λ
k
)
−
1
)
W
(
Λ
k
∣
W
k
,
ν
k
)
{\displaystyle q^{*}(\mathbf {\mu } _{k},\mathbf {\Lambda } _{k})={\mathcal {N}}(\mathbf {\mu } _{k}\mid \mathbf {m} _{k},(\beta _{k}\mathbf {\Lambda } _{k})^{-1}){\mathcal {W}}(\mathbf {\Lambda } _{k}\mid \mathbf {W} _{k},\nu _{k})}
定義を踏まえると
β
k
=
β
0
+
N
k
m
k
=
1
β
k
(
β
0
μ
0
+
N
k
x
¯
k
)
W
k
−
1
=
W
0
−
1
+
N
k
S
k
+
β
0
N
k
β
0
+
N
k
(
x
¯
k
−
μ
0
)
(
x
¯
k
−
μ
0
)
T
ν
k
=
ν
0
+
N
k
N
k
=
∑
n
=
1
N
r
n
k
x
¯
k
=
1
N
k
∑
n
=
1
N
r
n
k
x
n
S
k
=
1
N
k
∑
n
=
1
N
r
n
k
(
x
n
−
x
¯
k
)
(
x
n
−
x
¯
k
)
T
{\displaystyle {\begin{aligned}\beta _{k}&=\beta _{0}+N_{k}\\\mathbf {m} _{k}&={\frac {1}{\beta _{k}}}(\beta _{0}\mathbf {\mu } _{0}+N_{k}{\bar {\mathbf {x} }}_{k})\\\mathbf {W} _{k}^{-1}&=\mathbf {W} _{0}^{-1}+N_{k}\mathbf {S} _{k}+{\frac {\beta _{0}N_{k}}{\beta _{0}+N_{k}}}({\bar {\mathbf {x} }}_{k}-\mathbf {\mu } _{0})({\bar {\mathbf {x} }}_{k}-\mathbf {\mu } _{0})^{\rm {T}}\\\nu _{k}&=\nu _{0}+N_{k}\\N_{k}&=\sum _{n=1}^{N}r_{nk}\\{\bar {\mathbf {x} }}_{k}&={\frac {1}{N_{k}}}\sum _{n=1}^{N}r_{nk}\mathbf {x} _{n}\\\mathbf {S} _{k}&={\frac {1}{N_{k}}}\sum _{n=1}^{N}r_{nk}(\mathbf {x} _{n}-{\bar {\mathbf {x} }}_{k})(\mathbf {x} _{n}-{\bar {\mathbf {x} }}_{k})^{\rm {T}}\end{aligned}}}
最後に、これらの関数は の値を必要とし 、 は を利用し、 は 、、 および に基づいて定義されることに注意してください 。これらの期待値が取られる分布を決定したので、それらの公式を導き出すことができます。
r
n
k
{\displaystyle r_{nk}}
ρ
n
k
{\displaystyle \rho _{nk}}
E
[
ln
π
k
]
{\displaystyle \operatorname {E} [\ln \pi _{k}]}
E
[
ln
|
Λ
k
|
]
{\displaystyle \operatorname {E} [\ln |\mathbf {\Lambda } _{k}|]}
E
μ
k
,
Λ
k
[
(
x
n
−
μ
k
)
T
Λ
k
(
x
n
−
μ
k
)
]
{\displaystyle \operatorname {E} _{\mathbf {\mu } _{k},\mathbf {\Lambda } _{k}}[(\mathbf {x} _{n}-\mathbf {\mu } _{k})^{\rm {T}}\mathbf {\Lambda } _{k}(\mathbf {x} _{n}-\mathbf {\mu } _{k})]}
E
μ
k
,
Λ
k
[
(
x
n
−
μ
k
)
T
Λ
k
(
x
n
−
μ
k
)
]
=
D
β
k
−
1
+
ν
k
(
x
n
−
m
k
)
T
W
k
(
x
n
−
m
k
)
ln
Λ
~
k
≡
E
[
ln
|
Λ
k
|
]
=
∑
i
=
1
D
ψ
(
ν
k
+
1
−
i
2
)
+
D
ln
2
+
ln
|
W
k
|
ln
π
~
k
≡
E
[
ln
|
π
k
|
]
=
ψ
(
α
k
)
−
ψ
(
∑
i
=
1
K
α
i
)
{\displaystyle {\begin{aligned}\operatorname {E} _{\mathbf {\mu } _{k},\mathbf {\Lambda } _{k}}[(\mathbf {x} _{n}-\mathbf {\mu } _{k})^{\rm {T}}\mathbf {\Lambda } _{k}(\mathbf {x} _{n}-\mathbf {\mu } _{k})]&=D\beta _{k}^{-1}+\nu _{k}(\mathbf {x} _{n}-\mathbf {m} _{k})^{\rm {T}}\mathbf {W} _{k}(\mathbf {x} _{n}-\mathbf {m} _{k})\\\ln {\widetilde {\Lambda }}_{k}&\equiv \operatorname {E} [\ln |\mathbf {\Lambda } _{k}|]=\sum _{i=1}^{D}\psi \left({\frac {\nu _{k}+1-i}{2}}\right)+D\ln 2+\ln |\mathbf {W} _{k}|\\\ln {\widetilde {\pi }}_{k}&\equiv \operatorname {E} \left[\ln |\pi _{k}|\right]=\psi (\alpha _{k})-\psi \left(\sum _{i=1}^{K}\alpha _{i}\right)\end{aligned}}}
これらの結果は
r
n
k
∝
π
~
k
Λ
~
k
1
/
2
exp
{
−
D
2
β
k
−
ν
k
2
(
x
n
−
m
k
)
T
W
k
(
x
n
−
m
k
)
}
{\displaystyle r_{nk}\propto {\widetilde {\pi }}_{k}{\widetilde {\Lambda }}_{k}^{1/2}\exp \left\{-{\frac {D}{2\beta _{k}}}-{\frac {\nu _{k}}{2}}(\mathbf {x} _{n}-\mathbf {m} _{k})^{\rm {T}}\mathbf {W} _{k}(\mathbf {x} _{n}-\mathbf {m} _{k})\right\}}
対応する値の合計が 1 になるように
正規化することで、比例値から絶対値に変換できます。
k
{\displaystyle k}
ご了承ください:
変数およびのパラメータ、、およびの 更新 方程式 は 、 統計 量、、およびに依存し 、 これら の統計量は、 に依存します 。
β
k
{\displaystyle \beta _{k}}
m
k
{\displaystyle \mathbf {m} _{k}}
W
k
{\displaystyle \mathbf {W} _{k}}
ν
k
{\displaystyle \nu _{k}}
μ
k
{\displaystyle \mathbf {\mu } _{k}}
Λ
k
{\displaystyle \mathbf {\Lambda } _{k}}
N
k
{\displaystyle N_{k}}
x
¯
k
{\displaystyle {\bar {\mathbf {x} }}_{k}}
S
k
{\displaystyle \mathbf {S} _{k}}
r
n
k
{\displaystyle r_{nk}}
変数の パラメータの更新方程式は 統計量 に依存し 、統計量は に依存します 。
α
1
…
K
{\displaystyle \alpha _{1\dots K}}
π
{\displaystyle \mathbf {\pi } }
N
k
{\displaystyle N_{k}}
r
n
k
{\displaystyle r_{nk}}
の更新方程式は 、、、 に直接的な循環依存関係を持ち 、 また、および を介して 、、、 および に 間接的な循環依存関係を持ちます 。
r
n
k
{\displaystyle r_{nk}}
β
k
{\displaystyle \beta _{k}}
m
k
{\displaystyle \mathbf {m} _{k}}
W
k
{\displaystyle \mathbf {W} _{k}}
ν
k
{\displaystyle \nu _{k}}
W
k
{\displaystyle \mathbf {W} _{k}}
ν
k
{\displaystyle \nu _{k}}
α
1
…
K
{\displaystyle \alpha _{1\dots K}}
π
~
k
{\displaystyle {\widetilde {\pi }}_{k}}
Λ
~
k
{\displaystyle {\widetilde {\Lambda }}_{k}}
これは、次の 2 つのステップを交互に実行する反復的な手順を示唆しています。
他のすべてのパラメータの現在の値を使用して 値を計算する E ステップ。
r
n
k
{\displaystyle r_{nk}}
の新しい値を使用して、他のすべてのパラメータの新しい値を計算する M ステップ。
r
n
k
{\displaystyle r_{nk}}
これらの手順は、ガウス混合モデル のパラメータの 最大尤度 または 最大事後確率 (MAP) を導出する標準 EM アルゴリズムと密接に対応していることに注意してください。E ステップの 役割は 、データが与えられた場合の潜在変数の 事後確率 、つまり、統計値、、 の計算は 、 データに対する対応する「ソフト カウント」統計値の計算と密接に対応しています。また、これらの統計値を使用してパラメータの新しい値を計算することは、ガウス混合モデルに対する通常の EM でソフト カウントを使用して新しいパラメータ値を計算することに密接に対応しています。
r
n
k
{\displaystyle r_{nk}}
p
(
Z
∣
X
)
{\displaystyle p(\mathbf {Z} \mid \mathbf {X} )}
N
k
{\displaystyle N_{k}}
x
¯
k
{\displaystyle {\bar {\mathbf {x} }}_{k}}
S
k
{\displaystyle \mathbf {S} _{k}}
指数分布族
前の例では、観測されない変数の分布が「パラメータ」の分布と「潜在データ」の分布に因数分解されると仮定すると、各変数に対して導出された「最良」の分布は、変数の対応する事前分布と同じ族に属することに注意してください。これは、指数族から導出されたすべての事前分布に当てはまる一般的な結果 です 。
参照
変分メッセージパッシング :変分ベイズ推論のためのモジュラーアルゴリズム。
変分オートエンコーダ : 確率的グラフィカルモデルと変分ベイズ法のファミリーに属する人工ニューラル ネットワーク。
期待最大化アルゴリズム : 変分ベイズ推論の特殊なケースに対応する関連アプローチ。
一般化フィルタリング : 非線形状態空間モデルのための変分フィルタリング方式。
変分法 : 関数の最大化または最小化を扱う数学的解析の分野。
最大エントロピー識別:これは、追加の大きなマージン制約を導入し考慮することを可能にする変分推論フレームワークである [7]
参考文献
^ abcd Tran, Viet Hung (2018). 「情報幾何学によるコピュラ変分ベイズ推論」. arXiv : 1803.10998 [cs.IT].
^ ab Adamčík, Martin (2014). 「Bregman Divergencesの情報幾何学とマルチエキスパート推論へのいくつかの応用」. エントロピー . 16 (12): 6338–6381. Bibcode :2014Entrp..16.6338A. doi : 10.3390/e16126338 .
^ abc Nguyen, Duy (2023年8月15日). 「AN IN DEPTH INTRODUCTION TO VARIATIONAL BAYES NOTE」. doi :10.2139/ssrn.4541076. SSRN 4541076. 2023年 8月15日 閲覧 。
^ abc Lee, Se Yoon (2021). 「ギブスサンプラーと座標上昇変分推論:集合論的レビュー」. Communications in Statistics - Theory and Methods . 51 (6): 1–21. arXiv : 2008.01006 . doi :10.1080/03610926.2021.1921214. S2CID 220935477.
^ Boyd, Stephen P.; Vandenberghe, Lieven (2004). 凸最適化 (PDF) . Cambridge University Press. ISBN 978-0-521-83378-3 . 2011年 10月15日 閲覧 。
^ ビショップ、クリストファー M. (2006)。「第 10 章」。 パターン認識と機械学習 。シュプリンガー 。ISBN 978-0-387-31073-2 。
^ Sotirios P. Chatzis、「無限マルコフスイッチング最大エントロピー判別マシン」、Proc. 30th International Conference on Machine Learning (ICML)。機械学習研究ジャーナル: ワークショップおよび会議議事録、vol. 28、no. 3、pp. 729–737、2013 年 6 月。
外部リンク
オンライン教科書「情報理論、推論、学習アルゴリズム」( David JC MacKay 著)では、変分法について紹介しています(422 ページ)。
変分ベイズのチュートリアル。Fox, C. および Roberts, S. 2012. 人工知能レビュー、 doi :10.1007/s10462-011-9236-8。
変分ベイズ リポジトリ 2003 年までの近似ベイズ学習のための変分法の使用に関連する研究論文、ソフトウェア、およびリンクのリポジトリです。
MJ Beal による「近似ベイズ推論のための変分アルゴリズム」には、EM と変分ベイズ EM の比較と、変分ベイズ HMM を含むいくつかのモデルの導出が含まれています。
より数学的に詳細な説明を読む前に、Jason Eisner 著の「High-Level Explanation of Variational Inference」を読む価値があるかもしれません。
情報幾何学によるコピュラ変分ベイズ推論 (pdf)、著者:Tran, VH 2018。この論文は主に学生向けに書かれています。この論文では、 ブレグマン ダイバージェンスを 介して、変分ベイズが真のモデルを任意に相関した (コピュラ) 分布空間に一般化したピタゴラス射影に過ぎず、独立空間は単にその特殊なケースに過ぎないことを示しています。
変分ベイズの詳細な入門ノート。Nguyen, D. 2023