一、机器学习是什么
机器学习是人类用数学的语言通过大量的数据训练"教会"计算机做出一系列的行为。
二、机器学习的主要算法
①线性回归算法
衍生的:正则化
②逻辑回归算法
③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中默认)等。
线性回归拓展:
线性回归总结:
原文地址:https://www.cnblogs.com/qianchaomoon/p/12101507.html