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

一、机器学习是什么

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

二、机器学习的主要算法

①线性回归算法

    衍生的:正则化

  ②逻辑回归算法

  ③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中默认)等。
 线性回归拓展
机器学习算法概述第一章——线性回归

 线性回归总结:

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

相关推荐