学习目标:
1、理解线性回归是什么,知道模型函数和损失函数的基本形式;2、掌握最小二乘法的实现原理、条件以及sklearn中API;
3、知道梯度是什么,理解梯度下降法的原理和操作步骤;
4、知道线性回归里面的梯度下降法怎么用(三种方式);
5、知道数据归一化、标准化为什么必要、懂操作方法;
6、知道为什么要用正则化、他的主要形式是什么;
7、知道岭回归和套索回归以及API;
8、理解回归的评价指标;
线性回归是什么?
线性回归与机器学习的关系:
机器学习-有监督学习-回归-线性回归
回归,就是找符合样本数据的线,越贴合所有点越好,通过“回归”来预判后面没有样本时候的数据会大概是怎么样。
线性,就是你找的这条线是直的。
所以线性回归就是,你来找一条直线,尽可能去贴合样本,像这样:
这个是一元线性回归,实际问题会复杂很多,所以需要引入很多自变量,也就变成了多元,找一个面去贴合样本,像这样:
模型函数的基本形式:
一元 y = β0 + β1x + ε
多元 y = β0 + β1x1 + β2x2 + β3x3 + ... + βpxp + ε
(ε是误差值、β是系数)损失函数:非负值,越小贴合性越好(n常用的有:0-1损失函数、平方损失函数、绝对损失函数、对数损失函数等。)
例如:
最小二乘法
最小二乘法(又称最小平方法)是一种数学优化技术。利用最小二乘法可以简便地求得未知的数据,并使得这些求得的数据与实际数据之间误差的平方和为最小。
sklearn中API :
LinearRegression(fit_intercept=True, normalize=False, copy_X=True, n_jobs=1)
梯度下降法
梯度:多元函数的参数求∂偏导数,将偏导数以向量的形式写出来
如:f(x,y)分别对x,y求偏导数,梯度向量就是(∂f/∂x, ∂f/∂y)T,简称grad f(x,y)或者▽f(x,y)
在机器学习中常常用来优化损失函数,是一个非常重要的工具。
梯度下降的三种形式:
随机梯度下降(Stochastic Gradient Descent):梯度下降的每一步中,用到一个样本
批量梯度下降(Batch Gradient Descent):梯度下降的每一步中,都用到了所有的训练样本
小批量梯度下降(Mini-Batch Gradient Descent):梯度下降的每一步中,用到了一定批量的训练样本
数据归一化与标准化
为什么要需要归一化、标准化?提升模型精度:不同维度之间的特征在数值上有一定比较性,可以大大提高分类器的准确性。
加速模型收敛:最优解的寻优过程明显会变得平缓,更容易正确的收敛到最优解。