大家好,又见面了,我是你们的朋友全栈君。
该文已经收录到专题机器学习进阶之路当中,欢迎大家关注。
1.过拟合
当样本特征很多,样本数相对较少时,模型容易陷入过拟合。为了缓解过拟合问题,有两种方法:
方法一:减少特征数量(人工选择重要特征来保留,会丢弃部分信息)。
方法二:正则化(减少特征参数的数量级)。
2.正则化(Regularization)
正则化是结构风险(损失函数+正则化项)最小化策略的体现,是在经验风险(平均损失函数)上加一个正则化项。正则化的作用就是选择经验风险和模型复杂度同时较小的模型。
防止过拟合的原理:正则化项一般是模型复杂度的单调递增函数,而经验风险负责最小化误差,使模型偏差尽可能小经验风险越小,模型越复杂,正则化项的值越大。要使正则化项也很小,那么模型复杂程度受到限制,因此就能有效地防止过拟合。
3.线性回归正则化
正则化一般具有如下形式的优化目标:
(1)
其中,是用来平衡正则化项和经验风险的系数。
正则化项可以是模型参数向量的范数,经常用的有范数,范数(范数:,范数:) 。
我们考虑最简单的线性回归模型。
给定数据集,其中,,。
代价函数为: (2)
(1)范数正则化(Ridge Regression,岭回归)
代价函数为:
代价函数为:
代价函数为:
其中,
为什么
假设
4.岭回归求解
岭回归不抛弃任何一个特征,缩小了回归系数。
岭回归求解与一般线性回归一致。
(1)如果采用梯度下降法:
迭代公式如下:
(2)如果采用正规方程:
最优解为:
最后,将学得的线性回归模型为:
5. LASSO回归求解
由于
(1)优化目标
优化目标为:
若
L-Lipschitz(利普希茨连续条件)定义:
对于函数
,若其任意定义域中的 , 都存在 ,即对于 上每对点,连接它们的线的斜率的绝对值总是不大于这个实数 。
(2)泰勒展开
在
由(11)式,泰勒将展开式的二阶导用
(3)简化泰勒展开式
将(13)式化简:
其中,
(4)简化优化问题
这里若通过梯度下降法对
令
则可以先求
(5)求解
令
为什么(16)式不存在
这样的项? 因为展开(16)式得到,
从而优化问题变为求解
个独立的函数: 。
对于上述优化问题需要用到soft thresholding软阈值函数(证明见参考文献2),即对于优化问题:
其解为:
而我们的优化问题为(16)式,则得到闭式解为:
其中,
参考文献:
1.《机器学习》第十一章嵌入式选择与L1正则化——周志华
4. 正则化及正则化项的理解
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/132576.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...