《Python数据挖掘与机器学习实战》—3.6.3 梯度下降法求解最小值
【摘要】 本节书摘来自华章计算机《Python数据挖掘与机器学习实战》一书中的第3章,第3.6.3节,作者是方巍 。
3.6.3 梯度下降法求解最小值
1.θ更新过程
(3-22)
θ更新过程可以写成:
(3-23)
2.向量化
约定训练数据的矩阵形式如下,x的每一行为一条训练样本,而每一列为不同的特征取值:
(3-24)
(3-25)
(3-26)
g(A)的参数A为一列向量,所以实现g函数时要支持列向量作为参数,并返回列向量。θ更新过程可以改为:
(3-27)
3.正则化
过拟合即是过分拟合了训练数据,使得模型的复杂度提高,泛化能力较差(对未知数据的预测能力)。
如图3-9左图即为欠拟合,中图为合适的拟合,右图为过拟合。
可以使用正则化解决过拟合问题,正则化是结构风险最小化策略的实现,是在经验风险上加一个正则化项或惩罚项。正则化项一般是模型复杂度的单调递增函数,模型越复杂,正则化项就越大。
正则项可以取不同的形式,在回归问题中取平方损失,就是参数的L2范数,也可以取L1范数。取平方损失时,模型的损失函数变为:
(3-28)
λ是正则项系数:
如果它的值很大,说明对模型的复杂度惩罚大,对拟合数据的损失惩罚小,这样它就不会过分拟合数据,在训练数据上的偏差较大,在未知数据上的方差较小,但是可能出现欠拟合的现象。
图3-9 数据拟合模型
如果它的值很小,说明比较注重对训练数据的拟合,在训练数据上的偏差会小,但是可能会导致过拟合。
正则化后的梯度下降算法θ的更新变为:
(3-29)
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
作者其他文章
评论(0)