本文主要依据Pattern Recognition and Machine Learing第三章的内容展开。
1线性模型
假设有一个 D 维的输入 x,和一个连续的目标输出 t,我们可以利用一组固定的基函数ϕi(x),i=0,…,M的线性组合(组合系数为w0,…,wM),得到一个线性回归模型:
t=∑i=0Mwiϕi(x)
其中,
ϕ0(x)=1,
w0为偏置项,则上式可以简记为:
t=y(x,w)=∑i=0Mwiϕi(x)=w⊤ϕ(x)
其中
w=(w0,…,wM)⊤,
ϕ=(ϕ0,…,ϕM)⊤。
当有N个D维的输入X=(x1,…,xN)⊤和对应的目标输出t=(t1,…,tN)⊤时,同理。
由此可见,虽然模型叫做贝叶斯线性回归模型,但它的线性是体现在参数 w 上。而这个模型的线性与否实际上取决于ϕ(x),我们将其称为基函数。下面简要介绍线性基函数、多项式基函数和高斯基函数。
1.1线性基函数
在所有基函数中,最为简单的便是线性基函数,它是令:
y(x,w)=w0+w1x1+⋯+wDxD
其中
x=(x1,…,xD)⊤
1.2多项式基函数
在多项式基函数中,最简单的基函数是单变量x的一元多项式按照幂次大小进行组合,此时:
y(x,w)=w0+w1x1+⋯+wMxM
当输入变量为多维时,基函数会变得较为复杂,例如当
x=(x1,x2)时:
y(x,w)=w0+w11x1+w12x2+w21x21+w22x1x2+w23x22+⋯+wM1xM1+⋯
因此,通常情况下,我们使用多项式作为基函数时,会假定其输入变量
x的维度
D和基函数个数
M均较小;或者
x内各个特征
xi之间相互独立,则上式中所有变量交叉项全为0,只存在
xji,i∈{1,…,D},j∈{1,…,M}的项。
1.3高斯基函数
高斯基函数又称径向基函数RBF,形如:
ϕi(x)=exp(−12(x−μi)⊤Σ−1(x−μi))
其中,
μi为
ϕi(x)的高斯分布中心,
Σ为
x的变量间协方差矩阵。
除了上述基函数,较常用的还有Sigmoid基函数:
ϕj(x)=σ(x−μjs)
其中
σ(a)=11+exp(−a)
等价的我们还可以用 tanh 函数,因为
tanh(a)=2σ(a)−1,所以 sigmoid 函数的线性组合与 tanh 函数的线性组合是等价的。
1.4 基函数图像
在上述几种基函数中,线性基函数和多项式基函数是全局基函数,他们对所有X均能产生影响,而高斯基函数和Sigmoid基函数等,只会对部分特定范围内的X产生影响。多项式基函数、高斯基函数和Sigmoid基函数的图像如下所示:

2极大似然法求解
在实际的回归模型中,我们获得的数据一般都叠加有噪音ϵ,此时的回归模型可以表示为:
t=y(x,w)+ϵ
其中
p(ϵ|β)=N(ϵ|0,β−1),则似然函数为:
p(t|x,w,β)=N(t|y(x,w),β−1)
假设有一组独立同分布的数据
X=(x1,…,xN)⊤ 及其对应目标输出
t=(t1,…,tN)T。则此时的似然函数为:
p(t|X,w,β)=∏n=1NN(tn|w⊤ϕ(xn),β−1)
只考虑参数项,则对数似然为:
lnp(t|w,β)=∑n=1NlnN(tn|w⊤ϕ(xn),β−1)=N2lnβ−N2ln(2π)−βED(w)
其中
ED(w) 是平方和误差:
ED(w)=12∑n=1N[tn−w⊤ϕ(xn)]2
如果只对
w优化,则最大似然就相当于最小二乘。
令对数似然函数对w的梯度为0,得到:
▽lnp(t|w,β)=β∑n=1N[tn−w⊤ϕ(xn)]ϕ(xn)⊤=0
即:
∑n=1Ntnϕ(xn)⊤−w⊤(∑n=1Nϕ(xn)ϕ(xn)⊤)=0
此时,记:
Φ=⎛⎝⎜⎜⎜⎜⎜ϕ(x1)⊤ϕ(x2)⊤⋮ϕ(xN)⊤⎞⎠⎟⎟⎟⎟⎟=⎛⎝⎜⎜⎜⎜⎜ϕ0(x1)ϕ0(x2)⋮ϕ0(xN)ϕ1(x1)ϕ1(x2)⋮ϕ1(xN)⋯⋯⋱⋯ϕM(x1)ϕM(x2)⋮ϕM(xN)⎞⎠⎟⎟⎟⎟⎟
即
Φni=ϕi(xn),则得到:
wML=(Φ⊤Φ)−1Φ⊤t=Φ†
其中
Φ†=(Φ⊤Φ)−1Φ⊤t 是
Φ 的 Moore-Penrose伪逆。
显然上式很容易产生过拟合,为解决这个问题,在对对数似然函数求关于w的梯度时,可以考虑加入一项λEW(w)使优化项变为:
ED(w)+λEW(w)
其中λ 是正则项的系数,对ED(w)和EW(w)进行折中。一般选用w的L1或L2范数作为EW(w),其中L2范数易于求导,而L1范数容易得到稀疏解,各个范数的图像如下所示。

3贝叶斯推理求解
假定w具有某个先验分布,并认为噪音的参数 β 已知。在N个数据点的情况下,在前面我们已经得到了 p(t|w) 的分布:
p(t|X,w,β)=∏n=1NN(tn|w⊤ϕ(xn),β−1)
是一个关于 w平方的指数形式,此时,使用高斯分布作为w的先验:
p(w)=N(w|m0,S0)
根据先验与似然函数的共轭性可知,后验分布与先验具有同种形式,即后验服从高斯分布:
p(w|t)=N(w|mN,SN)
通过计算可得:
mNS−1N=SN(S−10m0+βΦ⊤t)=S−10+βΦ⊤Φ
其中
Φ=⎛⎝⎜⎜⎜⎜⎜ϕ(x1)⊤ϕ(x2)⊤⋮ϕ(xN)⊤⎞⎠⎟⎟⎟⎟⎟=⎛⎝⎜⎜⎜⎜⎜ϕ0(x1)ϕ0(x2)⋮ϕ0(xN)ϕ1(x1)ϕ1(x2)⋮ϕ1(xN)⋯⋯⋱⋯ϕM(x1)ϕM(x2)⋮ϕM(xn)⎞⎠⎟⎟⎟⎟⎟
在高斯分布中,均值=众数,因此,由最大后验可得:
wMAP=mN
如果我们考虑一个无限宽的先验:S0=α−1I,α→0,那么我们的最大后验结果等同于极大似然的结果;类似的,如果 N=0,那么后验分布就是先验分布。同时,我们可以将这个模型改成在线学习模型,即把前面一个数据训练得到的后验作为新的先验,在用新的数据计算新的后验,以此过程进行迭代,即可产生对数据进行在线学习的回归模型。
同时,如果考虑w的先验分布为:
p(w|α)=N(0,αI)
则相应地,
mNS−1N=βSNΦ⊤t=αI+βΦ⊤Φ
此时,后验分布的对数为:
lnp(w|t)=−β2∑n=1N{tn−w⊤ϕ(xn)}2likelihood−α2w⊤wprior+const
由此可见,在贝叶斯推理方法下,最大后验分布相当于已经增加了一个L2范数的正则项,正则系数 λ=αβ。
4预测分布
由上述贝叶斯推理过程可以获得线性回归模型中基函数的各项系数mN及其偏差SN,但通常我们更关心对于一个新的输入x,其输出t的分布:
p(t|x,t,α,β)=∫p(t|x,w,β)p(w|t,α,β)dw
因为
p(t|x,w,β)p(w|t,α,β)=N(t|y(x,w),β−1)=N(w|mN,SN)
而
y(x,w)=w⊤ϕ(x)
因此:
p(t|x,t,α,β)=∫N(t|w⊤ϕ(x),β−1)N(w|mN,SN)dw
根据条件高斯分布和边缘高斯分布的性质,可得:
p(t|x,t,α,β)σ2N(x)=N(t|m⊤Nϕ(x),σ2N(x))=1β+ϕ(x)⊤SNϕ(x)
方差σ2N(x)的第一部分表示训练数据的噪声,第二部分反映了参数w的偏差对预测输出的不确定性的影响。
随训练数据量增加,后验分布p(w|t,α,β)变得更窄,参数w 的偏差减小,从而
σ2N+1(x)≤σ2N(x)
当训练数据量N→∞时,方差σ2N(x)的第二项趋于 0,从而方差趋于1β,趋近于原始数据的真实分布而不会出现过拟合。