线性回归梳理
- 1.基础概念
- 1.1监督学习
- 1.2无监督学习
- 1.3泛化能力
- 1.4过拟合与欠拟合
- 1.5交叉验证
- 2.线性回归原理
- 3.线性回归函数
- 3.1损失函数
- 3.2代价函数
- 3.3目标函数
- 4.优化方法
- 4.1梯度下降
- 4.1牛顿法
- 4.1拟牛顿法
- 5.评估指标
- 6.sklean参数详解
1.基础概念
1.1监督学习
监督学习通过已有的训练样本(即已知数据以及其对应的输出)去训练得到一个最优模型,
使模型能够对任意给定的输入,对其相应的输出做出好的预测。
根据输入变量与输出变量的不同类型,将预测任务分为以下几类:
- 回归:输入、输出变量均为连续变量
- 分类:输出变量为有限个离散变量
- 标记:输入、输出变量均为变量序列
1.2无监督学习
根据类别未知(没有被标记)样本解决模式识别问题
常用场景:
- 聚类:根据数据相似性将数据分为不同的数据类别,使不同类别间相似度最小。
- 降维:在保证数据所具有的代表性和分布的情况下,将高维数据转化为低纬数据的过程。
1.3泛化能力
泛化能力是指由该方法学习到的模型对位置数据的预测能力
学习方法的泛化能力往往通过研究泛化误差上界进行。通过比较两种学习方法的泛化误差上界来比较其优劣。
泛化误差具有以下几个性质:
- 样本容量增加,泛化上界趋于0
- 假设空间容量也大,模型就越难学,泛化误差上界就越大
1.4过拟合与欠拟合
- 过拟合:学习时选择的模型所包含的参数过多,该模型对已知数据预测的很好,对未知的数据预测的很差 模型选择旨在避免过拟合并提高模型预测能力。
- 欠拟合:没有很好的抓住数据的特征,没有对数据进行很好的拟合,使得偏差较大。解决措施:增加特征项或者减少正则化项来改进模型。
在忽略噪声的情况下,泛化误差可分为偏差、方差两部分: - 方差:度量同样大小的训练集的变动所导致的学习性能的变化,即刻画了数据扰动带来的影响。
- 偏差:度量学习算法期望预测与真实结果的偏离程度,也叫拟合能力。
1.5交叉验证
重复的使用数据,把给定的数据进行切分,将切分好的数据集组合成为训练集与测试集,在此基础
上反复进行训练、测试以及模型选择。
主要有以下几种方式:
- 简单交叉验证
- S折叠交叉验证
- 留一交叉验证
2.线性回归原理
线性回归通过给定数据学得一个通过属性的线性组合的模型,并以此尽可能准确地预测实值输出标记。
- 一般形式:
- 向量形式:
3.线性回归函数
3.1损失函数
损失函数定义在单个数据集上,用于度量预测值与真实值地拟合程度
3.2代价函数
代价函数定义在整个数据集合上,用于评价线性回归 。计算方式是计算每一个点在当前假设函数情况下,偏差的平方和,再取平均数。m即表示一共取了几个点进行判断。
3.3目标函数
目标函数 描述了所有训练样本实际值与预测值之间的均方误差,而我们的目的就是求解能够使得该误差值最小的参数 θ0,θ1 。
可将其表示为:
4.优化方法
4.1梯度下降
梯度下降法是最早最简单,也是最为常用的最优化方法。梯度下降法实现简单,当目标函数是凸函数时,梯度下降法的解是全局解。一般情况下,其解不保证是全局最优解,梯度下降法的速度也未必是最快的。梯度下降法的优化思想是用当前位置负梯度方向作为搜索方向,因为该方向为当前位置的最快下降方向,所以也被称为是”最速下降法“。最速下降法越接近目标值,步长越小,前进越慢。
分类:
- 批量梯度下降法BGD
- 随机梯度下降法SGD
- 小批量梯度下降法MBGD
4.1牛顿法
牛顿法是一种在实数域和复数域上近似求解方程的方法。方法使用函数f (x)的泰勒级数的前面几项来寻找方程f (x) = 0的根。牛顿法最大的特点就在于它的收敛速度很快。
从本质上去看,牛顿法是二阶收敛,梯度下降是一阶收敛,所以牛顿法就更快。如果更通俗地说的话,比如你想找一条最短的路径走到一个盆地的最底部,梯度下降法每次只从你当前所处位置选一个坡度最大的方向走一步,牛顿法在选择方向时,不仅会考虑坡度是否够大,还会考虑你走了一步之后,坡度是否会变得更大。所以,可以说牛顿法比梯度下降法看得更远一点,能更快地走到最底部。
4.1拟牛顿法
拟牛顿法的本质思想是改善牛顿法每次需要求解复杂的Hessian矩阵的逆矩阵的缺陷,它使用正定矩阵来近似Hessian矩阵的逆,从而简化了运算的复杂度。拟牛顿法和最速下降法一样只要求每一步迭代时知道目标函数的梯度。通过测量梯度的变化,构造一个目标函数的模型使之足以产生超线性收敛性。这类方法大大优于最速下降法,尤其对于困难的问题。另外,因为拟牛顿法不需要二阶导数的信息,所以有时比牛顿法更为有效。如今,优化软件中包含了大量的拟牛顿算法用来解决无约束,约束,和大规模的优化问题。
5.评估指标
- SSE(和方差) 该统计参数计算的是拟合数据和原始数据对应点的误差的平方和。SSE越接近于0,说明模型选择和拟合更好,数据预测也越成功。
- MSE(均方差) 该统计参数是预测数据和原始数据对应点误差的平方和的均值,也就是SSE/n,和SSE没有太大的区别
- RMSE(均方根) 该统计参数,也叫回归系统的拟合标准差,是MSE的平方根
- R-square(确定系数)
6.sklean参数详解
LinearRegression(fit_intercept=True,normalize=False,copy_X=True,n_jobs=1)
- fit_intercept:是否有截据,如果没有则直线过原点。
- normalize:是否将数据归一化。
- copy_X:默认为True,当为True时,X会被copied,否则X将会被覆写。
- n_jobs:默认值为1。计算时使用的核数。