【机器学习】6. 线性回归、损失计算、最小二乘法、岭回归
- [线性回归 Liner regression](#线性回归 Liner regression)
-
- 1维线性函数
- 损失评估方式
- [最小二乘法(Least Squares Regression)](#最小二乘法(Least Squares Regression))
- 岭回归 (Ridge Regression)
线性回归 Liner regression
特征向量:
X T = [ 1 , x 1 , x 2 , x 3 ] X^T = [1 , x1, x2,x3] XT=[1,x1,x2,x3]
这里的1用来指代偏移量。 1的必要性:假设用喝牛奶预测身高,如果没有偏移量,那么180不喝牛奶,预测结果是0,为了避免这种情况,加入了偏移,
预测值:
其中w代表权重, y代表真实值, ŷ 代表预测值
y ≈ y ^ = ∑ i = 0 3 w i x i = w T x y ≈ ŷ = \sum_{i=0}^{3}{w_ix_i} = w^Tx y≈y^=i=0∑3wixi=wTx
1维线性函数
y ≈ y ^ = w 0 + w 1 x y ≈ ŷ = w_0 + w_1x y≈y^=w0+w1x
- y : 标签
- x: 特征
- w0: 截距 / 偏移
- w1: 斜率
损失评估方式
平方损失函数:
( y − y ^ ) 2 (y - ŷ)^2 (y−y^)2
绝对损失函数
∣ y − y ^ ∣ | y - ŷ | ∣y−y^∣
平方损失函数(Square Loss)在实践中更加常用,更有数学意义。
最小二乘法(Least Squares Regression)
权重w属于超参数,如果我们想要优化模型,就需要从w入手,将loss降低,也就是找到最小loss
m i n w ∑ i = 1 n ( w T x ( i ) − y ( i ) ) 2 min_{w}\sum^n_{i=1}(w^Tx^{(i)} - y^{(i)})^2 minwi=1∑n(wTx(i)−y(i))2
也可以用L2范式简写一下
m i n w ∣ ∣ w x --- y ∣ ∣ 2 2 min_w ||wx ---y||_2^2 minw∣∣wx---y∣∣22
最小值怎么求?导数=0求极值
f ( w ) = ∣ ∣ w x --- y ∣ ∣ 2 2 = ∑ i = 1 n ( w x ( i ) − y ( i ) ) 2 f(w) = ||wx ---y||2^2 = \sum^n{i=1}(wx^{(i)} - y^{(i)})^2 f(w)=∣∣wx---y∣∣22=i=1∑n(wx(i)−y(i))2
d f d w ( w ) = 2 ∗ ∑ i = 1 n ( w x ( i ) − y ( i ) ) = 0 \frac{df}{dw}(w) = 2* \sum^n_{i=1}(wx^{(i)} - y^{(i)}) = 0 dwdf(w)=2∗i=1∑n(wx(i)−y(i))=0
同样的,可以用矩阵计算
w = ( X T X ) − 1 X T y w = (X^TX)^{-1}X^Ty w=(XTX)−1XTy
矩阵计算,举个简单的例子。
不要忘记矩阵怎么算(第一行 * 第一列,第一行 * 第二列...)
X T X^T XT
这个是矩阵的转置。
从公式中,我们可以得知,最小二乘法要求矩阵可逆。
什么样的矩阵不可逆呢?
参考MIT教授的解释:可以找到一个矩阵相乘=0
岭回归 (Ridge Regression)
由于最小二乘法需要可逆矩阵,那么可不可以做优化呢?这里的优化就用到了岭回归。
岭回归加入了一个超参数λ
公式变成:
m i n w ∣ ∣ w x --- y ∣ ∣ 2 2 + λ ∣ ∣ w ∣ ∣ 2 2 min_w ||wx ---y||_2^2 + λ||w||_2^2 minw∣∣wx---y∣∣22+λ∣∣w∣∣22
w = ( X T X + λ I k ) − 1 X T y w = (X^TX + λI_k )^{-1}X^Ty w=(XTX+λIk)−1XTy
其中I 是单位矩阵(单位矩阵:对角线都为1)
∣ ∣ w x --- y ∣ ∣ 2 2 ||wx ---y||_2^2 ∣∣wx---y∣∣22
前面这一部分,是模型损失
λ ∣ ∣ w ∣ ∣ 2 2 λ||w||_2^2 λ∣∣w∣∣22
后面这一部分,定义为模型复杂度(model complexity),其中λ是一个自由的超参数,在模型复杂度和训练误差之中权衡赋值。
最终矩阵变成非奇异,进而能够求逆,λ为正则化系数,或者叫做惩罚系数。
惩罚项能够过滤不太重要的特征,相比普通线性回归(最小二乘法)能够得到更好的预测效果,能够解决特征数多于样本量的情况(矩阵不可逆)以及解决过拟合和特征共线性的问题。
当然,更常用还是梯度下降法啦!后文会继续介绍