曲线拟合——最小二乘法与高斯假设下的最大似然估计和最大后验估计

曲线拟合——最小二乘法与高斯假设下的最大似然估计和最大后验估计

  • 曲线拟合——最小二乘法与高斯假设下的最大似然估计和最大后验估计
    • 1. 使用平方和误差函数的多项式曲线拟合——最小二乘法
    • 推导:
      • 1.1 平方和误差函数作为损失函数
      • 1.2 带正则项的平方和误差函数作为损失函数
    • 2. 高斯假设下的曲线拟合
      • 2.1 未知参数的最大似然估计
      • 2.2 未知参数的最大后验估计

曲线拟合——最小二乘法与高斯假设下的最大似然估计和最大后验估计

这一次推导一下采用最小二乘法进行曲线拟合,以及在高斯假设下采用最大似然估计和最大后验估计的曲线拟合。这也是《Pattern Recognition and Machine Learning》书中第一章的内容,相关公式编号与原书一致。

通过这个推导可以使我们看到最小二乘法与高斯假设下的最大似然估计之间的联系,以及带有系数的 l 2 \mathcal{l}_2 l2 范数正则项的最小二乘法与高斯假设下的最大后验估计之间的联系。

1. 使用平方和误差函数的多项式曲线拟合——最小二乘法

训练集包含 x x x N N N 个观测值 X = { x 1 , … , x N } \mathcal{X}=\{ x_1,\dots,x_N \} X={x1,,xN} 及它们对应的目标值 T = { t 1 , … , t N } \mathcal{T}=\{ t_1,\dots,t_N \} T={t1,,tN}

使用 M M M 阶多项式

(1.1) y ( x , w ) = w 0 + w 1 x + w 2 x 2 + ⋯ + w M x M = ∑ j = 0 M w j x j = x T w y(x,\mathbf{w}) = w_0 + w_1x + w_2x^2 + \cdots + w_Mx^M = \sum_{j=0}^M w_jx^j = \mathbf{x}^T\mathbf{w} \tag{1.1} y(x,w)=w0+w1x+w2x2++wMxM=j=0Mwjxj=xTw(1.1)

进行拟合。

推导:

设数据矩阵 X ∈ R N × ( M + 1 ) X \in \mathbb{R}^{N \times (M+1)} XRN×(M+1),系数向量 w ∈ R ( M + 1 ) × 1 \mathbf{w} \in \mathbb{R}^{(M+1) \times 1} wR(M+1)×1,目标向量 t ∈ R N × 1 \mathbf{t} \in \mathbb{R}^{N \times 1} tRN×1,预测向量 y ∈ R N × 1 \mathbf{y} \in \mathbb{R}^{N \times 1} yRN×1 ,其中

X = [ x 1 0 x 1 1 ⋯ x 1 M x 2 0 x 2 1 ⋯ x 2 M ⋮ ⋮ ⋮ ⋮ x N 0 x N 1 ⋯ x N M ] \mathbf{X} = \begin{bmatrix} x_1^0&x_1^1&\cdots&x_1^M \\ x_2^0&x_2^1&\cdots&x_2^M \\ \vdots&\vdots&\vdots&\vdots \\ x_N^0&x_N^1&\cdots&x_N^M \end{bmatrix} X=x10x20xN0x11x21xN1x1Mx2MxNM

w = [ w 0 w 1 ⋮ w M ] t = [ t 1 t 2 ⋮ t M ] y = [ y 1 y 2 ⋮ y M ] \mathbf{w} = \begin{bmatrix} w_0 \\ w_1 \\ \vdots \\w_M \end{bmatrix} \qquad \mathbf{t} = \begin{bmatrix} t_1 \\ t_2 \\ \vdots \\t_M \end{bmatrix} \qquad \mathbf{y} = \begin{bmatrix} y_1 \\ y_2 \\ \vdots \\y_M \end{bmatrix} w=w0w1wMt=t1t2tMy=y1y2yM

那么,有

y = X w \mathbf{y}=\mathbf{X}\mathbf{w} y=Xw

1.1 平方和误差函数作为损失函数

损失函数采用平方和误差函数

(1.2) E ( w ) = 1 2 ∑ n = 1 N { y ( x n , w ) − t n } 2 \mathrm{E}(\mathbf{w}) = \frac{1}{2} \sum_{n=1}^N\left\{ y(x_n,\mathbf{w})-t_n \right\}^2 \tag{1.2} E(w)=21n=1N{y(xn,w)tn}2(1.2)

该损失函数写为向量形式,为

E ( w ) = 1 2 ∑ n = 1 N { y ( x n , w ) − t n } 2 = 1 2 ( y − t ) T ( y − t ) = 1 2 ( X w − t ) T ( X w − t ) \begin{aligned} \mathrm{E}(\mathbf{w}) &= \frac{1}{2} \sum_{n=1}^N\left\{ y(x_n,\mathbf{w})-t_n \right\}^2 \\ &= \frac{1}{2} (\mathbf{y} - \mathbf{t})^T(\mathbf{y} - \mathbf{t}) \\ & = \frac{1}{2} (\mathbf{X} \mathbf{w} - \mathbf{t})^T (\mathbf{X} \mathbf{w} - \mathbf{t}) \end{aligned} E(w)=21n=1N{y(xn,w)tn}2=21(yt)T(yt)=21(Xwt)T(Xwt)


∂ E ∂ w = 0 \frac{\partial\mathrm{E}}{\partial \mathbf{w}} = 0 wE=0

∂ E ∂ w = 1 2 ∂ ∂ w ( X w − t ) T ( X w − t ) = X T ( X w − t ) = 0 \begin{aligned} \frac{\partial\mathrm{E}}{\partial \mathbf{w}} &= \frac{1}{2} \frac{\partial}{\partial \mathbf{w}} (\mathbf{X} \mathbf{w} - \mathbf{t})^T (\mathbf{X} \mathbf{w} - \mathbf{t}) \\ &= \mathbf{X}^T (\mathbf{X} \mathbf{w} - \mathbf{t}) \\ &= 0 \end{aligned} wE=21w(Xwt)T(Xwt)=XT(Xwt)=0

于是有

X T X w = X T t \mathbf{X}^T \mathbf{X} \mathbf{w} = \mathbf{X}^T \mathbf{t} XTXw=XTt

因而

w = ( X T X ) − 1 X t \mathbf{w} = (\mathbf{X}^T \mathbf{X})^{-1} \mathbf{X} \mathbf{t} w=(XTX)1Xt

1.2 带正则项的平方和误差函数作为损失函数

损失函数采用带有系数的 l 2 \mathcal{l}_2 l2 范数正则项的平方和误差函数

(1.4) E ( w ) = 1 2 ∑ n = 1 N { y ( x n , w ) − t n } 2 + λ 2 ∥ w ∥ 2 \mathrm{E}(\mathbf{w}) = \frac{1}{2} \sum_{n=1}^N\left\{ y(x_n,\mathbf{w})-t_n \right\}^2 + \frac{\lambda}{2} \|\mathbf{w} \|^2 \tag{1.4} E(w)=21n=1N{y(xn,w)tn}2+2λw2(1.4)

同样,将损失函数写为向量形式 ,为

E ( w ) = 1 2 ∑ n = 1 N { y ( x n , w ) − t n } 2 + λ 2 ∥ w ∥ 2 = 1 2 ( y − t ) T ( y − t ) + λ 2 ∥ w ∥ 2 = 1 2 ( X w − t ) T ( X w − t ) + λ 2 ∥ w ∥ 2 \begin{aligned} \mathrm{E}(\mathbf{w}) &= \frac{1}{2} \sum_{n=1}^N\left\{ y(x_n,\mathbf{w})-t_n \right\}^2 + \frac{\lambda}{2} \|\mathbf{w} \|^2 \\ &= \frac{1}{2} (\mathbf{y} - \mathbf{t})^T(\mathbf{y} - \mathbf{t}) + \frac{\lambda}{2} \|\mathbf{w} \|^2 \\ & = \frac{1}{2} (\mathbf{X} \mathbf{w} - \mathbf{t})^T (\mathbf{X} \mathbf{w} - \mathbf{t}) + \frac{\lambda}{2} \|\mathbf{w} \|^2 \end{aligned} E(w)=21n=1N{y(xn,w)tn}2+2λw2=21(yt)T(yt)+2λw2=21(Xwt)T(Xwt)+2λw2

同样, 令

∂ E ∂ w = 0 \frac{\partial\mathrm{E}}{\partial \mathbf{w}} = 0 wE=0

∂ E ∂ w = 1 2 ∂ ∂ w ( X w − t ) T ( X w − t ) + λ 2 ∂ ∂ w ∥ w ∥ 2 = X T ( X w − t ) + λ w = 0 \begin{aligned} \frac{\partial\mathrm{E}}{\partial \mathbf{w}} &= \frac{1}{2} \frac{\partial}{\partial \mathbf{w}} (\mathbf{X} \mathbf{w} - \mathbf{t})^T (\mathbf{X} \mathbf{w} - \mathbf{t})+ \frac{\lambda}{2} \frac{\partial}{\partial \mathbf{w}} \|\mathbf{w} \|^2 \\ &= \mathbf{X}^T (\mathbf{X} \mathbf{w} - \mathbf{t}) + \lambda \mathbf{w} \\ &= 0 \end{aligned} wE=21w(Xwt)T(Xwt)+2λww2=XT(Xwt)+λw=0

于是有

( X T X + λ I ) w = X T t (\mathbf{X}^T \mathbf{X} + \lambda \mathbf{I}) \mathbf{w} = \mathbf{X}^T \mathbf{t} (XTX+λI)w=XTt

进而

w = ( X T X + λ I ) − 1 X T t \mathbf{w} = (\mathbf{X}^T \mathbf{X} + \lambda \mathbf{I})^{-1} \mathbf{X}^T \mathbf{t} w=(XTX+λI)1XTt

2. 高斯假设下的曲线拟合

训练集包含 x x x N N N 个独立观测值 X = { x 1 , … , x N } \mathcal{X}=\{ x_1,\dots,x_N \} X={x1,,xN} 及它们对应的目标值 T = { t 1 , … , t N } \mathcal{T}=\{ t_1,\dots,t_N \} T={t1,,tN}。假设给定 x x x ,其对应的目标值 t t t 服从均值为 y ( x , w ) y(x,\mathbf{w}) y(x,w) ,精度为 β = 1 / σ 2 \beta = 1/\sigma^2 β=1/σ2 的高斯分布,即

(1.60) p ( t ∣ x , w , β ) = N ( t ∣ y ( x , w ) , β − 1 ) p(t|x,\mathbf{w},\beta) = \mathcal{N}(t|y(x,\mathbf{w}),\beta^{-1}) \tag{1.60} p(tx,w,β)=N(ty(x,w),β1)(1.60)

2.1 未知参数的最大似然估计

似然函数:

(1.61) p ( T ∣ X , w , β ) = ∏ n = 1 N N ( t n ∣ y ( x n , w ) , β − 1 ) p(\mathcal{T}|\mathcal{X},\mathbf{w},\beta) = \prod_{n=1}^N \mathcal{N}(t_n|y(x_n,\mathbf{w}),\beta^{-1}) \tag{1.61} p(TX,w,β)=n=1NN(tny(xn,w),β1)(1.61)

对数似然函数:

(1.62) ln ⁡ p ( T ∣ X , w , β ) = ∑ n = 1 N ln ⁡ N ( t n ∣ y ( x n , w ) , β − 1 ) = ∑ n = 1 N { 1 2 ln ⁡ β − 1 2 ln ⁡ 2 π − β 2 [ t n − y ( x n , w ) ] 2 } = − β 2 ∑ n = 1 N [ t n − y ( x n , w ) ] 2 + N 2 ln ⁡ β − N 2 ln ⁡ 2 π \begin{aligned} \ln p(\mathcal{T}|\mathcal{X},\mathbf{w},\beta) &= \sum_{n=1}^N \ln \mathcal{N}(t_n|y(x_n,\mathbf{w}),\beta^{-1})\\ &= \sum_{n=1}^N \left\{ \frac{1}{2} \ln \beta - \frac{1}{2} \ln 2\pi - \frac{\beta}{2}\left[t_n-y(x_n,\mathbf{w})\right]^2\right\}\\ &= - \frac{\beta}{2} \sum_{n=1}^N \left[t_n-y(x_n,\mathbf{w})\right]^2 + \frac{N}{2} \ln \beta - \frac{N}{2} \ln 2\pi \tag{1.62} \end{aligned} lnp(TX,w,β)=n=1NlnN(tny(xn,w),β1)=n=1N{21lnβ21ln2π2β[tny(xn,w)]2}=2βn=1N[tny(xn,w)]2+2Nlnβ2Nln2π(1.62)

对于求取参数 w \mathbf{w} w 的最大似然估计,最大化式 ( 1.62 ) (1.62) (1.62) ,就相当于最小化

1 2 ∑ n = 1 N [ t n − y ( x n , w ) ] 2 \frac{1}{2} \sum_{n=1}^N \left[t_n-y(x_n,\mathbf{w})\right]^2 21n=1N[tny(xn,w)]2

也就是式 ( 1.2 ) (1.2) (1.2) 所示的平方和误差函数 E ( w ) \mathrm{E}(\mathbf{w}) E(w) 。可见,以平方和误差函数为目标函数等价于高斯假设下的最大似然估计。

再看参数 β \beta β 的最大似然估计:

∂ ln ⁡ p ( T ∣ X , w , β ) ∂ β = − 1 2 ∑ n = 1 N [ t n − y ( x n , w M L ) ] 2 + N 2 β = 0 \frac{\partial \ln p(\mathcal{T}|\mathcal{X},\mathbf{w},\beta)}{\partial \beta} = - \frac{1}{2} \sum_{n=1}^N \left[t_n-y(x_n,\mathbf{w}_{ML})\right]^2 + \frac{N}{2\beta} = 0 βlnp(TX,w,β)=21n=1N[tny(xn,wML)]2+2βN=0

(1.63) 1 β M L = 1 N ∑ n = 1 N [ t n − y ( x n , w M L ) ] 2 \frac{1}{\beta_{ML}} = \frac{1}{N} \sum_{n=1}^N \left[t_n-y(x_n,\mathbf{w}_{ML})\right]^2 \tag{1.63} βML1=N1n=1N[tny(xn,wML)]2(1.63)

2.2 未知参数的最大后验估计

进一步假设参数 w \mathbf{w} w 服从0均值,精度为 α \alpha α 的高斯分布,即

(1.65) p ( w ∣ α ) = N ( w ∣ 0 , α − 1 I ) = ( α 2 π ) ( M + 1 ) / 2 exp ⁡ { − α 2 w T w } p(\mathbf{w}|\alpha) = \mathcal{N}(\mathbf{w}|\mathbf{0},\alpha^{-1}\mathbf{I}) = \left(\frac{\alpha}{2\pi}\right)^{(M+1)/2} \exp \left\{- \frac{\alpha}{2}\mathbf{w}^T\mathbf{w}\right\} \tag{1.65} p(wα)=N(w0,α1I)=(2πα)(M+1)/2exp{2αwTw}(1.65)

式中, M + 1 M+1 M+1 为向量 w \mathbf{w} w 中元素的个数。

因为

p o s t e r i o r ∝ l i k e l i h o o d × p r i o r posterior \propto likelihood \times prior posteriorlikelihood×prior

(1.66) p ( w ∣ X , T , α , β ) ∝ p ( T ∣ X , w , β ) p ( w ∣ α ) p(\mathbf{w}|\mathcal{X},\mathcal{T},\alpha,\beta) \propto p(\mathcal{T}|\mathcal{X},\mathbf{w},\beta) p(\mathbf{w}|\alpha) \tag{1.66} p(wX,T,α,β)p(TX,w,β)p(wα)(1.66)

h ( w ) = p ( T ∣ X , w , β ) p ( w ∣ α ) h(\mathbf{w})=p(\mathcal{T}|\mathcal{X},\mathbf{w},\beta) p(\mathbf{w}|\alpha) h(w)=p(TX,w,β)p(wα) ,则

h ( w ) = N ( w ∣ 0 , α − 1 I ) ∏ n = 1 N N ( t n ∣ y ( x n , w ) , β − 1 ) \begin{aligned} h(\mathbf{w}) = \mathcal{N}(\mathbf{w}|\mathbf{0},\alpha^{-1}\mathbf{I}) \prod_{n=1}^N \mathcal{N}(t_n|y(x_n,\mathbf{w}),\beta^{-1}) \end{aligned} h(w)=N(w0,α1I)n=1NN(tny(xn,w),β1)

ln ⁡ h ( w ) = ln ⁡ N ( w ∣ 0 , α − 1 I ) + ln ⁡ { ∏ n = 1 N N ( t n ∣ y ( x n , w ) , β − 1 ) } = M + 1 2 ln ⁡ α − M + 1 2 ln ⁡ 2 π − α 2 w T w − β 2 ∑ n = 1 N [ t n − y ( x n , w ) ] 2 + N 2 ln ⁡ β − N 2 ln ⁡ 2 π = − β { 1 2 ∑ n = 1 N [ t n − y ( x n , w ) ] 2 + α 2 β w T w } + M + 1 2 ln ⁡ α + N 2 ln ⁡ β − M + N + 1 2 ln ⁡ 2 π \begin{aligned} \ln h(\mathbf{w}) &= \ln \mathcal{N}(\mathbf{w}|\mathbf{0},\alpha^{-1}\mathbf{I}) + \ln \left\{\prod_{n=1}^N \mathcal{N}(t_n|y(x_n,\mathbf{w}),\beta^{-1})\right\}\\ &= \frac{M+1}{2} \ln \alpha - \frac{M+1}{2} \ln 2\pi - \frac{\alpha}{2}\mathbf{w}^T\mathbf{w} - \frac{\beta}{2} \sum_{n=1}^N \left[t_n-y(x_n,\mathbf{w})\right]^2 + \frac{N}{2} \ln \beta - \frac{N}{2} \ln 2\pi\\ &= -\beta \left\{ \frac{1}{2} \sum_{n=1}^N \left[t_n-y(x_n,\mathbf{w})\right]^2 + \frac{\alpha}{2\beta}\mathbf{w}^T\mathbf{w}\right\} + \frac{M+1}{2} \ln \alpha + \frac{N}{2} \ln \beta - \frac{M+N+1}{2} \ln 2\pi \end{aligned} lnh(w)=lnN(w0,α1I)+ln{n=1NN(tny(xn,w),β1)}=2M+1lnα2M+1ln2π2αwTw2βn=1N[tny(xn,w)]2+2Nlnβ2Nln2π=β{21n=1N[tny(xn,w)]2+2βαwTw}+2M+1lnα+2Nlnβ2M+N+1ln2π

对参数 w \mathbf{w} w ,最大化后验概率 p ( w ∣ X , T , α , β ) p(\mathbf{w}|\mathcal{X},\mathcal{T},\alpha,\beta) p(wX,T,α,β) 就等价于最小化

1 2 ∑ n = 1 N [ t n − y ( x n , w ) ] 2 + α 2 β w T w \frac{1}{2} \sum_{n=1}^N \left[t_n-y(x_n,\mathbf{w})\right]^2 + \frac{\alpha}{2\beta}\mathbf{w}^T\mathbf{w} 21n=1N[tny(xn,w)]2+2βαwTw

若令 λ = α / β \lambda = \alpha / \beta λ=α/β ,则上式写为

1 2 ∑ n = 1 N [ t n − y ( x n , w ) ] 2 + λ 2 w T w \frac{1}{2} \sum_{n=1}^N \left[t_n-y(x_n,\mathbf{w})\right]^2 + \frac{\lambda}{2}\mathbf{w}^T\mathbf{w} 21n=1N[tny(xn,w)]2+2λwTw

也就是式 ( 1.4 ) (1.4) (1.4) 所示的带正则项的平方和误差函数。可见,以带正则项的平方和误差函数为目标函数等价于高斯假设下的最大后验估计。


上述推导,如有失误,欢迎留言指正!为谢!

你可能感兴趣的:(机器学习的事)