本系列为《模式识别与机器学习》的读书笔记。

一,线性基函数模型

1,线性基函数

回归问题的⽬标是在给定 D D D 维输⼊(input) 变量 x \boldsymbol{x} x 的情况下, 预测⼀个或者多个连续⽬标(target)变量 t t t 的值。

通过将⼀组输⼊变量的⾮线性函数进⾏线性组合, 我们可以获得⼀类更加有⽤的函数, 被称为基函数basis function)。

回归问题的最简单模型是输⼊变量的线性组合
y ( x , w ) = w 0 + w 1 x 1 + ⋯ + w D x D (3.1) y(\boldsymbol{x},\boldsymbol{w}) = w_0+w_1x_1+\dots+w_Dx_D\tag{3.1} y(x,w)=w0​+w1​x1​+⋯+wD​xD​(3.1)
其中, x = ( x 1 , x 2 , … , x D ) T \boldsymbol{x}=(x_1,x_2,\dots,x_D)^T x=(x1​,x2​,…,xD​)T ,通常称为线性回归linear regression),这个模型的关键性质在于它是参数 w 0 , … , w D w_0 ,\dots ,w_D w0​,…,wD​ 的⼀个线性函数。 但是, 它也是输⼊变量 x i x_i xi​ 的⼀个线性函数, 这给模型带来了极⼤的局限性。因此扩展模型的类别:将输⼊变量的固定的⾮线性函数进⾏线性组合:
y ( x , w ) = w 0 + ∑ j = 1 M − 1 w j ϕ j ( x ) (3.2) y(\boldsymbol{x},\boldsymbol{w}) = w_0+\sum_{j=1}^{M-1}w_{j}\phi_{j}(\boldsymbol{x})\tag{3.2} y(x,w)=w0​+j=1∑M−1​wj​ϕj​(x)(3.2)
其中, ϕ j ( x ) \phi_{j}(\boldsymbol{x}) ϕj​(x) 被称为基函数basis function),参 数 w 0 w_0 w0​ 使得数据中可以存在任意固定的偏 置,这个值通常被称为偏置参数bias parameter)。此模型称为线性模型

通常,定义⼀个额外的虚“基函数” ϕ 0 ( x ) = 1 \phi_{0}(\boldsymbol{x}) = 1 ϕ0​(x)=1 是很⽅便的,这时,
y ( x , w ) = ∑ j = 0 M − 1 w j ϕ j ( x ) = w T ϕ ( x ) (3.3) y(\boldsymbol{x},\boldsymbol{w}) = \sum_{j=0}^{M-1}w_{j}\phi_{j}(\boldsymbol{x}) = \boldsymbol{w}^{T}\boldsymbol{\phi}(\boldsymbol{x})\tag{3.3} y(x,w)=j=0∑M−1​wj​ϕj​(x)=wTϕ(x)(3.3)
其中, w = ( w 0 , x 1 , … , w M − 1 ) T \boldsymbol{w}=(w_0,x_1,\dots,w_{M-1})^T w=(w0​,x1​,…,wM−1​)T , ϕ = ( ϕ 0 , ϕ 2 , … , ϕ M − 1 ) T \boldsymbol{\phi}=(\phi_0,\phi_2,\dots,\phi_{M-1})^T ϕ=(ϕ0​,ϕ2​,…,ϕM−1​)T 。

在许多模式识别的实际应⽤中, 我们会对 原始的数据变量进⾏某种固定形式的预处理或者特征抽取。如果原始变量由向量 x \boldsymbol{x} x 组成,那么特征可以⽤基函数 { ϕ j ( x ) } \{\phi_{j}(\boldsymbol{x})\} {ϕj​(x)} 来表⽰。

多项式基函数的⼀个局限性在于它们是输⼊变量的全局函数,因此对于输⼊空间⼀个区域的改变将会影响所有其他的区域。这个问题的解决方案:把输⼊空间切分成若⼲个区域,然后对于每个区域⽤不同的多项式函数拟合,这样的函数叫做样条函数spline function)(Hastie et al., 2001)。

⾼斯基函数
ϕ j ( x ) = exp ⁡ { − ( x − μ j ) 2 2 s 2 } (3.4) \phi_{j}(x)=\exp\left\{-\frac{(x-\mu_{j})^2}{2s^{2}}\right\}\tag{3.4} ϕj​(x)=exp{−2s2(x−μj​)2​}(3.4)
其中, μ j \mu_{j} μj​ 控制了基函数在输⼊空间中的位置,参数 s s s 控制了基函数的空间⼤⼩。

sigmoid基函数
ϕ j ( x ) = σ ( x − μ j s ) (3.5) \phi_{j}(x)=\sigma\left(\frac{x-\mu_{j}}{s}\right)\tag{3.5} ϕj​(x)=σ(sx−μj​​)(3.5)
其中 σ ( a ) \sigma(a) σ(a) 是 logistic sigmoid函数,定义为:
σ a = 1 1 + exp ⁡ ( − a ) (3.6) \sigma_{a}=\frac{1}{1+\exp(-a)}\tag{3.6} σa​=1+exp(−a)1​(3.6)
除此之外,基函数还可以选择傅⾥叶基函数tanh函数等等。其中,tanh函数logistic sigmoid函数 的关系如下: tanh ⁡ ( a ) = 2 σ ( 2 a ) − 1 \tanh(a)=2\sigma(2a)-1 tanh(a)=2σ(2a)−1。

如图3.1~3.3,分别为是多项式基函数,⾼斯基函数,sigmoid基函数。


2,最⼤似然与最⼩平⽅

假设⽬标变量 t t t 由确定的函数 y ( x , w ) y(\boldsymbol{x},\boldsymbol{w}) y(x,w) 给出,这个函数被附加了⾼斯噪声,即

t = y ( x , w ) + ϵ t=y(\boldsymbol{x},\boldsymbol{w})+\epsilon t=y(x,w)+ϵ
其中, ϵ \epsilon ϵ 是⼀个零均值的⾼斯随机变量,精度(⽅差的倒数)为 β \beta β,则有:
p ( t ∣ x , w , β ) = N ( t ∣ y ( x , w ) , β − 1 ) (3.7) 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)
均值为:
E [ t ∣ x ] = ∫ t p ( t ∣ x ) d t = y ( x , w ) \mathbb{E}[t|\boldsymbol{x}]=\int tp(t|\boldsymbol{x})\mathrm{d}t=y(\boldsymbol{x},\boldsymbol{w}) E[t∣x]=∫tp(t∣x)dt=y(x,w)
考虑⼀个输⼊数据集 X = { x 1 , … , x N } \mathbf{X}=\{\boldsymbol{x}_1,\dots, \boldsymbol{x}_N\} X={x1​,…,xN​}, 对应的⽬标值为 t 1 , … , t N t_1,\dots , t_N t1​,…,tN​ 。 我们把⽬标向量 { t n } \{t_n\} {tn​} 组成⼀个列向量, 记作 t \mathbf{t} t。 假设这些数据点是独⽴地从分布公式(3.7)中抽取的,那么可以得到下⾯的似然函数的表达式, 它是可调节参数 w \boldsymbol{w} w 和 β \beta β 的函数,形式为:
p ( t ∣ X , w , β ) = ∏ n = 1 N N ( t n ∣ w T ϕ ( x n ) , β − 1 ) (3.8) p(\mathbf{t}|\mathbf{X},\boldsymbol{w},\beta)=\prod_{n=1}^{N}\mathcal{N}(t_{n}|\boldsymbol{w}^{T}\boldsymbol{\phi}(\boldsymbol{x}_{n}),\beta^{-1})\tag{3.8} p(t∣X,w,β)=n=1∏N​N(tn​∣wTϕ(xn​),β−1)(3.8)
取似然函数的对数,使⽤⼀元⾼斯分布的标准形式,可得:
ln ⁡ p ( t ∣ w , β ) = ∑ n = 1 N ln ⁡ N ( t n ∣ w T ϕ ( x n ) , β − 1 ) = N 2 ln ⁡ β − N 2 ln ⁡ ( 2 π ) − β E D ( w ) (3.9) \begin{aligned}\ln p(\mathbf{t}|\boldsymbol{w},\beta)&=\sum_{n=1}^{N}\ln \mathcal{N}(t_{n}|\boldsymbol{w}^{T}\boldsymbol{\phi}(\boldsymbol{x}_{n}),\beta^{-1}) \\ &= \frac{N}{2}\ln\beta-\frac{N}{2}\ln(2\pi)-\beta E_{D}(\boldsymbol{w}) \end{aligned}\tag{3.9} lnp(t∣w,β)​=n=1∑N​lnN(tn​∣wTϕ(xn​),β−1)=2N​lnβ−2N​ln(2π)−βED​(w)​(3.9)
其中,平⽅和误差函数的定义为:
E D ( w ) = 1 2 ∑ n = 1 N { t n − w T ϕ ( x n ) } 2 (3.10) E_{D}(\boldsymbol{w})=\frac{1}{2}\sum_{n=1}^{N}\{t_{n}-\boldsymbol{w}^{T}\boldsymbol{\phi}(\boldsymbol{x}_{n})\}^{2}\tag{3.10} ED​(w)=21​n=1∑N​{tn​−wTϕ(xn​)}2(3.10)
对数似然函数的梯度为:
∇ ln ⁡ p ( t ∣ w , β ) = β ∑ n = 1 N { t n − w T ϕ ( x n ) } ϕ ( x n ) T (3.11) \nabla\ln p(\mathbf{t}|\boldsymbol{w},\beta)=\beta\sum_{n=1}^{N}\{t_{n}-\boldsymbol{w}^{T}\boldsymbol{\phi}(\boldsymbol{x}_{n})\}\boldsymbol{\phi}(\boldsymbol{x}_{n})^{T}\tag{3.11} ∇lnp(t∣w,β)=βn=1∑N​{tn​−wTϕ(xn​)}ϕ(xn​)T(3.11)
令梯度等于零,求解 w \boldsymbol{w} w 可得:
w M L = ( Φ T Φ ) − 1 Φ T t (3.12) \boldsymbol{w}_{ML}=(\boldsymbol{\Phi}^{T}\boldsymbol{\Phi})^{-1}\boldsymbol{\Phi}^{T}\mathbf{t}\tag{3.12} wML​=(ΦTΦ)−1ΦTt(3.12)
这被称为最⼩平⽅问题的规范⽅程normal equation)。这⾥ Φ \boldsymbol{\Phi} Φ 是⼀个 N × M N \times M N×M 的矩阵,被称为设计矩阵design matrix),它的元素为 Φ n j = ϕ j ( x n ) \Phi_{nj}=\phi_{j}(\boldsymbol{x}_{n}) Φnj​=ϕj​(xn​) ,即
Φ = ( ϕ 0 ( x 1 ) ϕ 1 ( x 1 ) ⋯ ϕ M − 1 ( x 1 ) ϕ 0 ( x 2 ) ϕ 1 ( x 2 ) ⋯ ϕ M − 1 ( x 2 ) ⋮ ⋮ ⋱ ⋮ ϕ 0 ( x N ) ϕ 1 ( x N ) ⋯ ϕ M − 1 ( x N ) ) \mathbf{\Phi}=\left(\begin{array}{cccc}{\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) Φ=⎝⎜⎜⎜⎛​ϕ0​(x1​)ϕ0​(x2​)⋮ϕ0​(xN​)​ϕ1​(x1​)ϕ1​(x2​)⋮ϕ1​(xN​)​⋯⋯⋱⋯​ϕM−1​(x1​)ϕM−1​(x2​)⋮ϕM−1​(xN​)​⎠⎟⎟⎟⎞​
其中,量
Φ † ≡ ( Φ T Φ ) − 1 Φ T \mathbf{\Phi}^{\dagger} \equiv\left(\mathbf{\Phi}^{T} \mathbf{\Phi}\right)^{-1} \mathbf{\Phi}^{T} Φ†≡(ΦTΦ)−1ΦT
被称为矩阵 Φ \mathbf{\Phi} Φ 的 Moore-Penrose伪逆矩阵pseudo-inverse matrix)(Rao and Mitra, 1971; Golub and Van Loan, 1996)。

图3.4,最⼩平⽅解的⼏何表⽰,在⼀个 N N N 维空间中,坐标轴是 t 1 , … , t N t_1,\dots , t_N t1​,…,tN​ 的值。最⼩平⽅回归函数可以通过下⾯的⽅式得到:寻找数据向量 t \mathbf{t} t 在由基函数 ϕ j ( x ) \phi_{j}(\boldsymbol{x}) ϕj​(x) 张成的⼦空间上的正交投影,其中每个基函数都可以看成⼀个长度为 N N N 的向量 φ j \varphi_j φj​ ,它的元素为 ϕ j ( x n ) \phi_{j}(\boldsymbol{x}_{n}) ϕj​(xn​) 。注意, φ j \varphi_j φj​ 对应于 Φ \mathbf{\Phi} Φ 的第 j j j 列, ⽽ ϕ ( x n ) \boldsymbol{\phi}(\boldsymbol{x}_{n}) ϕ(xn​) 对应于 Φ \mathbf{\Phi} Φ 的第 i i i ⾏。

如果显式地写出偏置参数,那么误差函数公式(3.10)变为:
E D ( w ) = 1 2 ∑ n = 1 N { t n − w 0 − ∑ j = 1 M − 1 w j ϕ j ( x n ) } 2 (3.13) E_{D}(\boldsymbol{w})=\frac{1}{2}\sum_{n=1}^{N}\{t_{n}-w_{0}-\sum_{j=1}^{M-1}w_{j}\phi_{j}(\boldsymbol{x}_{n})\}^{2}\tag{3.13} ED​(w)=21​n=1∑N​{tn​−w0​−j=1∑M−1​wj​ϕj​(xn​)}2(3.13)
令关于 w 0 w_0 w0​ 的导数等于零,解出 w 0 w_0 w0​ ,可得
w 0 = t ˉ − ∑ j = 1 M − 1 w j ϕ ˉ j w_0=\bar{t}-\sum_{j=1}^{M-1}w_{j}\bar\phi_{j} w0​=tˉ−j=1∑M−1​wj​ϕˉ​j​
其中,
t ˉ = 1 N ∑ n = 1 N t n ϕ ˉ j = 1 N ∑ n = 1 N ϕ j ( x n ) \bar{t}=\frac{1}{N}\sum_{n=1}^{N}t_{n} \\ \bar{\phi}_{j}=\frac{1}{N}\sum_{n=1}^{N}\phi_{j}(\boldsymbol{x}_n) tˉ=N1​n=1∑N​tn​ϕˉ​j​=N1​n=1∑N​ϕj​(xn​)
因此,偏置 w 0 w_0 w0​ 补偿了⽬标值的平均值(在训练集上的)与基函数的值的平均值的加权求和之间的差。

关于噪声精度参数 β \beta β 最⼤化似然函数公式(3.9),结果为:
1 β M L = 1 N ∑ n = 1 N { t n − w M L T ϕ ( x n ) } 2 (3.14) \frac{1}{\beta_{ML}}=\frac{1}{N}\sum_{n=1}^{N}\{t_{n}-\boldsymbol{w}_{ML}^{T}\boldsymbol{\phi}(\boldsymbol{x}_{n})\}^{2}\tag{3.14} βML​1​=N1​n=1∑N​{tn​−wMLT​ϕ(xn​)}2(3.14)
因此,噪声精度的倒数由⽬标值在回归函数周围的残留⽅差residual variance)给出。

3,顺序学习

顺序算法中,每次只考虑⼀个数据点,模型的参数在每观测到⼀个数据点之后进⾏更新。顺序学习也适⽤于实时的应⽤,在实时应⽤中,数据观测以⼀个连续的流的⽅式持续到达,我们必须在观测到所有数据之前就做出预测。

我们可以获得⼀个顺序学习的算法通过考虑随机梯度下降(stochastic gradient descent)也 被称为顺序梯度下降sequential gradient descent)的⽅法。 如果误差函数由数据点的和组成 E = ∑ n E n E = \sum_{n} E_n E=∑n​En​ ,那么在观测到模式 n n n 之后,随机梯度下降算法使⽤下式更新参数向量 w \boldsymbol{w} w :
w ( τ + 1 ) = w ( τ ) − η ∇ E n (3.15) \boldsymbol{w}^{(\tau+1)}=\boldsymbol{w}^{(\tau)}-\eta\nabla E_{n}\tag{3.15} w(τ+1)=w(τ)−η∇En​(3.15)
其中 τ \tau τ 表⽰迭代次数, η \eta η 是学习率参数。 w \boldsymbol{w} w 被初始化为某个起始向 量 w ( 0 ) \boldsymbol{w}^{(0)} w(0) 。对于平⽅和误差函数公式(3.10)的情形,我们有:
w ( τ + 1 ) = w ( τ ) + η ( t n − w ( τ ) T ϕ n ) ϕ n (3.16) \boldsymbol{w}^{(\tau+1)}=\boldsymbol{w}^{(\tau)}+\eta(t_{n}-\boldsymbol{w}^{(\tau)T}\boldsymbol{\phi}_{n})\boldsymbol{\phi}_{n}\tag{3.16} w(τ+1)=w(τ)+η(tn​−w(τ)Tϕn​)ϕn​(3.16)
其中 ϕ n = ϕ ( x n ) \boldsymbol{\phi}_{n}=\boldsymbol{\phi}(\boldsymbol{x}_{n}) ϕn​=ϕ(xn​)。 这被称为最⼩均⽅least-mean-squares)或者 LMS算法。 η \eta η 的值需要仔细选择,确保算法收敛Bishop and Nabney, 2008)。

4,正则化最⼩平⽅

为误差函数添加正则化项的思想来控制过拟合,因此需要最⼩化的总的误差函数的形式为
E D ( w ) + λ E W ( w ) E_{D}(\boldsymbol{w})+\lambda E_{W}(\boldsymbol{w}) ED​(w)+λEW​(w)
其中 λ \lambda λ 是正则化系数,正则化项的⼀个最简单的形式为权向量的各个元素的平⽅和
E W ( w ) = 1 2 w T w E_{W}(\boldsymbol{w})=\frac{1}{2}\boldsymbol{w}^{T}\boldsymbol{w} EW​(w)=21​wTw
考虑平⽅和误差函数
E D ( w ) = 1 2 ∑ n = 1 N { t n − w T ϕ ( x n ) } 2 (3.17) E_{D}(\boldsymbol{w})=\frac{1}{2}\sum_{n=1}^{N}\{t_{n}-\boldsymbol{w}^{T}\boldsymbol{\phi}(\boldsymbol{x}_{n})\}^{2}\tag{3.17} ED​(w)=21​n=1∑N​{tn​−wTϕ(xn​)}2(3.17)
那么总误差函数就变成了
1 2 ∑ n = 1 N { t n − w T ϕ ( x n ) } 2 + λ 2 w T w \frac{1}{2}\sum_{n=1}^{N}\{t_{n}-\boldsymbol{w}^{T}\boldsymbol{\phi}(\boldsymbol{x}_{n})\}^{2}+\frac{\lambda}{2}\boldsymbol{w}^{T}\boldsymbol{w} 21​n=1∑N​{tn​−wTϕ(xn​)}2+2λ​wTw
这种对于正则化项的选择⽅法在机器学习的⽂献中被称为权值衰减weight decay)。

令总误差函数关于 w \boldsymbol{w} w 的梯度等于零,解出 w \boldsymbol{w} w ,有:
w = ( λ I + Φ T Φ ) − 1 Φ T t (3.18) \boldsymbol{w}=(\lambda \boldsymbol{I}+\boldsymbol{\Phi}^{T}\boldsymbol{\Phi})^{-1}\boldsymbol{\Phi}^{T}\boldsymbol{t}\tag{3.18} w=(λI+ΦTΦ)−1ΦTt(3.18)
有时使⽤⼀个更加⼀般的正则化项,这时正则化的误差函数的形式为:
1 2 ∑ n = 1 N { t n − w T ϕ ( x n ) } 2 + λ 2 ∑ j = 1 M ∣ w j ∣ q (3.19) \frac{1}{2}\sum_{n=1}^{N}\{t_{n}-\boldsymbol{w}^{T}\boldsymbol{\phi}(\boldsymbol{x}_{n})\}^{2}+\frac{\lambda}{2}\sum_{j=1}^{M}|w_{j}|^{q}\tag{3.19} 21​n=1∑N​{tn​−wTϕ(xn​)}2+2λ​j=1∑M​∣wj​∣q(3.19)
如图3.5~3.8,对于不同的参数 q q q,公式(3.19)中的正则化项的轮廓线。




在统计学的⽂献中, q = 1 q=1 q=1 的情形被称为套索lasso)(Tibshirani, 1996)。它的性质为:如果 λ \lambda λ 充分⼤,那么某些系数 w j w_j wj​ 会变为零,从⽽产⽣了⼀个稀疏sparse模型,这个模型中对应的基函数不起作⽤。

如图3.9, q = 2 q=2 q=2 的⼆次正则化项的限制区域。

如图3.10, q = 1 q=1 q=1 的套索正则化项的限制区域。

5,多个输出

对于预测 K > 1 K>1 K>1 个⽬标变量,我们把这些⽬标变量聚集起来,记作⽬标向量 t \boldsymbol{t} t ,其解决方案是:对于 t \boldsymbol{t} t 的每个分量,引⼊⼀个不同的基函数集合,从⽽变成了多个独⽴的回归问题。但是,⼀个更有趣的并且更常⽤的⽅法是对⽬标向量的所有分量使⽤⼀组相同的基函数来建模,即:
y ( x , w ) = W T ϕ ( x ) (3.20) \boldsymbol{y}(\boldsymbol{x}, \boldsymbol{w})=\boldsymbol{W}^{T}\phi(\boldsymbol{x})\tag{3.20} y(x,w)=WTϕ(x)(3.20)
其中 y \boldsymbol{y} y 是⼀个 K K K 维列向量, W \boldsymbol{W} W 是⼀个 M × K M\times K M×K 的参数矩阵, ϕ ( x ) \phi(\boldsymbol{x}) ϕ(x) 是⼀个 M M M 为列向量, 每个元素 为 ϕ j ( x ) \phi_{j}(\boldsymbol{x}) ϕj​(x) , ϕ 0 ( x ) = 1 \phi_{0}(\boldsymbol{x}) = 1 ϕ0​(x)=1 。 假设令⽬标向量的条件概率分布是⼀个各向同性的⾼斯分布,形式为:
p ( t ∣ x , W , β ) = N ( t ∣ W T ϕ ( x ) , β − 1 I ) (3.21) p(\boldsymbol{t}|\boldsymbol{x},\boldsymbol{W},\beta)=\mathcal{N}(\boldsymbol{t}|\boldsymbol{W}^{T}\boldsymbol{\phi}(\boldsymbol{x}),\beta^{-1}\boldsymbol{I})\tag{3.21} p(t∣x,W,β)=N(t∣WTϕ(x),β−1I)(3.21)
如果有⼀组观测 t 1 , … , t N \boldsymbol{t}_1,\dots,\boldsymbol{t}_N t1​,…,tN​ ,可以把这些观测组合为⼀个 N × K N \times K N×K 的矩阵 T \boldsymbol{T} T ,使得矩阵的第 n n n ⾏为 t n T \boldsymbol{t}_{n}^{T} tnT​ 。类似地,把输⼊向量 x 1 , … , x N \boldsymbol{x}_1,\dots,\boldsymbol{x}_N x1​,…,xN​ 组合为矩阵 X \boldsymbol{X} X 。这样,对数似然函数:
ln ⁡ p ( T ∣ X , W , β ) = ∑ n = 1 N ln ⁡ N ( t n ∣ W T ϕ ( x n ) , β − 1 I ) = N K 2 ln ⁡ ( β 2 π ) − β 2 ∑ n = 1 N ∣ ∣ t n − W T ϕ ( x n ) ∣ ∣ 2 (3.22) \begin{aligned}\ln p(\mathbf{T}|\boldsymbol{X},\boldsymbol{W},\beta)&=\sum_{n=1}^{N}\ln \mathcal{N}(\boldsymbol{t}_{n}|\boldsymbol{W}^{T}\boldsymbol{\phi}(\boldsymbol{x}_{n}),\beta^{-1}\boldsymbol{I}) \\ &= \frac{NK}{2}\ln\left(\frac{\beta}{2\pi}\right)-\frac{\beta}{2}\sum_{n=1}^{N}||\boldsymbol{t}_{n}-\boldsymbol{W}^{T}\boldsymbol{\phi}(\boldsymbol{x}_{n})||^{2} \end{aligned}\tag{3.22} lnp(T∣X,W,β)​=n=1∑N​lnN(tn​∣WTϕ(xn​),β−1I)=2NK​ln(2πβ​)−2β​n=1∑N​∣∣tn​−WTϕ(xn​)∣∣2​(3.22)
关于 W \boldsymbol{W} W 最⼤化这个函数,可得:
W M L = ( Φ T Φ ) − 1 Φ T T (3.23) \boldsymbol{W}_{ML}=(\boldsymbol{\Phi}^{T}\boldsymbol{\Phi})^{-1}\boldsymbol{\Phi}^{T}\boldsymbol{T}\tag{3.23} WML​=(ΦTΦ)−1ΦTT(3.23)
对于每个⽬标变量 t k t_k tk​ 考察这个结果,那么有
w k = ( Φ T Φ ) − 1 Φ T t k = Φ † t k (3.24) \boldsymbol{w}_{k}=(\boldsymbol{\Phi}^{T}\boldsymbol{\Phi})^{-1}\boldsymbol{\Phi}^{T}\boldsymbol{t}_{k}=\mathbf{\Phi}^{\dagger}\boldsymbol{t}_{k}\tag{3.24} wk​=(ΦTΦ)−1ΦTtk​=Φ†tk​(3.24)
其中, t k \boldsymbol{t}_{k} tk​ 是⼀个 N N N 维列向量, 元素为 t n k t_{nk} tnk​ 其中 n = 1 , … , N n=1,\dots,N n=1,…,N 。 因此不同⽬标变量的回归问题在这⾥被分解开,并且我们只需要计算⼀个伪逆矩阵 Φ † \mathbf{\Phi}^{\dagger} Φ† ,这个矩阵是被所有向量 w k \boldsymbol{w}_k wk​ 所共享的。

二, 偏置-方差分解

假如已知条件概率分布 p ( t ∣ x ) p(t|\boldsymbol{x}) p(t∣x),每⼀种损失函数都能够给出对应的最优预测结果。使⽤最多的⼀个选择是平⽅损失函数,此时最优的预测由条件期望(记作 h ( x ) h(\boldsymbol{x}) h(x) )给出,即
h ( x ) = E [ t ∣ x ] = ∫ t p ( t ∣ x ) d t (3.25) h(\boldsymbol{x}) = \mathbb{E}[t|\boldsymbol{x}]=\int tp(t|\boldsymbol{x})\mathrm{d}t\tag{3.25} h(x)=E[t∣x]=∫tp(t∣x)dt(3.25)
考察平⽅损失函数的期望:
E [ L ] = ∫ { y ( x ) − h ( x ) } 2 p ( x ) d x + ∫ ∫ { h ( x ) − t } 2 p ( x , t ) d x d t (3.26) \mathbb{E}[\boldsymbol{L}]=\int\{y(\boldsymbol{x})-h(\boldsymbol{x})\}^{2}p(\boldsymbol{x})\mathrm{d}\boldsymbol{x}+\int\int\{h(\boldsymbol{x})-t\}^{2}p(\boldsymbol{x},t)\mathrm{d}\boldsymbol{x}\mathrm{d}t\tag{3.26} E[L]=∫{y(x)−h(x)}2p(x)dx+∫∫{h(x)−t}2p(x,t)dxdt(3.26)

其中,与 y ( x ) y(\boldsymbol{x}) y(x) ⽆关的第⼆项,是由数据本⾝的噪声造成的,表⽰期望损失能够达到的最⼩值。第⼀项与对函数 y ( x ) y(\boldsymbol{x}) y(x) 的选择有关,我们要找⼀个 y ( x ) y(\boldsymbol{x}) y(x) 的解,使得这⼀项最⼩。由于它是⾮负的,因此我们希望能够让这⼀项的最⼩值等于零。

考察公式(3.26)的第⼀项被积函数,对于⼀个特定的数据集 D \mathcal{D} D,它的形式为
{ y ( x ; D ) − h ( x ) } 2 \{y(\boldsymbol{x};\mathcal{D})-h(\boldsymbol{x})\}^{2} {y(x;D)−h(x)}2
由于这个量与特定的数据集 D \mathcal{D} D 相关,因此对所有的数据集取平均。如果我们在括号内减去然后加上 E D [ y ( x ; D ) ] \mathbb{E}_{\mathcal{D}}[y(\boldsymbol{x};\mathcal{D})] ED​[y(x;D)] ,然后展开,有
{ y ( x ; D ) − E D [ y ( x ; D ) ] + E D [ y ( x ; D ) ] − h ( x ) } 2 = { y ( x ; D ) − E D [ y ( x ; D ) ] } 2 + { E D [ y ( x ; D ) ] − h ( x ) } 2 + 2 { y ( x ; D ) − E D [ y ( x ; D ) ] } { E D [ y ( x ; D ) ] − h ( x ) } \begin{aligned}\{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})\}^{2} \\=\{y(\boldsymbol{x};\mathcal{D})-\mathbb{E}_{\mathcal{D}}[y(\boldsymbol{x};\mathcal{D})]\}^{2}+\{\mathbb{E}_{\mathcal{D}}[y(\boldsymbol{x};\mathcal{D})]-h(\boldsymbol{x })\}^{2}\\+2\{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})\}\end{aligned} {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)}​
现在关于 D \mathcal{D} D 求期望,然后注意到最后⼀项等于零,可得
E D [ { y ( x ; D ) − h ( x ) } 2 ] = { E D [ y ( x ; D ) ] − h ( x ) } 2 ⏟ ( 偏 置 ) 2 + E D [ { y ( x ; D ) − E D [ y ( x ; D ) ] } 2 ] ⏟ 方 差 (3.27) \begin{array}{l}{\mathbb{E}_{\mathcal{D}}\left[\{y(\boldsymbol{x} ; \mathcal{D})-h(\boldsymbol{x})\}^{2}\right]} \\ {\quad=\underbrace{\left\{\mathbb{E}_{\mathcal{D}}[y(\boldsymbol{x}; \mathcal{D})]-h(\boldsymbol{x})\right\}^{2}}_{(偏置)^{2}}+\underbrace{\mathbb{E}_{\mathcal{D}}\left[\left\{y(\boldsymbol{x} ; \mathcal{D})-\mathbb{E}_{\mathcal{D}}[y(\boldsymbol{x} ; \mathcal{D})]\right\}^{2}\right]}_{方差}}\end{array}\tag{3.27} ED​[{y(x;D)−h(x)}2]=(偏置)2 {ED​[y(x;D)]−h(x)}2​​+方差 ED​[{y(x;D)−ED​[y(x;D)]}2]​​​(3.27)
其中, y ( x ; D ) y(\boldsymbol{x};\mathcal{D}) y(x;D) 与回归函数 h ( x ) h(\boldsymbol{x}) h(x) 的差的平⽅的期望可以表⽰为两项的和。第⼀项,被称为平⽅偏置bias),表⽰所有数据集的平均预测与预期的回归函数之间的差异。第⼆项,被称为⽅差variance),度量了对于单独的数据集,模型所给出的解在平均值附近波动的情况,因此也就度量了函数 y ( x ; D ) y(\boldsymbol{x};\mathcal{D}) y(x;D) 对于特定的数据集的选择的敏感程度。

综上,对于期望平⽅损失的分解:
期 望 损 失 = 偏 置 2 + 方 差 + 噪 声 (3.28) 期望损失=偏置^{2}+方差+噪声\tag{3.28} 期望损失=偏置2+方差+噪声(3.28)
其中,
偏 置 2 = ∫ { E D [ y ( x ; D ) ] − h ( x ) } 2 p ( x ) d x 方 差 = ∫ E D [ { y ( x ; D ) − E D [ y ( x ; D ) ] } 2 p ( x ) d x 噪 声 = ∫ ∫ { h ( x ) − t } 2 p ( x , t ) d x d t 偏置^{2}=\int \{\mathbb{E}_{\mathcal{D}}[y(\boldsymbol{x};\mathcal{D})]-h(\boldsymbol{x})\}^{2}p(\boldsymbol{x})\mathrm{d}\boldsymbol{x} \\ 方差=\int \mathbb{E}_{\mathcal{D}}[\{y(\boldsymbol{x} ; \mathcal{D})-\mathbb{E}_{\mathcal{D}}[y(\boldsymbol{x} ; \mathcal{D})]\}^{2}p(\boldsymbol{x} )\mathrm{d}\boldsymbol{x} \\ 噪声=\int\int\{h(\boldsymbol{x})-t\}^{2}p(\boldsymbol{x},t)\mathrm{d}\boldsymbol{x}\mathrm{d}t 偏置2=∫{ED​[y(x;D)]−h(x)}2p(x)dx方差=∫ED​[{y(x;D)−ED​[y(x;D)]}2p(x)dx噪声=∫∫{h(x)−t}2p(x,t)dxdt
对于⾮常灵活的模型来说,偏置较⼩, ⽅差较⼤;对于相对固定的模型来说,偏置较⼤,⽅差较⼩。

图3.11~3.13,模型复杂度对于偏置和⽅差的依赖的说明。左侧⼀列给出了对于不同的 ln ⁡ λ \ln \lambda lnλ 值,根据数据集拟合模型的结果。 为了清晰起见, 只给出了100个拟合模型中的20个。 右侧⼀列给出了对应的100个拟合的均值 (红⾊)以及⽤于⽣成数据集的正弦函数(绿⾊)。



举例:讨论正弦数据集,我们产⽣了100个数据集合, 每个集合都包含 N = 25 N = 25 N=25 个数据点,都是独⽴地从正弦曲线 h ( x ) = sin ⁡ ( 2 π x ) h(x)=\sin(2\pi x) h(x)=sin(2πx) 抽取的。数据集的编号为 l = 1 , … , L l = 1, \dots , L l=1,…,L , 其中 L = 100 L=100 L=100,并且对于每个数据 集 D ( l ) \mathcal{D}^{(l)} D(l) ,我们通过最⼩化正则化的误差函数拟合了⼀个带有24个⾼斯基函数的模型,然 后给出了预测函数 y ( l ) ( x ) y^{(l)}(x) y(l)(x) ,如图3.11~13所⽰。如图3.11,对应着较⼤的正则化系数 λ \lambda λ,这样的模型的⽅差很⼩(因为左侧图中的红⾊曲线看起来很相似),但是偏置很⼤(因为右侧图中的两条曲线看起来相当不同)。相反,如图3.13,正则化系数 λ \lambda λ 很⼩,这样模型的⽅差较⼤(因为左侧图中 的红⾊曲线变化性相当⼤), 但是偏置很⼩(因为平均拟合的结果与原始正弦曲线⼗分吻合)。注意,把 M = 25 M = 25 M=25 这种复杂模型的多个解进⾏平均,会产⽣对于回归函数⾮常好的拟合, 这表明求平均是⼀个很好的步骤。事实上,将多个解加权平均是贝叶斯⽅法的核⼼,虽然这种求平均针对的是参数的后验分布,⽽不是针对多个数据集。

对于这个例⼦,我们也可以定量地考察偏置-⽅差折中。平均预测由下式求出:
y ˉ ( x ) = 1 L ∑ l = 1 L y ( l ) ( x ) (3.29) \bar{y}(x)=\frac{1}{L}\sum_{l=1}^{L}y^{(l)}(x)\tag{3.29} yˉ​(x)=L1​l=1∑L​y(l)(x)(3.29)
有,
偏 置 2 = 1 N ∑ n = 1 N { y ˉ ( x n ) − h ( x ) } 2 偏置^{2}=\frac{1}{N}\sum_{n=1}^{N}\{\bar{y}(x_{n})-h(x)\}^{2} 偏置2=N1​n=1∑N​{yˉ​(xn​)−h(x)}2

方 差 = 1 N ∑ n = 1 N 1 L ∑ l = 1 L { y ( l ) ( x n ) − y ˉ ( x n ) } 2 方差=\frac{1}{N}\sum_{n=1}^{N}\frac{1}{L}\sum_{l=1}^{L}\{y^{(l)}(x_{n})-\bar{y}(x_{n})\}^{2} 方差=N1​n=1∑N​L1​l=1∑L​{y(l)(xn​)−yˉ​(xn​)}2

图3.14,平⽅偏置和⽅差的图像,以及它们的加和。

【机器学习基础】线性基函数模型相关推荐

  1. 机器学习基础6--集群模型和算法

    案例: 现在手上有许多的文档,需要将其按照类型(体育,财经,科技等)进行分类,也就是对文章进行分组或聚类. 分析: 如果手上有已经标记过类型的数据,可以将其作为训练集进行学习. 那么这是否是一个多元分 ...

  2. 【机器学习基础】说模型过拟合的时候,说的是什么?

    前言 机器学习中,模型的拟合效果意味着对新数据的预测能力的强弱(泛化能力).而程序员评价模型拟合效果时,常说"过拟合"及"欠拟合",那究竟什么是过/欠拟合呢?什 ...

  3. 【机器学习基础】逻辑回归 + GBDT模型融合实战!

    作者:吴忠强,东北大学,Datawhale成员 一.GBDT+LR简介 协同过滤和矩阵分解存在的劣势就是仅利用了用户与物品相互行为信息进行推荐, 忽视了用户自身特征, 物品自身特征以及上下文信息等,导 ...

  4. 深度学习基础:机器学习中的基函数与函数空间

    [机器学习中的数学]基函数与函数空间 引言 在学习线性回归模型的时候就会遇到基函数,可能我们会遇到多项式基函数.高斯基函数.sigmoid基函数,当然在高等数学和信号系统中还经常会碰到傅里叶基.有时候 ...

  5. 【机器学习基础】数学推导+纯Python实现机器学习算法8-9:线性可分支持向量机和线性支持向量机...

    Python机器学习算法实现 Author:louwill 前面两讲我们对感知机和神经网络进行了介绍.感知机作为一种线性分类模型,很难处理非线性问题.为了处理非线性的情况,在感知机模型的基础上有了两个 ...

  6. 机器学习里面的基函数_机器学习系列(一)——基础概念及分类

    机器学习基础(一) emm... 那个第一篇文章,简单的自我介绍一下,机器学习小白,希望和大家一起进步,有什么问题可以留言一起探讨. 本文撰写于2020/1/1 是本人学习机器学习时,做的笔记摘要,为 ...

  7. 机器学习基础:模型评估(下)

    目录 1. 引言 2. 进一步评估 3. 机器学习中的偏差和方差种类 3.1 过拟合 3.2 欠拟合 3.3 训练曲线观察泛化性 3.4 模型偏差和方差(bias and variance) 3.4. ...

  8. 机器学习 —— 基础整理(六)线性判别函数:感知器、松弛算法、Ho-Kashyap算法...

    这篇总结继续复习分类问题.本文简单整理了以下内容: (一)线性判别函数与广义线性判别函数 (二)感知器 (三)松弛算法 (四)Ho-Kashyap算法 闲话:本篇是本系列[机器学习基础整理]在time ...

  9. 短小精悍-机器学习核心概念、模型、基础知识点简明手册-免费分享

    该手册只有130页,整理了几乎所有关机机器学习的概念.模型.基础知识点,它将帮助读者快速回顾关于机器学习相关的核心知识点和重要公式.模型.概念.涉及概率模型.处理离散数据的生成模型.高斯模型.贝叶斯模 ...

最新文章

  1. python怎么打开交互式窗口-在交互式环境中执行Python程序过程详解
  2. C#中如何将光标定位在某个控件中?
  3. How Kyma plugin register hook to Activate and deactivate event
  4. 汇编语言(二十三)之求一个数的补数
  5. android java 时间格式化_(Java / Android)计算两个日期之间的日期,并以特定格式显示结果...
  6. 编程杂谈---vb,vb.net,java数据类型区分
  7. 删除word中单独一页的页眉线和前后有页眉但在中间加一页空白页
  8. 正则表达式,json表达式
  9. 虚拟机vmware设置nat模式上网
  10. 微信公众号开发之iOS分享失败
  11. Linux的目录结构及对应目录下存放的内容
  12. Python之pandas学习笔记
  13. 穷举法(枚举法)实例解析
  14. 面试题:看数字找规律
  15. 创业起步?先收藏这份终极指南
  16. python 财务系统开源系统_10 大顶级开源 ERP 系统
  17. 预估市场过万亿,“即时零售”到底是什么来头?
  18. Qt之QWizard向导界面
  19. java毕业设计会议室预约管理系统(附源码、数据库)
  20. #10016. 「一本通 1.2 练习 3」灯泡(三分)

热门文章

  1. xshell基础使用命令
  2. LCCUP 22秋季编程大赛
  3. 内网穿透工具---frp使用教程
  4. 服务器常用状态码及其含义
  5. eclipse 打不开,弹出一个框。
  6. [ 常用工具篇 ] burpsuite_pro 安装配置详解(附安装包)
  7. Sentinel @SentinelResource 详解
  8. Python 关于浮点数取整详解
  9. python的取整函数:向上取整,向下取整,四舍五入取整
  10. 构造和析构函数的调用