第四章 线性回归 Linear Regression
线性回归最小二乘法
岭回归(Ridge Regression)
Lasso回归
回归问题的目标是在给定 DD 维输入(input)变量 xx 的情况下,预测一个或者多个连续目标(target)变量 tt 的值。
4.1 线性回归
线性模型
线性模型的基本形式
回归问题的最简单模型是输⼊变量的线性组合,称为线性回归(linear regression)。
这个模型的关键性质:是参数 w0,…,wDw_0, …,w_D 的⼀个线性函数。
线性模型一般形式:
f(x)=w1x1+w2x2+…+wdxd+bf(\boldsymbol{x}) = w_1x_1 + w_2x_2 + \ldots + w_dx_d + b
其中 x=(x1;x2;…;xd)\boldsymbol{x} = (x_1;x_2;\ldots;x_d) 是由输入特征,其中 xix_i 是 x\boldsymbol{x} 的第 ii 个属性。
向量形式:
f(x;w,b)=w⊤x+bf(\boldsymbol{x};\boldsymbol{w},b) = \boldsymbol{w}^\top\boldsymbol{x}+b
其中 w=(w1;w2;…;wd)\boldsymbol{w} = (w_1;w_2;\ldots;w_d)
增广权重向量和增广特征向量:
f(x;w^)=w^Tx^f(\boldsymbol{x};\boldsymbol{\hat{w}})=\boldsymbol{\hat{w}}^{\text{T}}\boldsymbol{\hat{x}}
线性模型优点
- 形式简单 、易于建模
- 可解释性强
- 非线性模型的基础(引入层级结构或高维映射)
线性模型例子
综合考虑色泽、根蒂和敲声来判断西瓜好不好
其中根蒂的系数最大,表明根蒂最要紧; 而敲声的系数比色泽大,说明敲声比色泽更重要
f好瓜(x)=0.2⋅x色泽+0.5⋅x根蒂+0.3⋅x敲声+1f_{好瓜}(x)=0.2·x_{色泽}+0.5·x_{根蒂}+0.3·x_{敲声}+1
★线性回归 Linear Regression
线性回归,输入变量的线性组合构成的线性模型,目的是尽可能准确地预测输出值。线性回归问题只要模型对于系数是线性关系即成立。
一元线性回归
每个 xix_i 是一元变量,只有一个参数 ww。
一元线性回归目标:f(xi)=wxi+bf(x_i) = wx_i+b 使得 f(xi)≃yif(x_i) \simeq y_i
参数/模型估计:最小二乘法(least square method)
最小二乘回归 Least Squares Regression
最小二乘回归(最小平方回归, Least Squares Regression)是线性回归的一种方法,通过最小化误差的平方和寻找数据的最佳函数匹配。
最小二乘回归损失函数:
L=12n∑in(y真实i−y模型i)2L=\frac{1}{2n}\sum_i^n(y_{真实i}-y_{模型i})^2
概率解释:输入 xx,目标为 tt,假设 tt 为 y(x)y(x) 加上一个零均值的高斯噪声得到,在这个假设下采用极大似然求解y(x)y(x) 的参数就得到最小二乘方法。
一元线性回归的最小二乘法
目标函数:最小化均方误差
分别对w和b求导,可得
得到闭式(closed-form)解
其中
多元线性回归
每个 xx 是多元变量(向量 xi\boldsymbol{x}_i),有多个参数 ww(向量 w\boldsymbol{w})。
给定数据集
多元线性回归目标:f(xi)=w⊤xi+bf(\boldsymbol{x}_i) = \boldsymbol{w}^ \top \boldsymbol{x}_i+b 使得 f(xi)≃yif(\boldsymbol{x}_i) \simeq y_i
把w和b吸收入向量形式 w^=(w;b)\hat{\boldsymbol{w}} = (\boldsymbol{w};b),数据集表示为
X=(x11x12⋯x1d1x21x22⋯x2d1⋮⋮⋱⋮⋮xm1xn2⋯xmd1)=(x1T1x2T1⋮⋮xmT1)y=(y1;y2;…;ym)\mathbf{X}=\begin{pmatrix}x_{11}&x_{12}&\cdots&x_{1d}&1\\ x_{21}&x_{22}&\cdots&x_{2d}&1\\ \vdots&\vdots&\ddots&\vdots&\vdots\\ x_{m1}&x_{n2}&\cdots&x_{md}&1\end{pmatrix}=\begin{pmatrix}\boldsymbol{x}_{1}^{\text{T}}&1\\ \boldsymbol{x}_{2}^{\text{T}}&1\\ \vdots&\vdots\\ \boldsymbol{x}_{m}^{\text{T}}&1\end{pmatrix} \\ \boldsymbol{y}=(y_1;y_2;\ldots;y_m)
多元线性回归的最小二乘法
目标函数:
多元线性回归的满秩讨论
XTXX^TX 是满秩矩阵:
XTXX^TX 不是满秩矩阵:
-
奇异值分解(SVD)
-
引入正则化
最小二乘回归例题
请采用最小二乘回归用直线拟合下面三个数据点:(1,0.9),(0,0.1),(2,2)(1,0.9),(0,0.1),(2,2)。
基函数 ϕ(x)\phi(x)
并不是所有的函数都能通过输入变量直接线性地近似,例如多项式函数 y=10+3x12−2x22+εy=10+3{x_{1}}^2-2{x_{2}}^2+\varepsilon。这样的情况下,我们需要采用输入变量的多项式或其它项来拟合函数,这样还是线性回归吗?
是的,只要对于权重 ww 是线性的就仍然是线性回归问题 。
在一些应用中,我们对原始数据变量进行一些预处理或特征提取。比如原始变量为 xx,特征可以表示为基函数的形式 ϕ(x)\phi(x)。通过采用基函数,我们使线性模型可以是输入变量的非线性函数。
基函数,是指通过将一组输入变量的非线性函数进行线性组合得到的一类函数,该模型是参数的线性函数,但关于输入变量是非线性的。
线性模型扩展形式
将输⼊变量的固定数量的⾮线性函数进⾏线性组合
y(x,w)=w0+∑j=1M−1wjϕj(x)y(\boldsymbol{x},\boldsymbol{w})=w_0+\sum\limits_{j=1}^{M-1}w_j\phi_j(\boldsymbol{x})
ϕ(x)\phi(x) 被称为基函数 (basis function)
模型中的参数总数为 MM
基函数的选择
1)多项式基函数
其中 MM 是多项式的阶数(order),
xjx^j 表⽰ xx 的 jj 次幂,
多项式系数 w0,…,wMw_0 ,…,w_M 整体记作向量 ww,
多项式函数 y(x,w)y(x,w) 是 xx 的⼀个⾮线性函数,
是系数 ww 的⼀个线性函数。
2)“高斯”基函数
参数 μjμ_j 控制了基函数在输入空间中的位置,
参数 ss 控制了基函数的空间大小
3)sigmoid 基函数
4.2 极大似然与最小二乘
与之前一样,我们假设目标变量 tt 由确定的函数 y(x;w)y(\boldsymbol{x};\boldsymbol{w}) 给出,这个函数被附加了高斯噪声,即
t=y(x;w)+ϵt = y(\boldsymbol{x};\boldsymbol{w}) + ϵ
其中 ϵϵ 是一个零均值的高斯随机变量,精度(方差的倒数)为 β\beta(β−1=σ2\beta^{-1} = \sigma^2)。因此我们有
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})
分布的均值为 y(x,w)y(x, \boldsymbol{w})
y(x,w)=w0+w1x+w2x2+…+wMxM=∑j=0Mwjxjy(x,\boldsymbol{w})=w_0+w_1x+w_2x^2+\ldots+w_Mx^M=\sum\limits_{j=0}^M w_jx^j
最大似然
w\boldsymbol{w} 的解
计算梯度,并使它等于零
∇wlnp(t∣w,β)=β∑n=1N{tn−wTϕ(xn)}ϕ(xn)T=0\nabla_{\textbf{w}}\ln p(\textbf{t}|\textbf{w},\beta) =\beta\sum_{n=1}^N\left\{t_n-\mathbf{w}^{\text{T}}\phi(\mathbf{x}_n)\right\}\boldsymbol{\phi}(\mathbf{x}_n)^{\text{T}}=\mathbf{0}
求解 w 得到:
最大似然解
偏置参数 w0w_0
偏置 w0w_0 补偿了⽬标值的平均值(在训练集上的)与基函数的值的平均值的加权求和之间的差。
噪声精度 β\beta
1βML=1N∑n=1N{tn−wMLTϕ(xn)}2\frac{1}{\beta_{ML}}=\frac{1}{N}\sum_{n=1}^N\{t_n-\boldsymbol{w}_{ML}^T\phi(\boldsymbol{x}_n)\}^2
噪声精度的倒数由⽬标值在回归函数周围的残留⽅差(residual variance)给出。
4.3 正则化最小二乘
正则化最小二乘
正则化项
为误差函数添加正则化项 EW(w)E_W(\boldsymbol{w}) 的思想来控制过拟合:
ED(w)+λEW(w)E_D(\boldsymbol{w}) + \lambda E_W(\boldsymbol{w})
λλ 是正则化系数,控制数据相关的误差 ED(w)E_D(\boldsymbol{w}) 和正则化项 EW(w)E_W(\boldsymbol{w}) 的相对重要性。
平方误差和函数:
ED(w)=12∑n=1N{tn−wTϕ(xn)}2E_D(\boldsymbol{w})=\frac{1}{2}\sum\limits_{n=1}^N\{t_n-\boldsymbol{w}^T\phi(\boldsymbol{x}_n)\}^2
权值衰减
最简单的正则化项:权值衰减 (weight decay)
权值衰减法:把参数的值向零的方向收缩
- 岭回归 / 山脊回归 Ridge Regression
- 套索回归 Lasso Regression
★岭回归 / 山脊回归 Ridge Regression
定义:岭回归也是一个线性回归方法,是一种改良的最小二乘估计法,通过在最小二乘法的损失函数中加上权重系数模的平方来控制模型的复杂度,是一种正则化的最小二乘估计法。
L=12n∑in(y真实i−y模型i)2+λ∑wi2L=\frac{1}{2n}\sum_i^n(y_{真实i}-y_{模型i})^2+\lambda\sum w_{i}^2
概率解释:输入x,目标为t,假设t为y(x)加上一个零均值的高斯噪声得到,在这个假设下采用极大似然求解 y(x) 的参数就得到最小二乘方法。岭回归相当于假设权重系数w服从高斯分布。
优点:把参数本身也加入到损失函数中,防止参数过大而引起过拟合。
正则化项 EW(w)E_W(\boldsymbol{w}):
EW(w)=12wTwE_W(\boldsymbol{w})=\frac{1}{2}\boldsymbol{w}^T\boldsymbol{w}
总误差函数
12∑n=1N{tn−wTϕ(xn)}2+λ2wTw\frac{1}{2}\sum_{n=1}^N\{t_n-\boldsymbol{w}^T\phi(\boldsymbol{x}_n)\}^2+\frac{\lambda}{2}\boldsymbol{w}^T\boldsymbol{w}
上式中对正则化项的选择方法称为权值衰减/参数收缩,其把参数的值向0的方向收缩,这种方法的优点在于,误差函数是 w\boldsymbol{w} 的二次函数,因此精确的最小值具有解析解。
岭回归的闭式解
关于 w\boldsymbol{w} 的梯度等于零,解出 w\boldsymbol{w}
正则化解:
w=(λI+ΦTΦ)−1ΦTt\boldsymbol{w}=(\lambda\boldsymbol{I}+\boldsymbol{\Phi}^T\boldsymbol{\Phi})^{-1}\boldsymbol{\Phi}^T\boldsymbol{t}
这是最小二乘法解的一个简单的扩展。
若没有正则化项,原来求解的最小平方:
wML=(ΦTΦ)−1ΦTt\mathbf{w}_{\text{ML}}=\left(\boldsymbol{\Phi}^{\text{T}}\boldsymbol{\Phi}\right)^{-1}\boldsymbol{\Phi}^{\text{T}}\boldsymbol{t}
原来求逆的矩阵 ΦTΦ\Phi^{\mathrm{T}} \Phi 可能是奇异阵的,现在 λI+ΦTΦ\lambda \mathbf{I} + \Phi^{\mathrm{T}} \Phi 是满秩矩阵(一定可逆),即使 ΦTΦ\Phi^{\mathrm{T}} \Phi 不是。
需注意,Φ\mathbf{\Phi} 是一个 N×MN\times M 的设计矩阵,t=(t1,…,tN)T\mathbf{t}={(t_1,\ldots,t_N)}^T 是目标真值组成的列向量。
正则化项的几何解释
岭回归的最优解
更加一般的正则化项
12∑n=1N{tn−wTΦ(xn)}2+λ2∑j=1M∣wj∣q\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
正则化项的轮廓线:
q=2q=2 对应二次正则化项
q=1q=1 时被称为 Lasso (套索)正则化项,对应 Lasso 回归
★套索回归 Lasso Regression
Lasso 回归
12∑n=1N{tn−wTΦ(xn)}2+λ2∑j=1M∣wj∣q\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
q=1q=1 时被称为 Lasso (套索)正则化项,对应 Lasso 回归
Lasso 回归的稀疏性
Lasso 回归当 λ 足够大时,一些系数会趋近于 0 ,对应的基函数项不发挥作用,从而得到一个稀疏的模型。
正则化方法结论
正则化方法通过限制模型的复杂度,使得复杂的模型能够在有限大小的数据集上进行训练,而不会产生严重的过拟合。
然而,这样做就使确定最优的模型复杂度的问题从确定合适的基函数数量的问题转移到了确定正则化系数 λ\lambda 的合适值的问题上。
4.4 偏置-方差分解 Bias-variance decomposition
偏置和方差
偏差是用所有可能的训练数据集训练出的所有模型的输出的平均值与真实模型的输出值之间的差异。
方差是不同的训练数据集训练出的模型输出值之间的差异。
模型不能适配训练样本,有一个很大的偏差,因此我们需要更复杂的模型。那么,是不是模型越复杂拟合程度越高越好呢?也不是,因为还有方差。
一般来说,简单的模型会有一个较大的偏差和较小的方差,复杂的模型偏差较小方差较大。
欠拟合:模型不能适配训练样本,有一个很大的偏差。
过拟合:模型很好的适配训练样本,但在测试集上表现很糟,有一个很大的方差。
偏置-方差分解
(h(x)为真实模型,y为训练出的模型)
由平方损失函数的期望:
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})\}^2p(\boldsymbol{x})\mathrm{d}\boldsymbol{x}+\iint\{h(\boldsymbol{x})-t\}^2p(\boldsymbol{x},t)\mathrm{d}\boldsymbol{x}\mathrm{d}t
上式第二项与 y(x)y(\boldsymbol{x}) 无关,是由数据本身的噪声造成的,表示期望损失能够达到的最小值。
第一项与我们对函数 y(x)y(\boldsymbol{x}) 的选择有关,我们要找一个 y(x)y(\boldsymbol{x}) 的解,使得这一项最小。
由于它是非负的,因此我们希望能够让这一项的最小值等于零。
考虑第一项被积函数,对于一个特定数据集 D\mathcal{D},其形式为{y(x;D)−h(x)}2\{{y\left(\boldsymbol{x};\mathcal{D}\right)-h(\boldsymbol{x})}\}^2,因这个量与特定的数据集 D\mathcal{D} 相关,因此我们对所有的数据集取平均。
又有
{y(x;D)−h(x)}2={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{aligned} ~&\{ y (\boldsymbol{x};\mathcal{D} ) -h (\boldsymbol{x}) \}^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})\}^{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}
我们现在关于 D\mathcal{D} 求期望,然后注意到最后一项等于零,可得
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} &\mathbb{E}_{\mathcal{D}}[\{y(\boldsymbol{x};\mathcal{D})-h(\boldsymbol{x})\}^2] \\ &= \underbrace{\{\mathbb{E}_D[y(\boldsymbol{x};\mathcal{D})]-h(\boldsymbol{x})\}^2}_{(偏置)^2} + \underbrace{\mathbb{E}_D[\{y(\boldsymbol{x};\mathcal{D})-\mathbb{E}_D[y(\boldsymbol{x};\mathcal{D})]\}^2]}_{方差} \end{aligned}
第一项,平方偏置:所有数据集的平均预测与预期的回归函数之间的差异;
第二项,方差:模型所给出的解在平均值附近波动的情况,因此也就度量了函数 y(x;D)y\left(\boldsymbol{x};D\right) 对于特定的数据集的选择的敏感程度。
因此,对于期望平方损失的分解,有:
期望损失=偏置2+方差+噪声期望损失=偏置^2+方差+噪声
- 噪声可看作是个常数项,是优化损失的下界;
- 偏置表示模型不匹配带来的期望损失;
- 方差表示由训练样本的随机性带来的波动。
例子
偏置-方差间的权衡
偏置-方差折中:
偏置-方差间的权衡:
低的偏置
- 线性回归在线性数据中的应用
- 二次多项式在二次数据中的应用
- ANN with many hidden units trained to completion(一直训练到满足结束条件)
高的偏置
- 常数函数
- 应用于非线性数据的线性回归
- ANN with few hidden units applied to non-linear data
低的方差
-
常数函数
-
独立于训练数据的模型
-
模型依赖于数据的稳定度量
- mean
- median
高的方差
-
高次多项式
-
ANN with many hidden units trained to completion(一直训练到满足结束条件)
监督学习中方差的来源
- 目标或输入属性中的噪声
- 训练样本
- 学习算法中的随机性:neural net weight initialization
- 训练集的随机子集:cross validation, train and early stopping set
偏置-方差分解的局限性
最大化似然函数,总会产生过于复杂的模型和过拟合现象。
线性回归的贝叶斯方法用训练数据本身确定模型复杂度的自动化方法。
虽然偏置-⽅差分解能够从频率学家的⾓度对模型的复杂度提供⼀些有趣的认识,但是它的实⽤价值很有限。这是因为偏置-⽅差分解依赖于对所有的数据集求平均,⽽在实际应⽤中我们只有⼀个观测数据集。如果我们有⼤量的已知规模的独⽴的训练数据集,那么我们最好的⽅法是把它们组合成⼀个⼤的训练集,这显然会降低给定复杂度的模型的过拟合程度。
由于有这么多局限性,因此我们在下⼀节⾥将讨论线性基函数模型的贝叶斯观点。它不仅提供了对于过拟合现象的深刻认识,还提出了解决模型复杂度问题的实⽤的技术。
4.5 贝叶斯线性回归
略