贝叶斯模型比较
注意:本文主要来自于Joshua C.C.Chan 的notes on bayesian macroeconometrics,只为记录学习,请勿他用。
1 边际似然的计算
1.1 Savage-Dicky Density Ratio
使用这个此密度比,我们可以解决边际似然计算困难的问题。先验分布通常选择简单常用的分布,我们可以解析地计算
p
(
ω
=
ω
0
∣
M
U
)
p\left(\boldsymbol{\omega}=\boldsymbol{\omega}_{0} \mid M_{U}\right)
p(ω=ω0∣MU), 分母可以通过计算蒙特卡洛平均来估计:
1
R
∑
r
=
1
R
p
(
ω
=
ω
0
∣
y
,
ψ
(
r
)
,
M
U
)
\frac{1}{R} \sum_{r=1}^{R} p\left(\boldsymbol{\omega}=\boldsymbol{\omega}_{0} \mid \mathbf{y}, \boldsymbol{\psi}^{(r)}, M_{U}\right)
R1r=1∑Rp(ω=ω0∣y,ψ(r),MU)
其中,
ψ
(
1
)
,
…
,
ψ
(
R
)
\boldsymbol{\psi}^{(1)}, \ldots, \boldsymbol{\psi}^{(R)}
ψ(1),…,ψ(R)是从无约束模型
M
U
M_{U}
MU抽取的draws。
例如: 我们重新讨论一个带有MA(1)误差的线性回归模型。如果MA(1)模型的系数 ψ \psi ψ为0,则MA(1)模型就退化为带有独立误差的标准的线性回归模型。因此,支持MA(1)模型的贝叶斯因子可以写为 p ( ψ = 0 ) / p ( ψ = 0 ∣ y ) p(\psi=0) / p(\psi=0 \mid \mathbf{y}) p(ψ=0)/p(ψ=0∣y)。
1.2 Modified Harmonic Mean
估计边际似然的一种常用方法是Gelfand和Dey(1994)的修正调和平均。定义
f
f
f是一个p.d.f,它的支撑包含在后验分布的支撑剂之中。修改的调和平均基于如下的等式:
E
[
f
(
θ
)
p
(
θ
)
p
(
y
∣
θ
)
∣
y
]
=
∫
f
(
θ
)
p
(
θ
)
p
(
y
∣
θ
)
p
(
θ
)
p
(
y
∣
θ
)
p
(
y
)
d
θ
=
p
(
y
)
−
1
\mathbb{E}\left[\frac{f(\boldsymbol{\theta})}{p(\boldsymbol{\theta}) p(\mathbf{y} \mid \boldsymbol{\theta})} \mid \mathbf{y}\right]=\int \frac{f(\boldsymbol{\theta})}{p(\boldsymbol{\theta}) p(\mathbf{y} \mid \boldsymbol{\theta})} \frac{p(\boldsymbol{\theta}) p(\mathbf{y} \mid \boldsymbol{\theta})}{p(\mathbf{y})} \mathrm{d} \boldsymbol{\theta}=p(\mathbf{y})^{-1}
E[p(θ)p(y∣θ)f(θ)∣y]=∫p(θ)p(y∣θ)f(θ)p(y)p(θ)p(y∣θ)dθ=p(y)−1
这个期望是关于后验分布
p
(
θ
∣
y
)
=
p
(
θ
)
p
(
y
∣
θ
)
/
p
(
y
)
p(\boldsymbol{\theta} \mid \mathbf{y})=p(\boldsymbol{\theta}) p(\mathbf{y} \mid \boldsymbol{\theta}) / p(\mathbf{y})
p(θ∣y)=p(θ)p(y∣θ)/p(y)来求的。因此,我们可以使用如下的估计量来估计边际似然:
p
(
y
)
^
G
D
=
[
1
R
∑
r
=
1
R
f
(
θ
(
r
)
)
p
(
θ
(
r
)
)
p
(
y
∣
θ
(
r
)
)
]
−
1
\widehat{p(\mathbf{y})}_{\mathrm{GD}}=\left[\frac{1}{R} \sum_{r=1}^{R} \frac{f\left(\boldsymbol{\theta}^{(r)}\right)}{p\left(\boldsymbol{\theta}^{(r)}\right) p\left(\mathbf{y} \mid \boldsymbol{\theta}^{(r)}\right)}\right]^{-1}
p(y)
GD=⎣⎡R1r=1∑Rp(θ(r))p(y∣θ(r))f(θ(r))⎦⎤−1
其中,
θ
(
1
)
,
…
,
θ
(
R
)
\boldsymbol{\theta}^{(1)}, \ldots, \boldsymbol{\theta}^{(R)}
θ(1),…,θ(R)是后验draws。当R趋近于无穷时,边际似然
p
(
y
)
p(\mathbf{y})
p(y)依概率是相合的。但这个估计并不是无偏的。Geweke(1999)表明,如果函数f的尾部比后验分布的尾部薄,则修正调和均值具有有限方差。由于后验分布在一定的正则性条件下是渐近正态分布,Geweke(1999)建议使用尾截尾后验分布的正态近似。更准确地说, 定义
θ
^
\hat\boldsymbol{\theta}
θ^和
Q
θ
\mathbf{Q_{\boldsymbol{\theta}}}
Qθ表示参数
θ
\boldsymbol{\theta}
θ的后验均值和后验协方差矩阵。 考虑选择的
f
f
f是截断的密度
N
(
θ
^
,
Q
θ
)
\mathcal{N}\left(\widehat{\theta}, \mathbf{Q}_{\theta}\right)
N(θ
,Qθ),区域为:
{
θ
∈
R
m
:
(
θ
−
θ
^
)
′
Q
θ
−
1
(
θ
−
θ
^
)
<
χ
α
,
m
2
}
\left\{\boldsymbol{\theta} \in \mathbb{R}^{m}:(\boldsymbol{\theta}-\widehat{\boldsymbol{\theta}})^{\prime} \mathbf{Q}_{\theta}^{-1}(\boldsymbol{\theta}-\widehat{\boldsymbol{\theta}})<\chi_{\alpha, m}^{2}\right\}
{θ∈Rm:(θ−θ
)′Qθ−1(θ−θ
)<χα,m2}
其中,
m
m
m表示
θ
\boldsymbol{\theta}
θ的维度,
χ
α
,
m
2
\chi_{\alpha, m}^{2}
χα,m2表示
χ
m
2
\chi_{m}^2
χm2的
1
−
α
1-\alpha
1−α分位数。
改进的谐波均值的主要优点是它易于实现-编程的工作量最小,只需要后验绘制。虽然这种估计器通常对低维问题(例如,小于12个参数)是准确的,但在高维问题中它可能在数值上不稳定。
1.3 Chib’s Method
另外一种计算边际似然的方法是Chib(1995), 这个方法的基础是边际似然是后验分布的标准化常数。或者等价地,
p
(
y
)
=
p
(
y
∣
θ
)
p
(
θ
)
p
(
θ
∣
y
)
p(\mathbf{y})=\frac{p(\mathbf{y} \mid \boldsymbol{\theta}) p(\boldsymbol{\theta})}{p(\boldsymbol{\theta} \mid \mathbf{y})}
p(y)=p(θ∣y)p(y∣θ)p(θ)
因此,
p
(
y
)
p(\mathbf{y})
p(y)的一个自然的估计如下表示(在对数尺度下):
log
p
(
y
)
^
Chib
=
log
p
(
y
∣
θ
∗
)
+
log
p
(
θ
∗
)
−
log
p
(
θ
∗
∣
y
)
^
\log \widehat{p(\mathbf{y})}_{\text {Chib }}=\log p\left(\mathbf{y} \mid \boldsymbol{\theta}^{*}\right)+\log p\left(\boldsymbol{\theta}^{*}\right)-\log p \widehat{\left(\boldsymbol{\theta}^{*} \mid \mathbf{y}\right)}
logp(y)
Chib =logp(y∣θ∗)+logp(θ∗)−logp(θ∗∣y)
其中,
θ
∗
\boldsymbol{\theta}^{*}
θ∗是后验分布支撑集中的任意点。具体原因稍后解释,选择
θ
∗
\boldsymbol{\theta}^{*}
θ∗是某个高密度点如后验均值或者后验众数是有用的。
通常情形下,我们都可以解析地计算似然函数和先验分布的值,唯一未知量为后验分布 p ( θ ∗ ∣ y ) p\left(\boldsymbol{\theta}^{*} \mid \mathbf{y}\right) p(θ∗∣y)。和之前一样,我们估计后验分布使用蒙特卡洛方法。特别地,如果所有的条件分布都是已知的,然后 p ( θ ∗ ∣ y ) p\left(\boldsymbol{\theta}^{*} \mid \mathbf{y}\right) p(θ∗∣y)可以通过一系列设计好的Gibbs samplers中抽样,这就是所谓的reduced runs。
给一个具体的例子: 假定我们将参数 β \beta β划分为带有完全条件分布 p ( θ 1 ∣ y , θ 2 , θ 3 ) p\left(\boldsymbol{\theta}_{1} \mid \mathbf{y}, \boldsymbol{\theta}_{2}, \boldsymbol{\theta}_{3}\right) p(θ1∣y,θ2,θ3), p ( θ 2 ∣ y , θ 1 , θ 3 ) p\left(\boldsymbol{\theta}_{2} \mid \mathbf{y}, \boldsymbol{\theta}_{1}, \boldsymbol{\theta}_{3}\right) p(θ2∣y,θ1,θ3), p ( θ 3 ∣ y , θ 1 , θ 2 ) p\left(\boldsymbol{\theta}_{3} \mid \mathbf{y}, \boldsymbol{\theta}_{1}, \boldsymbol{\theta}_{2}\right) p(θ3∣y,θ1,θ2)的三个块 β 1 , β 2 , β 3 \beta_1,\beta_2,\beta_3 β1,β2,β3. 我们强调这些条件分布是完全已知的,并且他们可以准确地计算:
我们首先将
p
(
θ
∗
∣
y
)
p\left(\boldsymbol{\theta}^{*} \mid \mathbf{y}\right)
p(θ∗∣y)分解为:
log
p
(
θ
∗
∣
y
)
=
log
p
(
θ
1
∗
,
θ
2
∗
,
θ
3
∗
∣
y
)
=
log
p
(
θ
1
∗
∣
y
)
+
log
p
(
θ
2
∗
∣
y
,
θ
1
∗
)
+
log
p
(
θ
3
∗
∣
y
,
θ
1
∗
,
θ
2
∗
)
\begin{aligned} \log p\left(\boldsymbol{\theta}^{*} \mid \mathbf{y}\right) &=\log p\left(\boldsymbol{\theta}_{1}^{*}, \boldsymbol{\theta}_{2}^{*}, \boldsymbol{\theta}_{3}^{*} \mid \mathbf{y}\right) \\ &=\log p\left(\boldsymbol{\theta}_{1}^{*} \mid \mathbf{y}\right)+\log p\left(\boldsymbol{\theta}_{2}^{*} \mid \mathbf{y}, \boldsymbol{\theta}_{1}^{*}\right)+\log p\left(\boldsymbol{\theta}_{3}^{*} \mid \mathbf{y}, \boldsymbol{\theta}_{1}^{*}, \boldsymbol{\theta}_{2}^{*}\right) \end{aligned}
logp(θ∗∣y)=logp(θ1∗,θ2∗,θ3∗∣y)=logp(θ1∗∣y)+logp(θ2∗∣y,θ1∗)+logp(θ3∗∣y,θ1∗,θ2∗)
我们分别获得上述公式中三项的每一项。最后一项
p
(
θ
3
∗
∣
y
,
θ
1
∗
,
θ
2
∗
)
p\left(\boldsymbol{\theta}_{3}^{*} \mid \mathbf{y}, \boldsymbol{\theta}_{1}^{*}, \boldsymbol{\theta}_{2}^{*}\right)
p(θ3∗∣y,θ1∗,θ2∗) 是已知的, 因为我们假定所有的条件分布都是已知的。剩余两项可以通过蒙特卡洛估计得到。特别地,第一项
p
(
θ
1
∗
∣
y
)
p\left(\boldsymbol{\theta}_{1}^{*} \mid \mathbf{y}\right)
p(θ1∗∣y)可以使用主要的Gibbs 抽样来获得估计,然而第二项
p
(
θ
2
∗
∣
y
,
θ
1
∗
)
p\left(\boldsymbol{\theta}_{2}^{*} \mid \mathbf{y}, \boldsymbol{\theta}_{1}^{*}\right)
p(θ2∗∣y,θ1∗)可以通过reduced runs 进行抽样估计。接下来,我们提供计算细节。
为了估计
p
(
θ
1
∗
∣
y
)
p\left(\boldsymbol{\theta}_{1}^{*} \mid \mathbf{y}\right)
p(θ1∗∣y),首先请注意
p
(
θ
1
∗
∣
y
)
=
∬
p
(
θ
1
∗
,
θ
2
,
θ
3
∣
y
)
d
θ
2
d
θ
3
=
∬
p
(
θ
1
∗
∣
y
,
θ
2
,
θ
3
)
p
(
θ
2
,
θ
3
∣
y
)
d
θ
2
d
θ
3
.
\begin{aligned} p\left(\boldsymbol{\theta}_{1}^{*} \mid \mathbf{y}\right) &=\iint p\left(\boldsymbol{\theta}_{1}^{*}, \boldsymbol{\theta}_{2}, \boldsymbol{\theta}_{3} \mid \mathbf{y}\right) \mathrm{d} \boldsymbol{\theta}_{2} \mathrm{~d} \boldsymbol{\theta}_{3} \\ &=\iint p\left(\boldsymbol{\theta}_{1}^{*} \mid \mathbf{y}, \boldsymbol{\theta}_{2}, \boldsymbol{\theta}_{3}\right) p\left(\boldsymbol{\theta}_{2}, \boldsymbol{\theta}_{3} \mid \mathbf{y}\right) \mathrm{d} \boldsymbol{\theta}_{2} \mathrm{~d} \boldsymbol{\theta}_{3} . \end{aligned}
p(θ1∗∣y)=∬p(θ1∗,θ2,θ3∣y)dθ2 dθ3=∬p(θ1∗∣y,θ2,θ3)p(θ2,θ3∣y)dθ2 dθ3.
因此,
p
(
θ
1
∗
∣
y
)
p\left(\boldsymbol{\theta}_{1}^{*} \mid \mathbf{y}\right)
p(θ1∗∣y)可以被估计通过MC平均:
p
(
θ
1
∗
∣
y
)
^
=
1
R
∑
r
=
1
R
p
(
θ
1
∗
∣
y
,
θ
2
(
r
)
,
θ
3
(
r
)
)
\widehat{p\left(\boldsymbol{\theta}_{1}^{*} \mid \mathbf{y}\right)}=\frac{1}{R} \sum_{r=1}^{R} p\left(\boldsymbol{\theta}_{1}^{*} \mid \mathbf{y}, \boldsymbol{\theta}_{2}^{(r)}, \boldsymbol{\theta}_{3}^{(r)}\right)
p(θ1∗∣y)
=R1r=1∑Rp(θ1∗∣y,θ2(r),θ3(r))
其中,
(
θ
2
(
1
)
,
θ
3
(
1
)
)
,
…
,
(
θ
2
(
R
)
,
θ
3
(
R
)
)
\left(\boldsymbol{\theta}_{2}^{(1)}, \boldsymbol{\theta}_{3}^{(1)}\right), \ldots,\left(\boldsymbol{\theta}_{2}^{(R)}, \boldsymbol{\theta}_{3}^{(R)}\right)
(θ2(1),θ3(1)),…,(θ2(R),θ3(R))是从边际后验分布
p
(
θ
2
,
θ
3
∣
y
)
p\left(\boldsymbol{\theta}_{2}, \boldsymbol{\theta}_{3} \mid \mathbf{y}\right)
p(θ2,θ3∣y)抽取的。也就是说,这些样本室从 main Gibbs run 中获得的。
如上所述, 原则上 θ 1 ∗ \boldsymbol{\theta}_{1}^{*} θ1∗的可以被设置为任意值,只要它在后验分布的支撑集中即可,可是实际上, θ 1 ∗ \boldsymbol{\theta}_{1}^{*} θ1∗选择的是某一个具有高密度的点。从上述的MC估计可以看出,原因是清楚的,对于大部分组 ( θ 2 ( r ) , θ 3 ( r ) ) \left(\boldsymbol{\theta}_{2}^{(r)}, \boldsymbol{\theta}_{3}^{(r)}\right) (θ2(r),θ3(r)), p ( θ 1 ∗ ∣ y , θ 2 ( r ) , θ 3 ( r ) ) p\left(\boldsymbol{\theta}_{1}^{*} \mid \mathbf{y}, \boldsymbol{\theta}_{2}^{(r)}, \boldsymbol{\theta}_{3}^{(r)}\right) p(θ1∗∣y,θ2(r),θ3(r))是足够大,反过来,估计量在数值上将是非常稳定的。
相似地, 注意
p
(
θ
2
∗
∣
y
,
θ
1
∗
)
=
∫
p
(
θ
2
∗
,
θ
3
∣
y
,
θ
1
∗
)
d
θ
3
=
∫
p
(
θ
2
∗
∣
y
,
θ
1
∗
,
θ
3
)
p
(
θ
3
∣
y
,
θ
1
∗
)
d
θ
3
\begin{aligned} p\left(\boldsymbol{\theta}_{2}^{*} \mid \mathbf{y}, \boldsymbol{\theta}_{1}^{*}\right) &=\int p\left(\boldsymbol{\theta}_{2}^{*}, \boldsymbol{\theta}_{3} \mid \mathbf{y}, \boldsymbol{\theta}_{1}^{*}\right) \mathrm{d} \boldsymbol{\theta}_{3} \\ &=\int p\left(\boldsymbol{\theta}_{2}^{*} \mid \mathbf{y}, \boldsymbol{\theta}_{1}^{*}, \boldsymbol{\theta}_{3}\right) p\left(\boldsymbol{\theta}_{3} \mid \mathbf{y}, \boldsymbol{\theta}_{1}^{*}\right) \mathrm{d} \boldsymbol{\theta}_{3} \end{aligned}
p(θ2∗∣y,θ1∗)=∫p(θ2∗,θ3∣y,θ1∗)dθ3=∫p(θ2∗∣y,θ1∗,θ3)p(θ3∣y,θ1∗)dθ3
因此,
p
(
θ
2
∗
∣
y
,
θ
1
∗
)
p\left(\boldsymbol{\theta}_{2}^{*} \mid \mathbf{y}, \boldsymbol{\theta}_{1}^{*}\right)
p(θ2∗∣y,θ1∗)可以通过如下公式进行估计:
p
(
θ
2
∗
∣
y
,
θ
1
∗
^
)
=
1
R
∑
r
=
1
R
p
(
θ
2
∗
∣
y
,
θ
1
∗
,
θ
3
(
r
)
)
p\left(\widehat{\boldsymbol{\theta}_{2}^{*} \mid \mathbf{y}, \boldsymbol{\theta}_{1}^{*}}\right)=\frac{1}{R} \sum_{r=1}^{R} p\left(\boldsymbol{\theta}_{2}^{*} \mid \mathbf{y}, \boldsymbol{\theta}_{1}^{*}, \boldsymbol{\theta}_{3}^{(r)}\right)
p(θ2∗∣y,θ1∗
)=R1r=1∑Rp(θ2∗∣y,θ1∗,θ3(r))
其中,
θ
3
(
1
)
,
…
,
θ
3
(
R
)
\boldsymbol{\theta}_{3}^{(1)}, \ldots, \boldsymbol{\theta}_{3}^{(R)}
θ3(1),…,θ3(R)是从分布
p
(
θ
3
∣
y
,
θ
1
∗
)
p\left(\boldsymbol{\theta}_{3} \mid \mathbf{y}, \boldsymbol{\theta}_{1}^{*}\right)
p(θ3∣y,θ1∗)中抽样的。这些样本可以通过reduced run获得。
更具体地说, 我们初始化 θ 2 ( 0 ) = a 0 \boldsymbol{\theta}_{2}^{(0)}=\mathbf{a}_{0} θ2(0)=a0 and θ 3 ( 0 ) = b 0 \boldsymbol{\theta}_{3}^{(0)}=\mathbf{b}_{0} θ3(0)=b0。然后,我们重复如下步骤 r = 1 , … , R r = 1,\dots,R r=1,…,R:
- Draw θ 2 ( r ) ∼ p ( θ 2 ∣ y , θ 1 ∗ , θ 3 ( r − 1 ) ) \boldsymbol{\theta}_{2}^{(r)} \sim p\left(\boldsymbol{\theta}_{2} \mid \mathbf{y}, \boldsymbol{\theta}_{1}^{*}, \boldsymbol{\theta}_{3}^{(r-1)}\right) θ2(r)∼p(θ2∣y,θ1∗,θ3(r−1)).
- Draw θ 3 ( r ) ∼ p ( θ 3 ∣ y , θ 1 ∗ , θ 2 ( r ) ) \boldsymbol{\theta}_{3}^{(r)} \sim p\left(\boldsymbol{\theta}_{3} \mid \mathbf{y}, \boldsymbol{\theta}_{1}^{*}, \boldsymbol{\theta}_{2}^{(r)}\right) θ3(r)∼p(θ3∣y,θ1∗,θ2(r)).
如果在Gibbs samplers中有很多的blocks,则需要更多的reduced run。获得这些额外的样本需要更多的编程和计算时间,但是他们也降低了模拟误差,并且产生了更加准确的结果估计。
Chib方法的主要局限性是它需要完全了解吉布斯采样器中的所有条件分布。为了克服这一限制,Chib和Jeliazkov(2001)将基本方法扩展到处理某些条件分布是非标准的情况,并且需要Metropolis-Hastings步骤。然而,实现这些扩展要复杂得多。
为了阐述Chib‘s方法, 我们仍然使用带有MA(1)误差的AR(2)模型的边际似然来对PCE 膨胀建模。
1.4 Cross - Entropy Method
修正调和均值和Chib方法都是利用MCMC抽样来计算边际似然。通过构造,这些抽取的样本是自相关的,通常获取它们的成本很高。在这一节中,我们讨论了一个基于简单分布独立抽取样本的重要抽样估计。其基本思想是对抽样分布进行偏置,以便在模拟中生成更多的“重要值”。然后对样本进行加权以校正使用不同的分布,以给出无偏估计。在我们估计边际似然的背景下,考虑以下重要抽样估计量:。
p
(
y
)
^
I
S
=
1
R
∑
r
=
1
R
p
(
y
∣
θ
(
r
)
)
p
(
θ
(
r
)
)
g
(
θ
(
r
)
)
\widehat{p(\mathbf{y})}_{\mathrm{IS}}=\frac{1}{R} \sum_{r=1}^{R} \frac{p\left(\mathbf{y} \mid \boldsymbol{\theta}^{(r)}\right) p\left(\boldsymbol{\theta}^{(r)}\right)}{g\left(\boldsymbol{\theta}^{(r)}\right)}
p(y)
IS=R1r=1∑Rg(θ(r))p(y∣θ(r))p(θ(r))
其中,
θ
(
1
)
,
…
,
θ
(
R
)
\boldsymbol{\theta}^{(1)}, \ldots, \boldsymbol{\theta}^{(R)}
θ(1),…,θ(R)从重要性密度
g
(
⋅
)
g(·)
g(⋅)抽取的样本。 这个估计量是无偏并且相合的。但是它的性能主要取决于重要性密度的选择。
下面我们描述一种经典的交叉熵方法的变种来构造重要性密度。最初的交叉熵方法是由Rubinstein(1997,1999)开发的用于罕见事件模拟的方法,使用多层程序来获得最佳的重要性采样密度。Chan和Kroese(2012)的研究表明,MCMC方法可以在一步内更准确地获得最优重要性采样密度。我们跟随Chan和Eisenstat(2015)使用这个新变量进行边际似然估计。
交叉熵方法基于几个简单的观测值。首先,对于边际似然估计存在一个给出零方差估计的重要密度。 特别地,如果我们使用后验分布作为重要性密度,即
g
(
θ
)
=
p
(
θ
∣
y
)
=
p
(
y
∣
θ
)
p
(
θ
)
/
p
(
y
)
g(\boldsymbol{\theta})=p(\boldsymbol{\theta} \mid \mathbf{y})=p(\mathbf{y} \mid \boldsymbol{\theta}) p(\boldsymbol{\theta}) / p(\mathbf{y})
g(θ)=p(θ∣y)=p(y∣θ)p(θ)/p(y),这个对应的重要性抽样估计具有0方差。
p
(
y
)
^
I
S
=
1
R
∑
r
=
1
R
p
(
y
∣
θ
(
r
)
)
p
(
θ
(
r
)
)
g
(
θ
(
r
)
)
=
1
R
∑
r
=
1
R
p
(
θ
(
r
)
)
p
(
y
∣
θ
(
r
)
)
p
(
θ
(
r
)
)
p
(
y
∣
θ
r
)
/
p
(
y
)
=
p
(
y
)
\widehat{p(\mathbf{y})}_{\mathrm{IS}}=\frac{1}{R} \sum_{r=1}^{R} \frac{p\left(\mathbf{y} \mid \boldsymbol{\theta}^{(r)}\right) p\left(\boldsymbol{\theta}^{(r)}\right)}{g\left(\boldsymbol{\theta}^{(r)}\right)}=\frac{1}{R} \sum_{r=1}^{R} \frac{p\left(\boldsymbol{\theta}^{(r)}\right) p\left(\mathbf{y} \mid \boldsymbol{\theta}^{(r)}\right)}{p\left(\boldsymbol{\theta}^{(r)}\right) p\left(\mathbf{y} \mid \boldsymbol{\theta}_{r}\right) / p(\mathbf{y})}=p(\mathbf{y})
p(y)
IS=R1r=1∑Rg(θ(r))p(y∣θ(r))p(θ(r))=R1r=1∑Rp(θ(r))p(y∣θr)/p(y)p(θ(r))p(y∣θ(r))=p(y)
此时,我们们只需要生产R = 1的观测即可。我们把这个具有0方差的重要性密度记为
g
∗
g^*
g∗。
虽然原则上 g ∗ g^* g∗给除了 p ( y ) p(y) p(y)的最佳可能的估计量,但这在实际中是不能使用的,因为它的标准化常数也就是边际似然是我们想要估计的未知量。然而,这提出了一种获得最佳重要性密度的实用方法。直观地说,如果我们选择一个重要密度 g g g,它“足够接近” g ∗ g^* g∗,以便两者的表现相似,那么由此产生的重要性抽样估计应该具有合理的准确性。因此,我们的目标是找到一个方便的密度,在定义良好的基础上与 g ∗ g^* g∗很接近。
为此,我们考虑一个考虑由参数向量v索引的参数族
F
=
{
f
(
θ
;
v
)
}
\mathcal{F}=\{f(\boldsymbol{\theta} ; \mathbf{v})\}
F={f(θ;v)},我们在该参数族中选择重要性密度
g
g
g。一种方便的测量密度之间的距离的方法是K-L divergence或 Cross - Entropy disttance,测度公式如下:
D
(
h
1
,
h
2
)
=
∫
h
1
(
x
)
log
h
1
(
x
)
h
2
(
x
)
d
x
\mathcal{D}\left(h_{1}, h_{2}\right)=\int h_{1}(\mathbf{x}) \log \frac{h_{1}(\mathbf{x})}{h_{2}(\mathbf{x})} \mathrm{d} \mathbf{x}
D(h1,h2)=∫h1(x)logh2(x)h1(x)dx
给定此测度后,下一步我们寻找
f
(
⋅
;
v
)
∈
F
f(\cdot ; \mathbf{v}) \in \mathcal{F}
f(⋅;v)∈F使得
D
(
g
∗
,
f
(
⋅
;
v
)
)
\mathcal{D}\left(g^{*}, f(\cdot ; \mathbf{v})\right)
D(g∗,f(⋅;v))最小。
v
c
e
∗
=
argmin
v
D
(
g
∗
,
f
(
⋅
;
v
)
)
=
argmin
v
(
∫
g
∗
(
θ
)
log
g
∗
(
θ
)
d
θ
−
p
(
y
)
−
1
∫
p
(
y
∣
θ
)
p
(
θ
)
log
f
(
θ
;
v
)
d
θ
)
\begin{aligned} \mathbf{v}_{\mathrm{ce}}^{*} &=\underset{\mathbf{v}}{\operatorname{argmin}} \mathcal{D}\left(g^{*}, f(\cdot ; \mathbf{v})\right) \\ &=\underset{\mathrm{v}}{\operatorname{argmin}}\left(\int g^{*}(\boldsymbol{\theta}) \log g^{*}(\boldsymbol{\theta}) \mathrm{d} \boldsymbol{\theta}-p(\mathbf{y})^{-1} \int p(\mathbf{y} \mid \boldsymbol{\theta}) p(\boldsymbol{\theta}) \log f(\boldsymbol{\theta} ; \mathbf{v}) \mathrm{d} \boldsymbol{\theta}\right) \end{aligned}
vce∗=vargminD(g∗,f(⋅;v))=vargmin(∫g∗(θ)logg∗(θ)dθ−p(y)−1∫p(y∣θ)p(θ)logf(θ;v)dθ)
其中,我们使用这个事实,
g
∗
(
θ
)
=
p
(
y
∣
θ
)
p
(
θ
)
/
p
(
y
)
g^{*}(\boldsymbol{\theta})=p(\mathbf{y} \mid \boldsymbol{\theta}) p(\boldsymbol{\theta}) / p(\mathbf{y})
g∗(θ)=p(y∣θ)p(θ)/p(y)。由于第一项不依赖于
v
v
v,上述的最小化问题变为下述的最大化问题:
v
c
e
∗
=
argmax
v
∫
p
(
y
∣
θ
)
p
(
θ
)
log
f
(
θ
;
v
)
d
θ
\mathbf{v}_{\mathrm{ce}}^{*}=\underset{\mathrm{v}}{\operatorname{argmax}} \int p(\mathbf{y} \mid \boldsymbol{\theta}) p(\boldsymbol{\theta}) \log f(\boldsymbol{\theta} ; \mathbf{v}) \mathrm{d} \boldsymbol{\theta}
vce∗=vargmax∫p(y∣θ)p(θ)logf(θ;v)dθ
实际上,这个最优化问题很难得到解析解。相反我们考虑它的随机部分:
v
^
c
e
∗
=
argmax
v
1
M
∑
m
=
1
M
log
f
(
θ
m
;
v
)
\widehat{\mathbf{v}}_{\mathrm{ce}}^{*}=\underset{\mathbf{v}}{\operatorname{argmax}} \frac{1}{M} \sum_{m=1}^{M} \log f\left(\boldsymbol{\theta}_{m} ; \mathbf{v}\right)
v
ce∗=vargmaxM1m=1∑Mlogf(θm;v)
其中,
θ
(
1
)
,
…
,
θ
(
M
)
\boldsymbol{\theta}^{(1)}, \ldots, \boldsymbol{\theta}^{(M)}
θ(1),…,θ(M)是后验样本。换句话说,如果我们把
f
(
θ
;
v
)
f(\boldsymbol{\theta} ; \mathbf{v})
f(θ;v)看做似然函数,则
v
^
c
e
∗
\widehat{\mathbf{v}}_{\mathrm{ce}}^{*}
v
ce∗是
v
v
v的精确的极大似然估计。由于找到最大似然估计量是一个标准问题,求解(4.8)通常很容易。特别是,(4.8)的解析解可以明确地找到指数族(例如,Rubinstein和Kroese, 2004, p. 70)。
在实际中,选择的参数族 F \mathcal{F} F通常要保证每一个成员 f ( θ ; v ) f(\boldsymbol{\theta} ; \mathbf{v}) f(θ;v)是密度的乘积。例如: f ( θ ; v ) = f ( θ 1 ; v 1 ) × ⋯ × f ( θ B ; v B ) f(\boldsymbol{\theta} ; \mathbf{v})=f\left(\boldsymbol{\theta}_{1} ; \mathbf{v}_{1}\right) \times \cdots \times f\left(\boldsymbol{\theta}_{B} ; \mathbf{v}_{B}\right) f(θ;v)=f(θ1;v1)×⋯×f(θB;vB),其中, θ = ( θ 1 , … , θ B ) \boldsymbol{\theta}=\left(\boldsymbol{\theta}_{1}, \ldots, \boldsymbol{\theta}_{B}\right) θ=(θ1,…,θB) and v = ( v 1 , … , v B ) \mathbf{v}=\left(\mathbf{v}_{1}, \ldots, \mathbf{v}_{B}\right) v=(v1,…,vB)。在这种情况下,可以将可能的高维最大化问题简化为B个低维问题,然后就可以很容易地解决了。
一旦最优密度找到,将其设置为 g ( ⋅ ) = f ( ⋅ ; v ^ c e ∗ ) g(\cdot)=f\left(\cdot ; \widehat{\mathbf{v}}_{\mathrm{ce}}^{*}\right) g(⋅)=f(⋅;v ce∗),并利用其构造重要性抽样估计。这种重要抽样方法的主要优点是它快速且易于实现。此外,由于它是基于独立的样本,估计器的数字标准误差很容易得到。