本文首发于我的个人博客Suixin’s Blog
原文: https://suixinblog.cn/2018/10/linear-classification4.html 作者: Suixin
拉普拉斯近似
目标:因为待近似的分布
p
(
z
)
p(\pmb{z})
p(zzz)不是高斯分布,故寻找一个高斯近似
q
(
z
)
q(\pmb{z})
q(zzz),它的中心位于
p
(
z
)
p(\pmb{z})
p(zzz)的众数的位置。
思路:将待近似的分布
p
(
z
)
p(\pmb{z})
p(zzz)在众数
z
0
\pmb{z}_0
zzz0做泰勒展开,去掉三阶项以及更高阶。
假设待近似分布为
M
M
M维
p
(
z
)
=
f
(
z
)
Z
p(\pmb{z})=\frac{f(\pmb{z})}{Z}
p(zzz)=Zf(zzz),在众数
z
0
\pmb{z}_0
zzz0处展开,有
ln
f
(
z
)
≃
ln
f
(
z
0
)
−
1
2
(
z
−
z
0
)
⊤
A
(
z
−
z
0
)
\ln f(\pmb{z})\simeq \ln f(\pmb{z}_0)-\frac{1}{2}(\pmb{z}-\pmb{z}_0)^\top A(\pmb{z}-\pmb{z}_0)
lnf(zzz)≃lnf(zzz0)−21(zzz−zzz0)⊤A(zzz−zzz0)
其中,
M
×
M
M\times M
M×M的Hessian矩阵
A
=
−
∇
∇
ln
f
(
z
)
∣
z
=
z
0
A=-\nabla\nabla\ln f(\pmb{z})|_{\pmb{z}=\pmb{z}_0}
A=−∇∇lnf(zzz)∣zzz=zzz0。两边同取指数,有
f
(
z
)
≃
f
(
z
0
)
exp
{
−
1
2
(
z
−
z
0
)
⊤
A
(
z
−
z
0
)
}
f(\pmb{z})\simeq f(\pmb{z}_0)\exp\{-\frac{1}{2}(\pmb{z}-\pmb{z}_0)^\top A(\pmb{z}-\pmb{z}_0)\}
f(zzz)≃f(zzz0)exp{−21(zzz−zzz0)⊤A(zzz−zzz0)}
分布
q
(
z
)
q(\pmb{z})
q(zzz)正比于
f
(
z
)
f(\pmb{z})
f(zzz),因此
q
(
z
)
=
∣
A
∣
1
2
(
2
π
)
M
2
exp
{
−
1
2
(
z
−
z
0
)
⊤
A
(
z
−
z
0
)
}
=
N
(
z
∣
z
0
,
A
−
1
)
q(\pmb{z})=\frac{|A|^\frac{1}{2}}{(2\pi )^\frac{M}{2}}\exp\{-\frac{1}{2}(\pmb{z}-\pmb{z}_0)^\top A(\pmb{z}-\pmb{z}_0)\}=\mathscr{N}(\pmb{z}|\pmb{z}_0,A^{-1})
q(zzz)=(2π)2M∣A∣21exp{−21(zzz−zzz0)⊤A(zzz−zzz0)}=N(zzz∣zzz0,A−1)
其中,这个高斯分布well-define的前提为
A
A
A是正定的,即驻点
z
0
\pmb{z}_0
zzz0必须为一个局部极大值。在实际应用拉普拉斯近似时需计算众数,一般通过数值优化算法得到。
缺点: 对于多峰问题会给出较差的结果。
优点: 在数据点较多的情况下,会更有用。
贝叶斯Logistic回归
Logistic回归不能进行精确的贝叶斯推断的原因:后验分布为先验分布与似然函数的乘积的归一化,而似然函数为一系列sigmoid函数的乘积。
对后验分布做拉普拉斯近似
假设参数
w
\pmb{w}
www有高斯先验
p
(
w
)
=
N
(
w
∣
m
0
,
S
0
)
p(\pmb{w})=\mathscr{N}(\pmb{w}|\pmb{m}_0,S_0)
p(www)=N(www∣mmm0,S0)
其中,
m
0
\pmb{m}_0
mmm0和
S
0
S_0
S0为固定的超参数。
w
\pmb{w}
www的后验分布为
p
(
w
∣
t
)
∝
p
(
w
)
p
(
t
∣
w
)
p(\pmb{w}|\textbf{t})\propto p(\pmb{w})p(\textbf{t}|\pmb{w})
p(www∣t)∝p(www)p(t∣www)
化简可得对数后验为
ln
p
(
w
∣
t
)
=
−
1
2
(
w
−
m
0
)
⊤
S
0
−
1
(
w
−
m
0
)
+
∑
n
=
1
N
{
t
n
ln
y
n
+
(
1
−
t
n
)
ln
(
1
−
y
n
)
}
+
C
o
n
s
t
a
n
t
\ln p(\pmb{w}|\textbf{t})=-\frac{1}{2}(\pmb{w}-\pmb{m}_0)^\top S_0^{-1}(\pmb{w}-\pmb{m}_0)+\sum_{n=1}^N\{t_n\ln y_n+(1-t_n)\ln(1-y_n)\}+Constant
lnp(www∣t)=−21(www−mmm0)⊤S0−1(www−mmm0)+n=1∑N{tnlnyn+(1−tn)ln(1−yn)}+Constant
其中,符号与上一篇文章一致。现在,只需极大化后验概率分布,求出MAP解
w
M
A
P
\pmb{w}_{MAP}
wwwMAP,再根据前面的拉普拉斯近似结果可得后验分布的高斯近似为
q
(
w
)
=
N
(
w
∣
w
M
A
P
,
S
N
)
q(\pmb{w})=\mathscr{N}(\pmb{w}|\pmb{w}_{MAP},S_N)
q(www)=N(www∣wwwMAP,SN)
其中,
S
N
−
1
=
−
∇
∇
ln
p
(
w
∣
t
)
=
S
0
−
1
+
∑
n
=
1
N
y
n
(
1
−
y
n
)
ϕ
n
ϕ
n
⊤
S_N^{-1}=-\nabla\nabla\ln p(\pmb{w}|\textbf{t})=S_0^{-1}+\sum_{n=1}^Ny_n(1-y_n)\pmb{\phi}_n\pmb{\phi}_n^\top
SN−1=−∇∇lnp(www∣t)=S0−1+n=1∑Nyn(1−yn)ϕϕϕnϕϕϕn⊤
预测分布
给定一个新的特征向量
ϕ
(
x
)
\phi(\pmb{x})
ϕ(xxx),类别
C
1
C_1
C1的预测分布可对后验概率
p
(
w
∣
t
)
p(\pmb{w}|\textbf{t})
p(www∣t)积分得到
p
(
C
1
∣
ϕ
,
t
)
=
∫
p
(
C
1
∣
ϕ
,
w
)
p
(
w
∣
t
)
d
w
≃
∫
σ
(
w
⊤
ϕ
)
q
(
w
)
d
w
p(C_1|\pmb{\phi},\textbf{t})=\int p(C_1|\pmb{\phi},\pmb{w})p(\pmb{w}|\textbf{t})d\pmb{w}\simeq\int \sigma(\pmb{w}^\top \pmb{\phi})q(\pmb{w})d\pmb{w}
p(C1∣ϕϕϕ,t)=∫p(C1∣ϕϕϕ,www)p(www∣t)dwww≃∫σ(www⊤ϕϕϕ)q(www)dwww
具体求解预测分布过程见参考4.5.2。