【机器学习】线性回归 多元线性回归
【机器学习系列】
- KNN算法
KNN算法原理简介及要点
特征归一化的重要性及方式 - 线性回归算法
线性回归与一元线性回归
线性回归模型的损失函数
多元线性回归
多项式线性回归
多元线性回归
- V1.0
- 多元线性回归
- 一元线性回归与多元线性回归
- 多元线性回归模型的误差衡量
- 多元线性回归的最优解
- 多元线性回归的解析解(标准数学解法)
- 多元线性回归的解析解公式分析
- 多元线性回归的搜索解法
V1.0
多元线性回归
多元线性回归使用多维特征向量来推算回归值,推算方法使用以下公式
y = w 0 + w 1 ∗ x 1 + w 2 ∗ x 2 + . . . + w n ∗ x n y=w_0+w_1*x_1+w_2*x_2+...+w_n*x_n y=w0+w1∗x1+w2∗x2+...+wn∗xn
其中 x i x_i xi是N维特征向量第 i i i 维的数据, w i w_i wi是特征向量第 i i i 维特征的权值, y y y是该特征向量的预测值。
求解多元线性回归模型,即通过N维特征向量及其对应的标签真实值,求解多元线性公式参数, w 0 . . w n w_0..w_n w0..wn的过程。
一元线性回归与多元线性回归
一元线性回归的2个参数 k k k和 b b b,其中 k k k对应一元特征的权值。
多元线性回归有 w 1 w_1 w1- w n w_n wn这N个权重,分别对应特征向量的N个维度的特征值。
多元线性回归模型的误差衡量
对于单个特征向量,其误差为 y r e a l − y p r e d i c t y_{real}-y_{predict} yreal−ypredict。
总体误差,使用各个特征向量投票决定,这里可以使用MSE(Mean Squared Error)方法(其他总体误差计算方法比如RMES,MAE)。
可以认为最优的模型即是将总体误差最小化时的模型,在使用MSE的情况下,即是要求解使得模型总体损失最小时的参数 w 0 . . . w n w_0...w_n w0...wn。可用如下公式表示
arg min w 0 . . . w n ∑ i = 1 m ( y r e a l − y p r e d i c t ) 2 \argmin_{w_0...w_n}\sum_{i=1}^{m}(y_{real}-y_{predict})^2 w0...wnargmini=1∑m(yreal−ypredict)2
将 y p r e d i c t y_{predict} ypredict公式代入,公式中就直接包含了模型的参数 w 0 . . . w n w_0...w_n w0...wn。
arg min w 0 . . . w n ∑ i = 1 m ( y r e a l − ( w 0 + w 1 ∗ x 1 + w 2 ∗ x 2 + . . . + w n ∗ x n ) ) 2 \argmin_{w_0...w_n}\sum_{i=1}^{m}(y_{real}-(w_0+w_1*x_1+w_2*x_2+...+w_n*x_n))^2 w0...wnargmini=1∑m(yreal−(w0+w1∗x1+w2∗x2+...+wn∗xn))2
多元线性回归的最优解
多元线性回归的解析解(标准数学解法)
对于给定的N维训练数据及数据标签,线性回归模型的最优解及参数 w 0 . . . w n w_0...w_n w0...wn ,可以通过以下公式得到多元线性回归的最优参数
W = ( X T X ) − 1 X T Y W=(X^TX)^{-1}X^TY W=(XTX)−1XTY
多元线性回归的解析解公式分析
在多元线性回归的解析解公式中, X X X为特征矩阵( M ∗ N M*N M∗N维), Y Y Y为特征向量的标签值( M ∗ 1 M*1 M∗1维)。
X T X^T XT的维度 N ∗ M N*M N∗M维
( X T X X^TX XTX)的维度为 N ∗ N N*N N∗N维
( X T X ) − 1 (X^TX)^{-1} (XTX)−1)的维度为 N ∗ N N*N N∗N维
( X T X ) − 1 X T (X^TX)^{-1}X^T (XTX)−1XT的维度为 N ∗ M N*M N∗M维
( X T X ) − 1 X T Y (X^TX)^{-1}X^TY (XTX)−1XTY的维度为 N ∗ 1 N*1 N∗1维
多元线性回归的搜索解法
解析解在特征维度较大时计算较为复杂,计算量大,因此工程上并不经常采用这种方法。
scikit-learn
库中对于线性回归问题,使用的是梯度下降的解法。