一看就懂】机器学习之L1和L2正则化
摘要:本文主要分为三部分,先讲述什么是正则化,再讲L1和L2正则化数学原理,最后小结对比。
一、什么是正则化
上篇机器学习之线性方程与学习率中引入损失函数,以便寻找最优权重W。
然而正如大名鼎鼎的奥卡姆剃刀定律,
模型越复杂,越容易过拟合。
因此,原先以最小化损失(经验风险最小化)为目标:
现在以最小化损失和模型复杂度(结构风险最小化)为目标:
通过降低复杂模型的复杂度来防止过拟合的规则称为正则化。
二、L1 和 L2 正则化的数学原理
机器学习中最常见的即L1和L2正则化。
1. L1正则化,即原损失函数 + 所有权重的平均绝对值 * λ ,其中λ >0
根据损失更新ω,需要先对ω求导:
那么权重ω的更新规则为:
比原始的更新规则多出了η * λ * sgn(ω)/n。
可见每次更新,ω都是往0靠,即使网络中的权重尽可能为0。
2. L2正则化,即原损失函数 + 所有权重平方和的平均值 * λ / 2 , λ>0
同样,需要先对ω求导:
那么权重ω的更新规则为:
原始的更新规则ω系数为1,现在为 1ηλ/n 。
因为η、λ、n都>0,所以 1ηλ/n
三、L1和L2正则化小结
L1 正则化可以理解为每次从权重中减去一个常数。
L2 正则化可以理解为每次移除权重的 x%。
本质都是为了降低模型的复杂度,防止过拟合。
本文由百家号作者上传并发布,百家号仅提供信息发布平台。文章仅代表作者个人观点,不代表百度立场。未经作者许可,不得转载。