PRML第三章之回归的线性模型
文章目录
- 线性基函数模型
- 最大似然和最小平方
- 最⼩平⽅的⼏何描述
- 顺序学习
- 正则化最⼩平⽅
- 多个输出
- 偏置-⽅差分解
- 贝叶斯线性回归
- 参数分布
- 预测分布
- 等价核
- 贝叶斯模型的比较
- 证据近似
- 计算证据函数
- 最⼤化证据函数
- 参数的有效数量
- 固定基函数的局限性
参考马春鹏 《模式识别与机器学习》翻译
本章讨论的是线性回归,从一个概率的观点,我们的任务是对 p(t∣x)p(t|x)p(t∣x)进行建模,线性模型是后面要讨论更复杂模型的基础。
线性基函数模型
线性回归最基本的定义:
(3.1)y(x,w)=w0+w1x1+…+wDxDy ( \boldsymbol { x } , \boldsymbol { w } ) = w _ 0+ w _ 1 x _ 1+ \ldots + w _Dx _ D \tag{3.1}y(x,w)=w0+w1x1+…+wDxD(3.1)
由于线性函数的局限性(绝大部分模型都是非线性的),通过将上述公式中的xxx换成ϕ(x)\phi { (x) }ϕ(x),通过把M个非线性(相对于x来说)模型进行组合
(3.2)y(x,w)=w0+∑j=1M−1wjϕj(x)=∑j=0M−1wjϕj(x)=wTϕ(x)y ( \boldsymbol { x } , \boldsymbol { w } ) = w _ { 0 } + \sum _ { j = 1 } ^ { M - 1 } w _ { j } \phi _ { j } ( \boldsymbol { x } ) = \sum _ { j = 0 } ^ { M - 1 } w _ { j } \phi _ { j } ( \mathbf { x } ) = \mathbf { w } ^ { \mathrm { T } } \boldsymbol { \phi } ( \mathbf { x } ) \tag{3.2}y(x,w)=w0+j=1∑M−1wjϕj(x)=j=0∑M−1wjϕj(x)=wTϕ(x)(3.2)
其中ϕj(x)\phi_j{ (x) }ϕj(x)被称为基函数(basis function)。通过把下标j的最⼤值记作M−1,这个模型中的参数总数为M。
通过使⽤⾮线性基函数,我们能够让函数y(x, w)成为输⼊向量x的⼀个⾮线性函数。但是,形如(3.2)的函数被称为线性模型,因为这个函数是www的线性函数。
常用的基函数有:
- 高斯基函数
(3.3)ϕj(x)=exp{−(x−μj)22s2}\phi _ { j } ( x ) = \exp \left\{ - \frac { \left( x - \mu _ { j } \right) ^ { 2 } } { 2 s ^ { 2 } } \right\} \tag{3.3}ϕj(x)=exp{−2s2(x−μj)2}(3.3) - sigmoid基函数
(3.4)ϕj(x)=σ(x−μjs)\phi _ { j } ( x ) = \sigma \left( \frac { x - \mu _ { j } } { s } \right) \tag{3.4}ϕj(x)=σ(sx−μj)(3.4)
(3.5)σa=11+exp(−a)\sigma _ { a } = \frac { 1 } { 1 + \exp ( - a ) } \tag{3.5}σa=1+exp(−a)1(3.5)
本章中的⼤部分讨论都与基函数的选择⽆关,我们不会具体化基函数的特定形式,为了保持记号的简洁,我们把注意⼒集中于单⼀⽬标变量t的情形。
最大似然和最小平方
本小章节讨论最⼩平⽅的⽅法与最⼤似然⽅法的关系。
我们假设⽬标变量t由确定的函数y(x, w)给出,这个函数被附加了⾼斯噪声,
(3.6)t=y(x,w)+ϵt = y ( \boldsymbol { x } , \boldsymbol { w } ) + \epsilon \tag{3.6}t=y(x,w)+ϵ(3.6)
其中ϵ是⼀个零均值的⾼斯随机变量,精度(⽅差的倒数)为β。因此我们有
(3.7)p(t∣x,w,β)=N(t∣y(x,w),β−1)p ( t | \boldsymbol { x } , \boldsymbol { w } , \beta ) = \mathcal { N } ( t | y ( \boldsymbol { x } , \boldsymbol { w } ) , \beta ^ { - 1 } ) \tag{3.7}p(t∣x,w,β)=N(t∣y(x,w),β−1)(3.7)
最小化平⽅损失函数等价于预测目标t的条件均值(第一章介绍),可以写作
(3.8)E[t∣x]=∫tp(t∣x)dt=y(x,w)\mathbb { E } [ t | \boldsymbol { x } ] = \int t p ( t | \boldsymbol { x } ) \mathrm { d } t = y ( \boldsymbol { x } , \boldsymbol { w } ) \tag{3.8}E[t∣x]=∫tp(t∣x)dt=y(x,w)(3.8)
对于输入X={x1,…,xN}\boldsymbol { X } = \left\{ \boldsymbol { x } _ { 1 } , \ldots , \boldsymbol { x } _ { N } \right\}X={x1,…,xN},对应的目标值t={t1,…,tN}T\boldsymbol { t } = \left\{ \boldsymbol { t } _ { 1 } , \ldots , \boldsymbol { t } _ { N } \right\}^Tt={t1,…,tN}T,假设这些数据点是独⽴地从分布(3.7)中抽取的。似然函数的表达式如下,其中参数w和β是可以调节的,形式为
(3.9)p(t∣X,w,β)=∏n=1NN(tn∣wTϕ(xn),β−1)p ( \mathbf { t } | \boldsymbol { X } , \boldsymbol { w } , \beta ) = \prod _ { n = 1 } ^ { N } \mathcal { N } \left( t _ { n } | \boldsymbol { w } ^ { T } \boldsymbol { \phi } \left( \boldsymbol { x } _ { n } \right) , \beta ^ { - 1 } \right) \tag{3.9}p(t∣X,w,β)=n=1∏NN(tn∣wTϕ(xn),β−1)(3.9)
为了保持记号的简洁性,我们在诸如p(i | x, w, β)这类的表达式中不显式地写出x。取对数似然函数的对数:
(3.10)lnp(t∣w,β)=∑n=1NlnN(tn∣wTϕ(xn),β−1)=N2lnβ−N2ln(2π)−βED(w)\begin{aligned} \ln p ( \mathbf { t } | \boldsymbol { w } , \beta ) & = \sum _ { n = 1 } ^ { N } \ln \mathcal { N } \left( t _ { n } | \boldsymbol { w } ^ { T } \boldsymbol { \phi } \left( \boldsymbol { x } _ { n } \right) , \beta ^ { - 1 } \right) \\ & = \frac { N } { 2 } \ln \beta - \frac { N } { 2 } \ln ( 2 \pi ) - \beta E _ { D } ( \boldsymbol { w } ) \end{aligned} \tag{3.10}lnp(t∣w,β)=n=1∑NlnN(tn∣wTϕ(xn),β−1)=2Nlnβ−2Nln(2π)−βED(w)(3.10)
其中平⽅和误差函数的定义为:
(3.11)ED(w)=12∑n=1N{tn−wTϕ(xn)}2E _ { D } ( \boldsymbol { w } ) = \frac { 1 } { 2 } \sum _ { n = 1 } ^ { N } \left\{ t _ { n } - \boldsymbol { w } ^ { T } \boldsymbol { \phi } \left( \boldsymbol { x } _ { n } \right) \right\} ^ { 2 } \tag{3.11}ED(w)=21n=1∑N{tn−wTϕ(xn)}2(3.11)
使⽤最⼤似然的⽅法确定w和β,首先似然函数对于w的梯度为
(3.12)∇lnp(t∣w,β)=β∑n=1N{tn−wTϕ(xn)}ϕ(xn)T\nabla \ln p ( \mathbf { t } | \boldsymbol { w } , \beta ) = \beta \sum _ { n = 1 } ^ { N } \left\{ t _ { n } - \boldsymbol { w } ^ { T } \boldsymbol { \phi } \left( \boldsymbol { x } _ { n } \right) \right\} \boldsymbol { \phi } \left( \boldsymbol { x } _ { n } \right) ^ { T } \tag{3.12}∇lnp(t∣w,β)=βn=1∑N{tn−wTϕ(xn)}ϕ(xn)T(3.12)
令这个梯度等于零
(3.13)0=∑n=1Ntnϕ(xn)T−wT(∑n=1Nϕ(xn)ϕ(xn)T)0 = \sum _ { n = 1 } ^ { N } t _ { n } \phi \left( \boldsymbol { x } _ { n } \right) ^ { T } - \boldsymbol { w } ^ { T } \left( \sum _ { n = 1 } ^ { N } \phi \left( \boldsymbol { x } _ { n } \right) \boldsymbol { \phi } \left( \boldsymbol { x } _ { n } \right) ^ { T } \right) \tag{3.13}0=n=1∑Ntnϕ(xn)T−wT(n=1∑Nϕ(xn)ϕ(xn)T)(3.13)
所以
(3.14)wML=(ΦTΦ)−1ΦTt\boldsymbol { w } _ { M L } = \left( \boldsymbol { \Phi } ^ { T } \boldsymbol { \Phi } \right) ^ { - 1 } \boldsymbol { \Phi } ^ { T } \mathbf { t } \tag{3.14}wML=(ΦTΦ)−1ΦTt(3.14)
这⾥Φ是⼀个N × M的矩阵,被称为设计矩阵(design matrix)
(3.15)Φ=(ϕ0(x1)ϕ1(x1)⋯ϕM−1(x1)ϕ0(x2)ϕ1(x2)⋯ϕM−1(x2)⋮⋮⋱⋮ϕ0(xN)ϕ1(xN)⋯ϕM−1(xN))\mathbf { \Phi } = \left( \begin{array} { c c c c } { \phi _ { 0 } \left( \boldsymbol { x } _ { 1 } \right) } & { \phi _ { 1 } \left( \boldsymbol { x } _ { 1 } \right) } & { \cdots } & { \phi _ { M - 1 } \left( \boldsymbol { x } _ { 1 } \right) } \\ { \phi _ { 0 } \left( \boldsymbol { x } _ { 2 } \right) } & { \phi _ { 1 } \left( \boldsymbol { x } _ { 2 } \right) } & { \cdots } & { \phi _ { M - 1 } \left( \boldsymbol { x } _ { 2 } \right) } \\ { \vdots } & { \vdots } & { \ddots } & { \vdots } \\ { \phi _ { 0 } \left( \boldsymbol { x } _ { N } \right) } & { \phi _ { 1 } \left( \boldsymbol { x } _ { N } \right) } & { \cdots } & { \phi _ { M - 1 } \left( \boldsymbol { x } _ { N } \right) } \end{array} \right) \tag{3.15}Φ=⎝⎜⎜⎜⎛ϕ0(x1)ϕ0(x2)⋮ϕ0(xN)ϕ1(x1)ϕ1(x2)⋮ϕ1(xN)⋯⋯⋱⋯ϕM−1(x1)ϕM−1(x2)⋮ϕM−1(xN)⎠⎟⎟⎟⎞(3.15)
通过最大化似然函数,可求出对β\betaβ
( 3.16)1βML=1N∑n=1N{tn−wMLTϕ(xn)}2\frac { 1 } { \beta _ { M L } } = \frac { 1 } { N } \sum _ { n = 1 } ^ { N } \left\{ t _ { n } - \boldsymbol { w } _ { M L } ^ { T } \boldsymbol { \phi } \left( \boldsymbol { x } _ { n } \right) \right\} ^ { 2 } \tag{ 3.16}βML1=N1n=1∑N{tn−wMLTϕ(xn)}2( 3.16)
可以看出精度的倒数为⽬标值在回归函数周围的残留⽅差。
现在,我们可以更加深刻地认识偏置参数w0。如果我们显式地写出偏置参数,那么误差函数改写为
(3.17)ED(w)=12∑n=1N{tn−w0−∑j=1M−1wjϕj(xn)}2E _ { D } ( \boldsymbol { w } ) = \frac { 1 } { 2 } \sum _ { n = 1 } ^ { N } \left\{ t _ { n } - w _ { 0 } - \sum _ { j = 1 } ^ { M - 1 } w _ { j } \phi _ { j } \left( \boldsymbol { x } _ { n } \right) \right\} ^ { 2 } \tag{3.17}ED(w)=21n=1∑N{tn−w0−j=1∑M−1wjϕj(xn)}2(3.17)
对w0w_0w0求导并令其导数为0,则求出w0w_0w0为:
(3.18)w0=t‾−∑j=1M−1wjϕ‾jw _ { 0 } = \overline { t } - \sum _ { j = 1 } ^ { M - 1 } w _ { j } \overline { \phi } _ { j } \tag{3.18}w0=t−j=1∑M−1wjϕj(3.18)
其中
(3.19)t‾=1N∑n=1Ntn,ϕ‾j=1N∑n=1Nϕj(xn)\overline { t } = \frac { 1 } { N } \sum _ { n = 1 } ^ { N } t _ { n } , \quad \overline { \phi } _ { j } = \frac { 1 } { N } \sum _ { n = 1 } ^ { N } \phi _ { j } \left( \boldsymbol { x } _ { n } \right) \tag{3.19}t=N1n=1∑Ntn,ϕj=N1n=1∑Nϕj(xn)(3.19)
可以看出偏置等于目标值的均值和预测值的均值的差。
最⼩平⽅的⼏何描述
对于输入X={x1,…,xN}\boldsymbol { X } = \left\{ \boldsymbol { x } _ { 1 } , \ldots , \boldsymbol { x } _ { N } \right\}X={x1,…,xN},对应的目标值t={t1,…,tN}T\boldsymbol { t } = \left\{ \boldsymbol { t } _ { 1 } , \ldots , \boldsymbol { t } _ { N } \right\}^Tt={t1,…,tN}T,考虑N维空间的n个坐标轴以此对应tnt_ntn,因此t=(t1,…,tN)T\mathbf { t } = \left( t _ { 1 } , \dots , t _ { N } \right) ^ { T }t=(t1,…,tN)T为此空间的一个向量,这N个xxx对应的第j个基向量ϕj({x1,…,xN})\phi _ { j } ( \left\{ \boldsymbol { x } _ { 1 } , \ldots , \boldsymbol { x } _ { N } \right\})ϕj({x1,…,xN})也是N维向量,如果基函数数量M小于数据量N,那么M个向量ϕjϕ_jϕj将会张成⼀个M维的⼦空间SSS,我们定义yyy是⼀个N维向量,它的第n个元素为y(xn,w)y(x_n, w)y(xn,w),其中n = 1,…,N。由于yyy是M个向量ϕjϕ_jϕj的任意线性组合,因此它可以位于M维⼦空间的任何位置。
平⽅和误差函数(3.11)就等于yyy和ttt之间的平⽅欧⽒距离,为了是两个点的向量的距离最短,因此,w的最⼩平⽅解为使位于⼦空间SSS(M维)的yyy距离ttt最近。
如下图所示,举个例子,假设t=(1,1,0)t = (1,1,0)t=(1,1,0) 是一个3维向量,而ϕ1=(1,0,0),ϕ2=(0,1,0)\phi_1 = (1,0,0),\phi_2 = (0,1,0)ϕ1=(1,0,0),ϕ2=(0,1,0)实际上这两个向量张成的是2维空间(在平面中),从t出发做投影到空间SSS,此时的投影便是yyy,因为此时y到ty到ty到t的距离最短嘛。
对于在之前得到的wMLw_{ML}wML
(3.14)wML=(ΦTΦ)−1ΦTt\boldsymbol { w } _ { M L } = \left( \boldsymbol { \Phi } ^ { T } \boldsymbol { \Phi } \right) ^ { - 1 } \boldsymbol { \Phi } ^ { T } \mathbf { t } \tag{3.14} wML=(ΦTΦ)−1ΦTt(3.14)
而y=ϕwMLy = \phi w_{ML}y=ϕwML可以推导一下这个式子正是t在空间SSS的投影
顺序学习
一次处理所有数据计算量相当大,现在为了减少一次计算成本来每次计算一个数据点,这称为顺序学习。对于顺序学习可以通过随机梯度下降(stochastic gradient descent)进行迭代。对于误差和E=∑nEnE = \sum_n E_nE=∑nEn,当计算到第n个数据点时,对参数做一下更新
(3.20)w(τ+1)=w(τ)−η∇En\boldsymbol { w } ^ { ( \tau + 1 ) } = \boldsymbol { w } ^ { ( \tau ) } - \eta \nabla E _ { n } \tag{3.20}w(τ+1)=w(τ)−η∇En(3.20)
对于之前个平方和误差的情况
(3.21)w(τ+1)=w(τ)+η(tn−w(τ)Tϕn)ϕn\boldsymbol { w } ^ { ( \tau + 1 ) } = \boldsymbol { w } ^ { ( \tau ) } + \eta \left( t _ { n } - \boldsymbol { w } ^ { ( \tau ) T } \boldsymbol { \phi } _ { n } \right) \boldsymbol { \phi } _ { n } \tag{3.21}w(τ+1)=w(τ)+η(tn−w(τ)Tϕn)ϕn(3.21)
正则化最⼩平⽅
为了防止模型过拟合,在误差函数中增加正则项
(3.22)ED(w)+λEW(w),其中EW(w)=12wTwE _ { D } ( \boldsymbol { w } ) + \lambda E _ { W } ( \boldsymbol { w } ) \tag{3.22} \text{,其中} E _ { W } ( \boldsymbol { w } ) = \frac { 1 } { 2 } \boldsymbol { w } ^ { T } \boldsymbol { w }ED(w)+λEW(w),其中EW(w)=21wTw(3.22)
如果误差函数为式3.11,则总误差为
(3.23)12∑n=1N{tn−wTϕ(xn)}2+λ2wTw\frac { 1 } { 2 } \sum _ { n = 1 } ^ { N } \left\{ t _ { n } - \boldsymbol { w } ^ { T } \boldsymbol { \phi } \left( \boldsymbol { x } _ { n } \right) \right\} ^ { 2 } + \frac { \lambda } { 2 } \boldsymbol { w } ^ { T } \boldsymbol { w } \tag{3.23}21n=1∑N{tn−wTϕ(xn)}2+2λwTw(3.23)
正则项更为一般的情况
12∑n=1N{tn−wTΦ(xn)}2+λ2∑j=1M∣wj∣q\frac { 1 } { 2 } \sum _ { n = 1 } ^ { N } \left\{ t _ { n } - \boldsymbol { w } ^ { T } \mathbf { \Phi } \left( \boldsymbol { x } _ { n } \right) \right\} ^ { 2 } + \frac { \lambda } { 2 } \sum _ { j = 1 } ^ { M } \left| w _ { j } \right| ^ { q }21n=1∑N{tn−wTΦ(xn)}2+2λj=1∑M∣wj∣q
q = 1的情形被称为套索(lasso)(Tibshirani, 1996)。它的性质为:如果λ充分⼤,那么某些系数wjw_jwj会变为零,从⽽产⽣了⼀个稀疏(sparse)模型,如下图
关于稀疏的解析,详细可以见知乎:https://zhuanlan.zhihu.com/p/50142573
多个输出
对于一个目标变量有个多个输出时,更常⽤的⽅法是对⽬标向量的所有分量使⽤⼀组相同的基函数来建模。
(3.24)y(x,w)=WTϕ(x)\boldsymbol { y } ( \boldsymbol { x } , \boldsymbol { w } ) = \boldsymbol { W } ^ { T } \boldsymbol { \phi } ( \boldsymbol { x } ) \tag{3.24}y(x,w)=WTϕ(x)(3.24)
其中y是⼀个K维列向量,W是⼀个M × K的参数矩阵,ϕ(x)\phi (x)ϕ(x)是⼀个M为列向量。
用最大似然函数求解得到
(3.25)WML=(ΦTΦ)−1ΦTT\boldsymbol { W } _ { M L } = \left( \boldsymbol { \Phi } ^ { T } \boldsymbol { \Phi } \right) ^ { - 1 } \boldsymbol { \Phi } ^ { T } \boldsymbol { T } \tag{3.25}WML=(ΦTΦ)−1ΦTT(3.25)
对于t的每一个值tkt_ktk有
(3.26)wk=(ΦTΦ)−1ΦTtk=Φ†tk\boldsymbol { w } _ { k } = \left( \boldsymbol { \Phi } ^ { T } \mathbf { \Phi } \right) ^ { - 1 } \mathbf { \Phi } ^ { T } \mathbf { t } _ { k } = \mathbf { \Phi } ^ { \dagger } \mathbf { t } _ { k } \tag{3.26}wk=(ΦTΦ)−1ΦTtk=Φ†tk(3.26)
偏置-⽅差分解
对于之前我们讨论的线性模型,我们假定了基函数的形式和数量都是固定的,会有以下问题
- 使⽤最⼤似然⽅法或者说使⽤最⼩平⽅⽅法,会导致严重的过拟合问题。
- 通过限制基函数的数量来避免过拟合问题有⼀个负作⽤,会影响模型描述数据的能力。
- 引⼊正则化项,如何确定正则化系数λ的合适的值。
本章中,我们会稍微深⼊地从贝叶斯观点讨论模型的复杂度。但是,在进⾏这样的讨论之前,从频率学家的观点考虑⼀下模型的复杂度问题。这种频率学家的观点被称为偏置-⽅差折中(bias-variance trade-off)。
在第一章证明了平⽅损失函数的期望为
(3.27)E[L]=∫{y(x)−h(x)}2p(x)dx+∬{h(x)−t}2p(x,t)dxdt\mathbb { E } [ L ] = \int \{ y ( \boldsymbol { x } ) - h ( \boldsymbol { x } ) \} ^ { 2 } p ( \boldsymbol { x } ) \mathrm { d } \boldsymbol { x } + \iint \{ h ( \boldsymbol { x } ) - t \} ^ { 2 } p ( \boldsymbol { x } , t ) \mathrm { d } \boldsymbol { x } \mathrm { d } t \tag{3.27}E[L]=∫{y(x)−h(x)}2p(x)dx+∬{h(x)−t}2p(x,t)dxdt(3.27)
第二项为数据噪声(数据集中的数据和事实情况不符合),第一项表示我们要找到一个y(x)使其最小,最好为零,然而这是不可能的(因为没有无线多的数据和计算能力),只能尽可能的小。
对于上式第一项,对于一个特定的数据集DDD
(3.28)y(x;D)−h(x)2{y(x;D) - h(x)}^2 \tag{3.28}y(x;D)−h(x)2(3.28)
由于这个量与特定的数据集D相关,因此我们对所有的数据集取平均。对一个单独的输入x
(3.29){y(x;D)−ED[y(x;D)]+ED[y(x;D)]−h(x)}2={y(x;D)−ED[y(x;D)]}2+{ED[y(x;D)]−h(x)}2+2{y(x;D)−ED[y(x;D)]}{ED[y(x;D)]−h(x)}\begin{array} { r l } { \left\{ y ( \boldsymbol { x } ; \mathcal { D } ) - \mathbb { E } _ { \mathcal { D } } [ y ( \boldsymbol { x } ; \mathcal { D } ) ] + \mathbb { E } _ { \mathcal { D } } [ y ( \boldsymbol { x } ; \mathcal { D } ) ] - h ( \boldsymbol { x } ) \right\} ^ { 2 } } & \\ = { \left \{ y ( \boldsymbol { x } ; \mathcal { D } ) - \mathbb { E } _ { \mathcal { D } } [ y ( \boldsymbol { x } ; \mathcal { D } ) ] \right\} ^ { 2 } + \left\{ \mathbb { E } _ { \mathcal { D } } [ y ( \boldsymbol { x } ; \mathcal { D } ) ] - h ( \boldsymbol { x } ) \right\} ^ { 2 } } { } & \\{ + 2 \left\{ y ( \boldsymbol { x } ; \mathcal { D } ) - \mathbb { E } _ { \mathcal { D } } [ y ( \boldsymbol { x } ; \mathcal { D } ) ] \right\} \left\{ \mathbb { E } _ { \mathcal { D } } [ y ( \boldsymbol { x } ; \mathcal { D } ) ] - h ( \boldsymbol { x } ) \right\} } \end{array} \tag{3.29}{y(x;D)−ED[y(x;D)]+ED[y(x;D)]−h(x)}2={y(x;D)−ED[y(x;D)]}2+{ED[y(x;D)]−h(x)}2+2{y(x;D)−ED[y(x;D)]}{ED[y(x;D)]−h(x)}(3.29)
因为上式为一个数据点的值,现在对其关于DDD求期望
(3.30)ED[{y(x;D)−h(x)}2]={ED[y(x;D)]−h(x)}2⎵(偏置)2+ED[{y(x;D)−ED[y(x,D)]}2]⎵方差\begin{aligned} E_D[\{y(x;\mathcal{D})-h(x)\}^2] &= \begin{matrix} \underbrace{\{ E_D[y(x;\mathcal{D})]-h(x) \}^2} \\ (偏置)^2\end{matrix} + \begin{matrix} \underbrace{ E_D[\{y(x;\mathcal{D}) - E_D[y(x,\mathcal{D})]\}^2]} \\ 方差\end{matrix} \end{aligned} \tag{3.30}ED[{y(x;D)−h(x)}2]={ED[y(x;D)]−h(x)}2(偏置)2+ED[{y(x;D)−ED[y(x,D)]}2]方差(3.30)
上式第⼀项,被称为平⽅偏置(bias),表⽰所有数据集的平均预测与预期的回归函数之间的差异。第⼆项,被称为⽅差(variance),度量了对于单独的数据集,模型所给出的解在平均值附近波动的情况,因此也就度量了函数y(x; D)对于特定的数据集的选择的敏感程度。
上述是单独的x的情况,对一个所有输入x有
(3.31)期望损失=偏置2+⽅差+噪声期望损失 = 偏置^2 + ⽅差 + 噪声 \tag{3.31}期望损失=偏置2+⽅差+噪声(3.31)
(3.32)偏置2={ED[y(x;D)]−h(x)}2p(x)dx偏置^2= \left\{ \mathbb { E } _ { \mathcal { D } } [ y ( \boldsymbol { x } ; \mathcal { D } ) ] - h ( \boldsymbol { x } ) \right\} ^ { 2 } p ( \boldsymbol { x } ) \mathrm { d } \boldsymbol { x } \tag{3.32}偏置2={ED[y(x;D)]−h(x)}2p(x)dx(3.32)
(3.33)方差=∫ED[{y(x;D)−ED[y(x;D)]}2]p(x)dx方差 = \int \mathbb { E } _ { \mathcal { D } } \left[ \left\{ y ( \boldsymbol { x } ; \mathcal { D } ) - \mathbb { E } _ { \mathcal { D } } [ y ( \boldsymbol { x } ; \mathcal { D } ) ] \right\} ^ { 2 } \right] p ( \boldsymbol { x } ) \mathrm { d } \boldsymbol { x } \tag{3.33}方差=∫ED[{y(x;D)−ED[y(x;D)]}2]p(x)dx(3.33)
(3.34)噪声=∬{h(x)−t}2p(x,t)dxdt噪声 = \iint \{ h ( \boldsymbol { x } ) - t \} ^ { 2 } p ( \boldsymbol { x } , t ) \mathrm { d } \boldsymbol { x } \mathrm { d } t \tag{3.34}噪声=∬{h(x)−t}2p(x,t)dxdt(3.34)
从上面得到,最小化期望损失,可以分解成偏置、方差和噪声。有着最优预测能⼒的模型时在偏置和⽅差之间取得平衡。那么选取λ\lambdaλ对偏置和方差有什么影响呢
- 当λ\lambdaλ大的时候,模型可能就会欠拟合,我们得到的函数就会和预期的函数相差很大,就会导致偏置很大
- 当λ\lambdaλ小的时候模型可能就会过拟合,我们得到的函数就会和预期的函数过于接近,就会导致偏置很小
虽然偏置-⽅差分解能够从频率学家的⾓度对模型的复杂度提供⼀些有趣的认识,但是它的实⽤价值很有限。这是因为偏置-⽅差分解依赖于对所有的数据集求平均,⽽在实际应⽤中我们只有⼀个观测数据集。
贝叶斯线性回归
参数分布
首先引入www的先验概率分布(假设精度β 已知),有公式3.9 似然函数p(t∣w)p(t|w)p(t∣w),其对应的共轭先验为高斯分布(所谓共轭先验就是,能够引入一个先验乘以似然函数之后得到的后验能和先验有着同样的形式,共轭先验具体见参考维基百科https://en.wikipedia.org/wiki/Conjugate_prior#Example)
(3.35)p(w)=N(w∣m0,S0)p ( \boldsymbol { w } ) = \mathcal { N } ( \boldsymbol { w } | \boldsymbol { m } _ { 0 } , \boldsymbol { S } _ { 0 } ) \tag{3.35}p(w)=N(w∣m0,S0)(3.35)
通过第二章的推导,后验分布为
(3.36)p(w∣t)=N(w∣mN,SN)p ( \boldsymbol { w } | \mathbf { t } ) = \mathcal { N } ( \boldsymbol { w } | \boldsymbol { m } _ { N } , \boldsymbol { S } _ { N } ) \tag{3.36}p(w∣t)=N(w∣mN,SN)(3.36)
其中
(3.37)mN=SN(S0−1m0+βΦTt)SN−1=S0−1+βΦTΦ\begin{array} { c } { \boldsymbol { m } _ { N } = \boldsymbol { S } _ { N } \left( \boldsymbol { S } _ { 0 } ^ { - 1 } \boldsymbol { m } _ { 0 } + \beta \mathbf { \Phi } ^ { T } \mathbf { t } \right) } \\ { \boldsymbol { S } _ { N } ^ { - 1 } = \boldsymbol { S } _ { 0 } ^ { - 1 } + \beta \boldsymbol { \Phi } ^ { T } \boldsymbol { \Phi } } \end{array} \tag{3.37}mN=SN(S0−1m0+βΦTt)SN−1=S0−1+βΦTΦ(3.37)
因此wMAP=mN(后验均值)w_{MAP} = m_N(后验均值)wMAP=mN(后验均值),如果假设先验p(w)p(w)p(w)的方差趋近无穷大(高斯函数越平缓),也就是刚开始www为任何值得概率都是一样的,则mN=wMLm_N = w_{ML}mN=wML,如果N=0,那么后验就等于了先验(此时没有任何数据信息)。这就可以理解为,任何一个阶段的后验即是下一阶段的先验。
预测分布
在实际应⽤中,我们通常感兴趣的不是w本⾝的值,⽽是对于新的x值预测出t的值。这需要我们计算出预测分布(predictive distribution),定义为
(3.38)p(t∣t,α,β)=∫p(t∣w,β)p(w∣t,α,β)dwp ( t | \mathbf { t } , \alpha , \beta ) = \int p ( t | \boldsymbol { w } , \beta ) p ( \boldsymbol { w } | \mathbf { t } , \alpha , \beta ) \mathrm { d } \boldsymbol { w } \tag{3.38}p(t∣t,α,β)=∫p(t∣w,β)p(w∣t,α,β)dw(3.38)
转化为
(3.39)p(t∣x,t,α,β)=N(t∣mNTϕ(x),σN2(x))p ( t | \boldsymbol { x } , \mathbf { t } , \alpha , \beta ) = \mathcal { N } ( t | \boldsymbol { m } _ { N } ^ { T } \boldsymbol { \phi } ( \boldsymbol { x } ) , \sigma _ { N } ^ { 2 } ( \boldsymbol { x } ) ) \tag{3.39}p(t∣x,t,α,β)=N(t∣mNTϕ(x),σN2(x))(3.39)
(3.40)σN2(x)=1β+ϕ(x)TSNϕ(x)\sigma _ { N } ^ { 2 } ( \boldsymbol { x } ) = \frac { 1 } { \beta } + \boldsymbol { \phi } ( \boldsymbol { x } ) ^ { T } \boldsymbol { S } _ { N } \boldsymbol { \phi } ( \boldsymbol { x } ) \tag{3.40}σN2(x)=β1+ϕ(x)TSNϕ(x)(3.40)
公式3.40第⼀项表⽰数据中的噪声,⽽第⼆项反映了预测分布与参数w关联的不确定性。由于噪声和w的分布是相互独⽴的⾼斯分布,因此它们的值是可以相加的。当额外的数据点被观测到的时候,后验概率分布会变窄。从⽽可以证明出σN+12(x)≤σN2(x)σ^2_{N +1}(x) ≤ σ^2_{N} (x)σN+12(x)≤σN2(x)
等价核
把公式3.37的带入y(x, w),mN为w后验均值m_N为w后验均值mN为w后验均值, 则预测均值为
(3.41)y(x,mN)=mNTϕ(x)=βϕ(x)TSNΦTt=∑m=1Nβϕ(x)TSNϕ(xn)tny \left( \boldsymbol { x } , \boldsymbol { m } _ { N } \right) = \boldsymbol { m } _ { N } ^ { T } \boldsymbol { \phi } ( \boldsymbol { x } ) = \beta \boldsymbol { \phi } ( \boldsymbol { x } ) ^ { T } \boldsymbol { S } _ { N } \boldsymbol { \Phi } ^ { T } \mathbf { t } = \sum _ { m = 1 } ^ { N } \beta \boldsymbol { \phi } ( \boldsymbol { x } ) ^ { T } \boldsymbol { S } _ { N } \boldsymbol { \phi } \left( \boldsymbol { x } _ { n } \right) t _ { n } \tag{3.41}y(x,mN)=mNTϕ(x)=βϕ(x)TSNΦTt=m=1∑Nβϕ(x)TSNϕ(xn)tn(3.41)
则
(3.42)y(x,mN)=∑n=1Nk(x,xn)tny \left( \boldsymbol { x } , \boldsymbol { m } _ { N } \right) = \sum _ { n = 1 } ^ { N } k \left( \boldsymbol { x } , \boldsymbol { x } _ { n } \right) t _ { n } \tag{3.42}y(x,mN)=n=1∑Nk(x,xn)tn(3.42)
(3.43)k(x,x′)=βϕ(x)TSNϕ(x′)k \left( \boldsymbol { x } , \boldsymbol { x } ^ { \prime } \right) = \beta \boldsymbol { \phi } ( \boldsymbol { x } ) ^ { T } \boldsymbol { S } _ { N } \boldsymbol { \phi } \left( \boldsymbol { x } ^ { \prime } \right) \tag{3.43}k(x,x′)=βϕ(x)TSNϕ(x′)(3.43)
式3.43被称为平滑矩阵或等价核,等价核表示的是对于新x和与训练数据集中的所有x的距离,预测值y则是这些距离和其对应的t的加权平均。
贝叶斯模型的比较
模型⽐较的贝叶斯观点仅仅涉及到使⽤概率来表⽰模型选择的不确定性,假设我们想⽐较L个模型Mi{M_i}Mi,其中i=1,...,L。i = 1, . . . , L。i=1,...,L。我们会假设数据是由这些模型中的⼀个⽣成的,但是我们不知道究竟是哪⼀个。我们的不确定性通过先验概率分布p(Mi)表⽰。给定⼀个训练数据集D,我们想估计后验分布
(3.44)p(Mi∣D)∝p(Mi)p(D∣Mi)p \left( \mathcal { M } _ { i } | \mathcal { D } \right) \propto p \left( \mathcal { M } _ { i } \right) p ( \mathcal { D } | \mathcal { M } _ { i } ) \tag{3.44}p(Mi∣D)∝p(Mi)p(D∣Mi)(3.44)
先验分布让我们能够表达不同模型之间的优先级。假设所有模型概率都相同,模型证据(model evidence) p(D∣Mi)p(D | M_i)p(D∣Mi),它表达了数据展现出的不同模型的优先级,也被称为边缘似然(marginal likelihood)
⼀旦我们知道了模型上的后验概率分布,那么根据概率的加和规则与乘积规则,预测分布为
(3.45)p(t∣x,D)=∑i=1Lp(t∣x,Mi,D)p(Mi∣D)p ( t | \boldsymbol { x } , \mathcal { D } ) = \sum _ { i = 1 } ^ { L } p ( t | \boldsymbol { x } , \mathcal { M } _ { i } , \mathcal { D } ) p \left( \mathcal { M } _ { i } | \mathcal { D } \right) \tag{3.45}p(t∣x,D)=i=1∑Lp(t∣x,Mi,D)p(Mi∣D)(3.45)
对于⼀个由参数w控制的模型,根据概率的加和规则和乘积规则,模型证据为
(3.46)p(D∣Mi)=∫p(D∣w,Mi)p(w∣Mi)dwp ( \mathcal { D } | \mathcal { M } _ { i } ) = \int p ( \mathcal { D } | \boldsymbol { w } , \mathcal { M } _ { i } ) p ( \boldsymbol { w } | \mathcal { M } _ { i } ) \mathrm { d } \boldsymbol { w } \tag{3.46}p(D∣Mi)=∫p(D∣w,Mi)p(w∣Mi)dw(3.46)
模型证据恰好就是在估计参数的后验分布时出现在贝叶斯定理的分母中的归⼀化项,因为
(3.47)p(w∣D,Mi)=p(D∣w,Mi)p(w∣Mi)p(D∣Mi)p ( \boldsymbol { w } | \mathcal { D } , \mathcal { M } _ { i } ) = \frac { p ( \mathcal { D } | \boldsymbol { w } , \mathcal { M } _ { i } ) p ( \boldsymbol { w } | \mathcal { M } _ { i } ) } { p ( \mathcal { D } | \mathcal { M } _ { i } ) } \tag{3.47}p(w∣D,Mi)=p(D∣Mi)p(D∣w,Mi)p(w∣Mi)(3.47)
⾸先考虑模型有⼀个参数w的情形。这个参数的后验概率正⽐于p(D | w)p(w),其中为了简化记号,我们省略了它对于模型Mi的依赖。如果我们假设后验分布在最⼤似然值wMAP附近是⼀个尖峰,宽度为∆w后验,那么我们可以⽤被积函数的值乘以尖峰的宽度来近似这个积分。如下图
(3.48)p(D)=∫p(D∣w)p(w)dw≃p(D∣wMAP)Δwposterior Δwprior p ( \mathcal { D } ) = \int p ( \mathcal { D } | w ) p ( w ) \mathrm { d } w \simeq p ( \mathcal { D } | w _ { \mathrm { MAP } } ) \frac { \Delta w _ { \text { posterior } } } { \Delta w _ { \text { prior } } } \tag{3.48}p(D)=∫p(D∣w)p(w)dw≃p(D∣wMAP)Δw prior Δw posterior (3.48)
取对数可得
(3.49)lnp(D)≃lnp(D∣wMAP)+ln(ΔwposteriorΔwprior)\ln p ( \mathcal { D } ) \simeq \ln p ( \mathcal { D } | w _ { \mathrm { MAP } } ) + \ln \left( \frac { \Delta w _ { \mathrm { posterior } } } { \Delta w _ { \mathrm { prior } } } \right) \tag{3.49}lnp(D)≃lnp(D∣wMAP)+ln(ΔwpriorΔwposterior)(3.49)
第⼀项表⽰拟合由最可能参数对应的模型给出的数据。第⼆项⽤于根据模型的复杂度来惩罚模型。后验的宽度越小,表示模型拟合越精确,则惩罚越厉害
证据近似
在处理线性基函数模型的纯粹的贝叶斯⽅法中,我们会引⼊超参数α和β的先验分布,然后通过对超参数以及参数w求积分的⽅式做预测。但是,虽然我们可以解析地求出对w的积分或者求出对超参数的积分,但是对所有这些变量完整地求积分是没有解析解的。
这⾥我们讨论⼀种近似⽅法。这种⽅法中,我们⾸先对参数w求积分,得到边缘似然函数(marginal likelihoodfunction),然后通过最⼤化边缘似然函数,确定超参数的值。这种⽅法也被称为证据近似。
如果我们引⼊α和β上的超先验分布,那么预测分布可以通过对w, α和β求积分的⽅法得到
(3.50)p(t∣t)=∭p(t∣w,β)p(w∣t,α,β)p(α,β∣t)dwdαdβp ( t | \mathbf { t } ) = \iiint p ( t | \boldsymbol { w } , \beta ) p ( \boldsymbol { w } | \mathbf { t } , \alpha , \beta ) p ( \alpha , \beta | \mathbf { t } ) \mathrm { d } \boldsymbol { w } \mathrm { d } \alpha \mathrm { d } \beta \tag{3.50}p(t∣t)=∭p(t∣w,β)p(w∣t,α,β)p(α,β∣t)dwdαdβ(3.50)
如果后验分布p(α,β∣i)p(α, β | i)p(α,β∣i)在α^\widehat { \alpha }α和β^\widehat { \beta }β附近有尖峰,那么预测分布可以通过对积分的⽅式简单地得到,其中α和β被固定为α^\widehat { \alpha }α和β^\widehat { \beta }β
(3.51)p(t∣t)≃p(t∣t,α^,β^)=∫p(t∣w,β^)p(w∣t,α^,β^)dwp ( t | \mathbf { t } ) \simeq p ( t | \mathbf { t } , \widehat { \alpha } , \widehat { \beta } ) = \int p ( t | \boldsymbol { w } , \widehat { \beta } ) p ( \boldsymbol { w } | \mathbf { t } , \widehat { \alpha } , \widehat { \beta } ) \mathrm { d } \boldsymbol { w } \tag{3.51}p(t∣t)≃p(t∣t,α,β)=∫p(t∣w,β)p(w∣t,α,β)dw(3.51)
接下来就要求出α^\widehat { \alpha }α和β^\widehat { \beta }β,α和β的后验分布为
(3.52)p(α,β∣t)∝p(t∣α,β)p(α,β)p ( \alpha , \beta | \mathbf { t } ) \propto p ( \mathbf { t } | \alpha , \beta ) p ( \alpha , \beta ) \tag{3.52}p(α,β∣t)∝p(t∣α,β)p(α,β)(3.52)
α^\widehat { \alpha }α和β^\widehat { \beta }β可以通过最⼤化边缘似然函数p(i | α, β)来获得。我们接下来会计算线性基函数模型的边缘似然函数,然后找到它的最⼤值。这将使我们能够从训练数据本⾝确定这些超参数的值,⽽不需要交叉验证。
计算证据函数
边缘似然函数p(i | α, β)是通过对权值参数w进⾏积分得到的
(3.53)p(t∣α,β)=∫p(t∣w,β)p(w∣α)dwp ( \mathbf { t } | \alpha , \beta ) = \int p ( \mathbf { t } | \boldsymbol { w } , \beta ) p ( \boldsymbol { w } | \alpha ) \mathrm { d } \boldsymbol { w } \tag{3.53}p(t∣α,β)=∫p(t∣w,β)p(w∣α)dw(3.53)
根据公式(3.10)、公式(3.11)和w的分布
(3.10)lnp(t∣w,β)=∑n=1NlnN(tn∣wTϕ(xn),β−1)=N2lnβ−N2ln(2π)−βED(w)\begin{aligned} \ln p ( \mathbf { t } | \boldsymbol { w } , \beta ) & = \sum _ { n = 1 } ^ { N } \ln \mathcal { N } \left( t _ { n } | \boldsymbol { w } ^ { T } \boldsymbol { \phi } \left( \boldsymbol { x } _ { n } \right) , \beta ^ { - 1 } \right) \\ & = \frac { N } { 2 } \ln \beta - \frac { N } { 2 } \ln ( 2 \pi ) - \beta E _ { D } ( \boldsymbol { w } ) \end{aligned} \tag{3.10}lnp(t∣w,β)=n=1∑NlnN(tn∣wTϕ(xn),β−1)=2Nlnβ−2Nln(2π)−βED(w)(3.10)
(3.11)ED(w)=12∑n=1N{tn−wTϕ(xn)}2E _ { D } ( \boldsymbol { w } ) = \frac { 1 } { 2 } \sum _ { n = 1 } ^ { N } \left\{ t _ { n } - \boldsymbol { w } ^ { T } \boldsymbol { \phi } \left( \boldsymbol { x } _ { n } \right) \right\} ^ { 2 } \tag{3.11}ED(w)=21n=1∑N{tn−wTϕ(xn)}2(3.11)
p(w∣α)=N(w∣0,α−1I)p ( \boldsymbol { w } | \alpha ) = \mathcal { N } ( \boldsymbol { w } | \mathbf { 0 } , \alpha ^ { - 1 } \boldsymbol { I } ) p(w∣α)=N(w∣0,α−1I)
我们可以把证据函数写成下⾯的形式
(3.54)p(t∣α,β)=(β2π)N2(α2π)M2∫exp{−E(w)}dwp ( \mathbf { t } | \alpha , \beta ) = \left( \frac { \beta } { 2 \pi } \right) ^ { \frac { N } { 2 } } \left( \frac { \alpha } { 2 \pi } \right) ^ { \frac { M } { 2 } } \int \exp \{ - E ( \boldsymbol { w } ) \} \mathrm { d } \boldsymbol { w } \tag{3.54}p(t∣α,β)=(2πβ)2N(2πα)2M∫exp{−E(w)}dw(3.54)
(3.55)E(w)=βED(w)+αEW(w)=β2∥t−Φw∥2+α2wTw\begin{aligned} E ( \boldsymbol { w } ) & = \beta E _ { D } ( \boldsymbol { w } ) + \alpha E _ { W } ( \boldsymbol { w } ) \\ & = \frac { \beta } { 2 } \| \mathbf { t } - \boldsymbol { \Phi } \boldsymbol { w } \| ^ { 2 } + \frac { \alpha } { 2 } \boldsymbol { w } ^ { T } \boldsymbol { w } \end{aligned} \tag{3.55}E(w)=βED(w)+αEW(w)=2β∥t−Φw∥2+2αwTw(3.55)
公式(3.55)等于正则化的平⽅和误差函数。我们现在对w配平⽅,可得
(3.56)E(w)=E(mN)+12(w−mN)TA(w−mN)E ( \boldsymbol { w } ) = E \left( \boldsymbol { m } _ { N } \right) + \frac { 1 } { 2 } \left( \boldsymbol { w } - \boldsymbol { m } _ { N } \right) ^ { T } \boldsymbol { A } \left( \boldsymbol { w } - \boldsymbol { m } _ { N } \right) \tag{3.56}E(w)=E(mN)+21(w−mN)TA(w−mN)(3.56)
(3.57)A=αI+βΦTΦ\boldsymbol { A } = \alpha \boldsymbol { I } + \beta \boldsymbol { \Phi } ^ { T } \boldsymbol { \Phi } \tag{3.57}A=αI+βΦTΦ(3.57)
(3.58)E(mN)=β2∥t−ΦmN∥2+β2mNTmNE \left( \boldsymbol { m } _ { N } \right) = \frac { \beta } { 2 } \left\| \mathbf { t } - \mathbf { \Phi } \boldsymbol { m } _ { N } \right\| ^ { 2 } + \frac { \beta } { 2 } \boldsymbol { m } _ { N } ^ { T } \boldsymbol { m } _ { N } \tag{3.58}E(mN)=2β∥t−ΦmN∥2+2βmNTmN(3.58)
对w进行求积分
(3.59)∫exp{−E(w)}dw=exp{−E(mN)}∫exp{−12(w−mN)TA(w−mN)}dw=exp{−E(mN)}(2π)M2∣A∣−12\begin{aligned} \int & \exp \{ - E ( \boldsymbol { w } ) \} \mathrm { d } \boldsymbol { w } \\ & = \exp \left\{ - E \left( \boldsymbol { m } _ { N } \right) \right\} \int \exp \left\{ - \frac { 1 } { 2 } \left( \boldsymbol { w } - \boldsymbol { m } _ { N } \right) ^ { T } \boldsymbol { A } \left( \boldsymbol { w } - \boldsymbol { m } _ { N } \right) \right\} \mathrm { d } \boldsymbol { w } \\ & = \exp \left\{ - E \left( \boldsymbol { m } _ { N } \right) \right\} ( 2 \pi ) ^ { \frac { M } { 2 } } | \boldsymbol { A } | ^ { - \frac { 1 } { 2 } } \end{aligned} \tag{3.59}∫exp{−E(w)}dw=exp{−E(mN)}∫exp{−21(w−mN)TA(w−mN)}dw=exp{−E(mN)}(2π)2M∣A∣−21(3.59)
我们可以把边缘似然函数的对数写成下⾯的形式
(3.60)lnp(t∣α,β)=M2lnα+N2lnβ−E(mN)−12ln∣A∣−N2ln(2π)\ln p ( \mathbf { t } | \alpha , \beta ) = \frac { M } { 2 } \ln \alpha + \frac { N } { 2 } \ln \beta - E \left( \boldsymbol { m } _ { N } \right) - \frac { 1 } { 2 } \ln | \boldsymbol { A } | - \frac { N } { 2 } \ln ( 2 \pi ) \tag{3.60}lnp(t∣α,β)=2Mlnα+2Nlnβ−E(mN)−21ln∣A∣−2Nln(2π)(3.60)
最⼤化证据函数
考虑p(i | α, β)关于α的最⼤化,⾸先定义下⾯的特征向量⽅程
(3.61)(βΦTΦ)ui=λiui\left( \beta \boldsymbol { \Phi } ^ { T } \boldsymbol { \Phi } \right) \boldsymbol { u } _ { i } = \lambda _ { i } \boldsymbol { u } _ { i } \tag{3.61}(βΦTΦ)ui=λiui(3.61)
可知A的特征值为α + λi。考虑公式(3.60)中涉及到ln |A|的项关
于α的导数
(3.62)ddαln∣A∣=ddαln∏i(λi+α)=ddα∑iln(λi+α)=∑i1λi+α\frac { \mathrm { d } } { \mathrm { d } \alpha } \ln | \boldsymbol { A } | = \frac { \mathrm { d } } { \mathrm { d } \alpha } \ln \prod _ { i } \left( \lambda _ { i } + \alpha \right) = \frac { \mathrm { d } } { \mathrm { d } \alpha } \sum _ { i } \ln \left( \lambda _ { i } + \alpha \right) = \sum _ { i } \frac { 1 } { \lambda _ { i } + \alpha } \tag{3.62}dαdln∣A∣=dαdlni∏(λi+α)=dαdi∑ln(λi+α)=i∑λi+α1(3.62)
求驻点得到
(3.63)α=γmNTmN\alpha = \frac { \gamma } { \boldsymbol { m } _ { N } ^ { T } \boldsymbol { m } _ { N } } \tag{3.63}α=mNTmNγ(3.63)
(3.64)γ=∑iλiα+λi\gamma = \sum _ { i } \frac { \lambda _ { i } } { \alpha + \lambda _ { i } } \tag{3.64}γ=i∑α+λiλi(3.64)
开始随机选择一个w值,之后根据3.63公式不断迭代进行收敛。我们可以类似地关于β最⼤化对数边缘似然函数(3.60)
(3.65)1β=1N−γ∑n=1N{tn−mNTϕ(xn)}2\frac { 1 } { \beta } = \frac { 1 } { N - \gamma } \sum _ { n = 1 } ^ { N } \left\{ t _ { n } - \boldsymbol { m } _ { N } ^ { T } \boldsymbol { \phi } \left( \boldsymbol { x } _ { n } \right) \right\} ^ { 2 } \tag{3.65}β1=N−γ1n=1∑N{tn−mNTϕ(xn)}2(3.65)
参数的有效数量
公式3.63的值α\alphaα通过p(w∣α)=N(w∣0,α−1I)p ( \boldsymbol { w } | \alpha ) = \mathcal { N } ( \boldsymbol { w } | \mathbf { 0 } , \alpha ^ { - 1 } \boldsymbol { I } )p(w∣α)=N(w∣0,α−1I)来控制这w的分布。
由于βΦTΦβΦ^T ΦβΦTΦ是⼀个正定矩阵,因此它的特征值为正数,从⽽⽐值λi/(λi+α)λ_i /(λ_i+α)λi/(λi+α)位于0和1之间,结果,由公式(3.91)定义的γ的取值范围为0≤γ≤M0 ≤ γ ≤ M0≤γ≤M。
- 对于λi ≫ α的⽅向,对应的参数wiw_iwi将会与最⼤似然值接近,且
⽐值λi/(λi+α)λ_i/(λ_i+α)λi/(λi+α)接近1。这样的参数被称为良好确定的,因为它们的值被数据紧紧地限制着。
2.相反,对于λi ≪ α的⽅向,对应的参数wi将会接近0,⽐值 λi/(λi+α)λ_i/(λ_i+α)λi/(λi+α)也会接近0。这些⽅向上,似然函数对于参数的值相对不敏感,因此参数被先验概率设置为较⼩的值。公式(3.64)定义的γ因此度量了良好确定的参数的有效总数。
固定基函数的局限性
在本章中,我们已经关注了由固定的⾮线性基函数的线性组合组成的模型。不幸的是,线性模型有⼀些重要的局限性,这使得我们在后续的章节中要转⽽关注更加复杂的模型,例如⽀持向量机和神经⽹络。
困难的产⽣主要是因为我们假设了基函数在观测到任何数据之前就被固定了下来,⽽这正是1.4节讨论的维度灾难问题的⼀个表现形式。结果,基函数的数量随着输⼊空间的维度D迅速增长,通常是指数⽅式的增长。
PRML第三章之回归的线性模型相关推荐
- 《Python数据分析基础教程:NumPy学习指南(第2版)》笔记8:第三章 常用函数4——线性模型、数组修剪与压缩、阶乘
本章将介绍NumPy的常用函数.具体来说,我们将以分析历史股价为例,介绍怎样从文件中载入数据,以及怎样使用NumPy的基本数学和统计分析函数.这里还将学习读写文件的方法,并尝试函数式编程和NumPy线 ...
- ESL第三章 回归的线性方法 系数近似置信集/高斯-马尔可夫定理/正交化、最优子集/向前向后逐步选择/向前分段回归、参数有效数量/最小角回归、主成分/偏最小二乘、多输出收缩、其他L1和路径相关算法
(ESL把线性回归讲的非常丰富,真的开阔视野) 目录 3.2 线性回归模型的最小二乘法 3.2.2 高斯-马尔可夫定理 3.2.3 从简单单变量回归到多重回归 3.2.4 多输出 3.3 子集选择 3 ...
- PRML第七章稀疏核机 (RVM)
PRML第七章 稀疏核机 总结 很长一段时间没有做自我总结,也没有意识去写博客了.今天想来谈谈SVM与RVM(两种稀疏核方法).(最近正在自学,然后遇到各种问题,也懂了一些问题,所以想要总结一下 ...
- 第三章 线性模型总结
目录 第三章 线性模型总结 1.线性模型的基本形式 标量形式: 向量形式: 广义线性模型: 2.线性回归 一元线性回归(只有一个特征x): 多元线性回归: 3.对数几率回归--也称作逻辑回归,用来解 ...
- 机器学习(西瓜书)——第三章线性模型(知识点思维导图)
机器学习(西瓜书)--第三章线性模型(知识点思维导图) 这章难点在于线性判别分析和对数几率回归的理解与实践,这里只是给大家梳理了一下思路. 大家在学习的时候可以利用sklearn中的线性模型来进行尝试 ...
- 周志华《机器学习》课后习题(第三章):线性模型
作者 | 我是韩小琦 链接 | https://zhuanlan.zhihu.com/p/43270830 3.1 试分析在什么情况下,在以下式子中不比考虑偏置项b. 答: 在样本 中有某一个属性 ...
- 西瓜书学习记录-线性模型(第三章)
西瓜书学习记录-线性模型(第三章) 第三章啦 反函数(上图) 梯度下降法: 补充:: 看的大佬的教学视频,标明一下出处: https://www.bilibili.com/video/BV17J411 ...
- 周志华-机器学习西瓜书-第三章习题3.3 编程实现对率回归
本文为周志华机器学习西瓜书第三章课后习题3.3答案,编程实现对率回归,数据集为书本第89页的数据 使用tensorflow实现过程 # coding=utf-8 import tensorflow a ...
- 小白学机器学习西瓜书-第三章对数几率回归
小白学机器学习西瓜书-第三章对数几率回归 3.3 对数几率回归 3.3.1 对数几率函数 3.3.1 估计参数 上一部分我们介绍了线性回归,包括简单的二元回归和多元回归,这两个主要解决的是拟合预测的问 ...
- php-ml 逻辑回归,TensorFlow ML cookbook 第三章6-8节 套索和岭回归、弹性网络回归and Logistic回归...
问题导读: 1.如何实现套索和岭回归? 2.如何实现弹性网络回归? 3.如何实施Logistic回归? 4.如何理解将线性回归转化为二元分类? 上一篇:TensorFlow ML cookbook 第 ...
最新文章
- date类型_06076.1.0如何将ORC格式且使用了DATE类型的Hive表转为Parquet表
- Android的AutoCompleteTextView在API17高版本添加的setText函数在低版本系统居然能正常调用?官方文档是不是不靠谱了?...
- 从原理上搞懂如何设置线程池参数大小?
- 在idea中使用构造方法
- 小李飞刀:SQL题目第二弹!
- SAP UI5 XML view lifecycle processing - defineMasterHeaderFooter
- 硬盘数据恢复的神器有哪些
- python的包管理
- InstallShield Crack,虚拟应用程序构建可靠
- CodeForces 595A Vitaly and Night
- Excel--查找、替换及定位
- 基于SSH开发的校园一卡通管理系统
- 计算机应用程序没声音,电脑突然没声音,多半是这三个原因导致的-维修经验...
- 行人车辆检测与计数系统(Python+YOLOv5深度学习模型+清新界面)
- 2021-09-10 网安实验-XCTF真题实战之密码学
- Three.js 实时更新几何体的方法
- Arduino第一次上传代码报错
- openCV专栏(四):阀值处理+噪音滤波
- Python——函数练习题
- java 常用英语单词(待续)
热门文章
- 手把手教你使用人人开源
- WinQSB的19个子系统简介
- autojs多分辨率找透明图
- hashcat字典攻击
- 解决iTerm中‘zsh-syntax-highlighting‘找不到的问题
- 黑客攻防技术系列高清视频教程+必备工具包下载
- 如何使用c语言制作微信小程序,不懂代码如何制作微信小程序?微信小程序的步骤?...
- AdventNet Agent Toolkit C Edition6 AGENT
- 单片机控制三相异步电动机正反转c语言程序,请用PLC控制一台普通三相异步电动机的正反转控制,设计其控制程序梯形图及主电路...
- 浙江计算机二级c语言考试,浙江计算机二级考试(C语言)上机试题