首页 > 人工智能 > 机器学习 > 「机器学习速成」正则化:降低模型的复杂度以减少过拟合
https://www.toutiao.com/a6704509481306292749/
大家好,今天我们学习【机器学习速成】之 正则化:降低模型的复杂度以减少过拟合。
我们 马上学三点 ,
大家可以点击下面的“ 了解更多 ”,或搜索“ 马上学123 ”,在线观看PPT讲义。
我们之前已经讨论过 如何让训练损失降至最低, 也就是 获取正确的样本 。
今天,我们要讨论的是正则化, 也就是 不要过于信赖样本 , 这是确保机器学习效果的一个关键因素。
如图泛化曲线, 该曲线显示的是训练集和验证集 相对于训练迭代次数的损失。
泛化曲线
从图中可以看出, 随着迭代次数的增加, 蓝色 的训练集损失逐渐减少, 最终会在某种程度上 收敛于低端 。 但红线的测试集损失开始上升。
事实上, 红线 才是我们真正要关注的, 尽管我们在对训练样本进行训练, 但我们想要 泛化到新的样本 , 也就是我们希望在 测试集上的损失控制在较低 的范围。
那么如何抑制红线的测试集损失上升呢?
该图说明模型与训练集中的数据 过拟合 了。 我们可以通过 正则化来避免过拟合 ,
正则化有很多不同的策略:
其他正则化策略 包括尝试 添加模型复杂度惩罚项 , 这就是我们接下来要讲的。
目前,我们训练仅专注于一个重要方面, 也就是输入正确的训练样本, 最大程度地最小化损失, 也就是 经验风险最小化 为目标
经验风险最小化
现在我们要引入第二项以对模型复杂度进行惩罚。
我们以最小化损失和复杂度为目标,这称为 结构风险最小化 。
结构风险最小化
现在,我们的训练优化算法是一个由两项内容组成的函数:
那么我们如何衡量模型复杂度呢?
我们可以采用多种方法, 一种常见的策略是 尽量选择较小的权重 , 也就是使参数小到几乎可以让我们忽略, 同时我们 仍能获取正确的训练样本 。
这里将重点探讨 L2正则化 , 模型复杂度= 权重的平方和, 在这种正则化策略中, 我们会对 权重的平方和 进行惩罚。
我们用 L2 正则化公式 来量化复杂度, 该公式将正则化项定义为 所有特征权重的平方和 。
L2 正则化公式
在使用L2正则化时, 模型的确会关注训练数据, 但会尽量确保最后的权重 不会超过所需的大小 。
我们再以数学方式总结一下:
L2 正则化的损失函数
目前,我们在 训练优化 方面添加了两项:
您会发现这两项通过lambda实现了平衡。 这是一个系数, 代表我们对 获取正确样本 与对 简化模型 的关注程度之比。
lambda的选择其实取决于具体情况:
选择 lambda 值时, 目标是在 简单化 和 训练数据拟合 之间达到 适当的平衡 :
这里讲了三点,关键词有哪几个?
提问!除了L2可以衡量模型复杂度,还有其它方法吗?
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/29829936/viewspace-2648294/ ,如需转载,请注明出处,否则将追究法律责任。