机器学习算法概述第一章——线性回归

Posted qianchaomoon

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了机器学习算法概述第一章——线性回归相关的知识,希望对你有一定的参考价值。

一、机器学习是什么

  机器学习是人类用数学的语言通过大量的数据训练"教会"计算机做出一系列的行为。

二、机器学习的主要算法

  ①线性回归算法

    衍生的:正则化

 

  ②逻辑回归算法

  ③KNN算法

    衍生的KD-tree

三、算法介绍

  ①线性回归算法

  运用线性模型y=ax+b,去拟合数据集,进行数据集的预测。在算法中,X为特征向量,即y的影响因素,w与b为可调整的模型参数。为了方便记忆,W=(w1,w2,w3,…wn,b),X=(x(1),.....x(n)

  技术图片

  解析解:最小二乘法(又称最小平方法)是一种数学优化技术.它由两部分组成:
  一、计算所有样本误差的平均(代价函数)
  二、使用最优化方法寻找数据的最佳函数匹配(抽象的)
  数值解:梯度下降法、牛顿法、拟牛顿法等等
技术图片

 技术图片

 技术图片

 

 待估参数的值可以用两种方法:极大似然估计,最小二乘法

技术图片

 

 技术图片

 

 关于最小二乘法的注意事项:

技术图片

 技术图片

 

原理

技术图片

 

 还有批量梯度下降法(BGD):使用所有样本的梯度值作为当前模型参数θ的更新

  随机梯度下降算法(SGD):使用单个样本的梯度值作为当前模型参数θ的更新

  优先选择SGD,因为速度快,但是很少情况下效果比BGD差一些,其他在此不作叙述

  小批量梯度下降法(MBGD)
MBGD中丌是每拿一个样本就更新一次梯度,而且拿b个样本(b一般为10)的平均梯度作为更新方向

梯度下降法调优策略

技术图片

 

 目标函数:

技术图片

 

 

  线性回归一般用于预测连续值变量,如房价预测问题。参数w是特征所占的权重,w的更新,一般可选用梯度下降等相关优化方法。因为预测值为连续变量且MSE对特征值范围变化比较敏感,所以一般情况下对会对特征进行归一化处理。

正则化/惩罚项

正则化的作用:

技术图片
技术图片

 技术图片

所谓稀疏模型就是模型中很多的参数是0,这就相当于进行了一次特征选择,只留下了一些比较重要的特征,提高模型的泛化能力,降低过拟合的可能。

 使用L2的回归叫做岭回归,Ridge回归

使用L1的回归叫做Lasso回归

L1与L2同时使用的叫弹性网络(没什么卵用)

Ridge与LASSO的选择

Ridge模型具有较高的准确性、鲁棒性以及稳定性(冗余特征已经被删除了);

LASSO模型具有较高的求解速度。

模型效果判断:

技术图片

 

 

MSE:误差平方和,越趋近于0表示模型越拟合训练数据。
RMSE:MSE的平方根,作用同MSE
R2:取值范围(负无穷,1],值越大表示模型越拟合训练数据;最优解是1;当模型预测为随机值的时候,有可能为负;若预测值恒为样本期望,R2为0
TSS:总平方和TSS(Total Sum of Squares),表示样本乊间的差异情况,是伪方差的m倍RSS:残差平方和RSS(Residual Sum of Squares),表示预测值和样本值乊间的差异情况,是MSE的m倍
 线性回归调参
  在实际工作中,对于各种算法模型(线性回归)来讲,我们需要获取θ、λ、p的值;θ的求解其实就是算法模型的求解,一般丌需要开发人员参不(算法已经实现),主要需要求解的是λ和p的值,这个过程就叫做调参(超参)。
  
  交叉验证:将训练数据分为多份,其中一份进行数据验证并获取最优的超参:λ和p;比如:十折交叉验证、五折交叉验证(scikit-learn中默认)等。
 线性回归拓展
技术图片

 

 线性回归总结:

技术图片

以上是关于机器学习算法概述第一章——线性回归的主要内容,如果未能解决你的问题,请参考以下文章

掌握Spark机器学习库-07-线性回归算法概述

机器学习一般线性回归

[机器学习与scikit-learn-31]:算法-回归-线性模拟拟合拟合非线性数据-概述

[机器学习与scikit-learn-27]:算法-回归-多元线性回归的几何原理线性代数原理本质(去掉激活函数的神经元)

机器学习系列:从线性回归到逻辑回归

python机器学习回归算法-线性回归