Bayes Regression
贝叶斯回归是由贝叶斯派提出的一种线性回归方法,它的思想是不把参数和数据集看作是一个一个未知的数,而是看作一个已知的分布。具体来说,贝叶斯回归有两大任务,参数估计(Inference)和预测(Prediction),接下来我们就来仔细分析一下贝叶斯回归的具体做法。
Inference
Inference问题就是要求一个后验概率分布,即
p
(
W
∣
X
;
Y
)
p(W|X;Y)
p(W∣X;Y),我们仍然令这个分布为一个高斯分布
N
(
0
,
σ
2
)
N(0,\sigma^2)
N(0,σ2),那么只要我们求解出分布中的
σ
\sigma
σ,我们就得到了参数
w
w
w的分布,就可以去做预测任务。根据贝叶斯公式,我们可以得到
p
(
W
∣
X
;
Y
)
=
p
(
Y
,
W
∣
X
)
p
(
Y
∣
X
)
∝
p
(
Y
,
W
∣
X
)
=
p
(
Y
∣
W
;
X
)
P
(
W
∣
X
)
=
p
(
Y
∣
W
;
X
)
p
(
W
)
\begin{aligned} p(W|X;Y)&=\frac{p(Y,W|X)}{p(Y|X)}\\ &\propto{p(Y,W|X)} \\ &=p(Y|W;X)P(W|X)\\&=p(Y|W;X)p(W) \end{aligned}
p(W∣X;Y)=p(Y∣X)p(Y,W∣X)∝p(Y,W∣X)=p(Y∣W;X)P(W∣X)=p(Y∣W;X)p(W)
其中,
p
(
Y
∣
W
;
X
)
p(Y|W;X)
p(Y∣W;X)是模型的似然,
p
(
W
)
p(W)
p(W)是先验概率。在线性回归一节,我们推导过这个似然,即
p
(
Y
∣
W
;
X
)
=
∏
i
=
1
n
p
(
y
i
∣
w
;
x
i
)
=
∏
i
=
1
n
N
(
w
T
x
i
,
σ
2
)
p(Y|W;X)=\prod_{i=1}^n{p(y_i|w;x_i)}={\prod_{i=1}^n{N(w^Tx_i, \sigma^2)}}
p(Y∣W;X)=i=1∏np(yi∣w;xi)=i=1∏nN(wTxi,σ2)
而我们知道
p
(
w
)
=
N
(
0
,
ξ
d
)
p(w)=N(0,\xi_d)
p(w)=N(0,ξd),因此后面就是一些繁琐的计算,利用两个高斯分布乘积还是一个高斯分布就可以得到
μ
\mu
μ和
σ
\sigma
σ,需要用到一些高斯分布的性质,这里我们就不做推导了,最终得到的结果就是,当然这里我们求的是解析解,前提是
A
A
A是一个可逆矩阵
μ
w
=
σ
−
2
A
−
1
X
T
Y
s
i
g
m
a
w
=
A
−
1
A
=
σ
−
2
X
T
X
+
ξ
d
\mu_w=\sigma^{-2}A^{-1}X^TY\\ sigma_{w}=A^{-1} \\ A=\sigma^{-2}X^TX+\xi_d
μw=σ−2A−1XTYsigmaw=A−1A=σ−2XTX+ξd
多数情况下,和最小二乘法一样,是没有解析解的,那么就用梯度下降或拟牛顿法进行优化。
Prediction
得到了我们的参数以后,预测的任务就变得比较简单了。根据我们线性回归模型的定义:
m
o
d
e
l
:
{
f
(
x
)
=
w
T
x
y
=
f
(
x
)
+
ϵ
model:\left\{ \begin{matrix} f(x)=w^Tx \\ y=f(x)+\epsilon \end{matrix} \right.
model:{f(x)=wTxy=f(x)+ϵ
那么
f
(
x
)
=
x
T
w
=
x
T
N
(
μ
w
,
σ
w
)
=
N
(
x
T
μ
w
,
x
T
σ
w
x
)
f(x)=x^Tw=x^TN(\mu_w,\sigma_w)=N(x^T\mu_w,\ x^T\sigma_wx)
f(x)=xTw=xTN(μw,σw)=N(xTμw, xTσwx)
而 y = f ( x ) + ϵ y=f(x)+\epsilon y=f(x)+ϵ,因此 p ( y ∣ w ; x ) = N ( x T μ w , x T σ w x + σ 2 ) p(y|w;x)=N(x^T\mu_w,\ x^T\sigma_wx+\sigma^2) p(y∣w;x)=N(xTμw, xTσwx+σ2)