线性回归(Linear Regression)
是机器学习和统计学中最基础广泛饮用的模型,是一种对自变量和因变量之间关系进行建模的回归分析
- 自变量数量为 1 时称为
简单回归
,自变量数量大于 1 时称为 多元回归
从机器学习的角度来看,自变量就是样本的特征向量 x∈RD (每一维对应一个自变量),因变量是标签 y ,这里 y∈R 是连续值(实数或连续整数)
假设空间是一组参数化的线性函数
f(x;w,b)=wTx+b(30) 其中权重向量 w∈RD 和偏置 b∈R 都是可学习的参数,函数 f(x;w,b)∈R 也称为线性模型
简单起见,将公式 (30) 写为
f(x;w^)=w^Tx^(31) - w^ 为增广权重向量 , x^ 为增广特征向量
x^=x⊕1≜⎣⎡x1⎦⎤=⎣⎡x1⋮xD1⎦⎤(32) w^=w⊕b≜⎣⎡wb⎦⎤=⎣⎡w1⋮wDb⎦⎤(33) 参数学习
给定一组包含 N 个训练样本的训练集 D={(x(n),y(n))}n=1N ,我们希望能够学习一个最优的线性回归模型参数 w
这里介绍四种不同的参数估计方法
- 经验风险最小化
- 结构风险最小化
- 最大似然估计
- 最大后验估计
经验风险最小化
线性回归的标签 y 和模型输出都为连续的实数值,因此 平方损失函数
很适合衡量真实标签之间的差异
根据经验风险最小化准则,训练集 D 上的经验风险定义为
R(w)=n=1∑NL(y(n),f(x(n);w))=21n=1∑N(y(n)−wTx(n))2=21∣∣y−XTw∣∣2(34–36) 这里的风险函数省略了 N1 来简化
- 其中 y=[y(1),…,y(N)]T∈RN 是由所有样本的真实标签组成的列向量,而 X∈R(D+1)×N 是由所有样本的输入特征 x(1),…,x(N) 组成的矩阵
X=⎣⎡x1(1)⋮xD(1)1x1(2)⋮xD(1)1…⋱……x1(N)⋮xD(N)1⎦⎤(37) 风险函数 R(w) 是关于 w 的凸函数,其对 w 的偏导数为
∂w∂R(w)=21∂w∂∣∣y−XTw∣∣2=−X(y−XTw)(38, 39) 令 ∂w∂R(w)=0 ,得到的最优参数 w∗ 为
w∗=(XXT)−1Xy=(n=1∑Nx(n)(x(n))T)−1(n=1∑Nx(n)y(n))(40, 41) - 这种求解线性回归参数的方法叫做
最小二乘法(Least Square Method,LSM)
书中给出的线性回归参数学习的示例
在最小二乘法中, XXT∈R(D+1)×(D+1) 必须存在逆矩阵,即 XXT 是满秩的 (rank(XXT)=D+1)
- X 中的行向量之间线性不相关,即每一个特征都和其他特征不相关
一种常见的 XXT 不可逆情况是样本数量 N 小于特征数量 (D+1) ,XXT 的秩为 N ,这时会存在很多解 w∗ 使得 R(w∗)=0
当 XXT 不可逆时,可以通过这两种方法来估计参数
先使用主成分分析等方法来预处理数据,消除不同特征之间的相关性,再使用最小二乘法
使用梯度下降来估计参数,先初始化 w=0 ,然后这个公式进行迭代
w←w+αX(y−XTw)(42) - 其中 α 为学习率,这种利用梯度下降法来求解的方法也称为
最小均方算法(Least Mean Squares,LMS)
结构风险最小化
最小二乘法中要保证 XXT 可逆,但是即使 XXT 可逆,如果特征之间有较大的 多重共线性(Multicollinearity)
,也会使 XXT 的逆在数值上无法准确计算
共线性(Collinearity)
是指一个特征可以通过其他特征的线性组合来较准确的预测
数据集 X 上的一些小的扰动就会导致 (XXT)−1 发生很大的改变,使得最小二乘法的计算变得很不稳定
为了解决这个问题,优秀的大佬们提出了 岭回归(Ridge Regression)
,即给 XXT 的对角线元素都加上一个常数 λ 使得 (XXT+λI) 满秩,最优的参数 w∗ 为
w∗=(XXT+λI)−1Xy(43) - 其中 λ>0 为预先设置的超参数,I 为单位矩阵
岭回归的解 w∗ 可以看作 结构风险最小化准则
下的最小二乘法估计,其目标函数可以改写为
R(w)=21∣∣y−XTw∣∣2+21λ∣∣w∣∣2(44) - 其中 λ>0 为正则化系数
最大似然估计
机器学习的任务可以分为两类
- 样本的特征向量 x 和标签 y 之间存在位置函数关系 y=h(x)
- 条件概率 p(y∣x) 服从某个未知分布
- 最小二乘法属于第一类,直接建模 x 和标签 y 之间的函数关系
- 线性回归可以从建模条件概率 p(y∣x) 的角度进行参数估计
假设标签 y 为一个随机变量,并由函数 f(x;w)=wTx 加上一个随机噪声 ϵ决定
y=f(x;w)+ϵ=wTx+ϵ(45, 46) - 其中 ϵ 服从均值为 0、方差为 σ2 的高斯分布
- y 服从均值为 wTx、方差为 σ2 的高斯分布
p(y∣x;w,σ)=N(y;wTx,σ2)=2πσ1exp(−2σ2(y−wTx)2)(47, 48) - 参数 w 在训练集 D 上的
似然函数(Likelihood)
为
p(y∣X;w,σ)=n=1∏np(y(n)∣x(n);w,σ)=n=1∏np(y(n)∣wTx(n),σ2))(49, 50) - 其中 y=[y(1),⋯,y(N)]T 为所有样本标签组成的向量, X=[x(1),⋯,x(N)] 为所有样本特征向量组成的矩阵
为了方便计算,对似然函数取对数得到 对数似然函数(Log Likelihood)
logp(y∣X;w,σ)=n=1∑nlogN(y(n)∣wTx(n),σ2))(51) 最大似然估计(Maximum Likelihood Estimation,MLE)
是指找到一组参数 w 使得似然函数 p(y∣X;w,σ) 最大,等价于对数似然函数 logp(y∣X;w,σ) 最大
- 令 ∂w∂logp(y∣X;w,σ)=0 得到
wML=(XXT)−1Xy(52) 最大似然估计的解和最小二乘法的解相同