深度学习揭秘之防止过拟合(overfitting)

摘要: 本文总结深度学习过拟合产生的原因以及解决办法,涵盖正则化、dropout等操作,可以作为工程中的一份开发指南。

神经网络通过大量的参数模拟各种繁多的任务,并能拟合各种复杂的数据集。这种独特的能力使其能够在许多难以在传统机器学习时代取得进展的领域例如图像识别、物体检测或自然语言处理等领域表现优异。然而,有时候,最大的优点也是潜在的弱点。模型在学习过程时,如果缺乏控制可能会导致过拟合(overfitting)现象的发生神经网络模型在训练集上表现很好,但对新数据预测时效果不好。了解过拟合产生的原因以及防止这种现象发生的方法对于成功设计神经网络而言显得至关重要。

如何知道模型产生过拟合?

训练(train sets)、开发(dev sets)和测试集(test sets)

在实践中,检测模型过拟合是困难的。很多时候,将训练好的模型上线后才意识到模型出现问题。事实上,只有通过新数据的建议,才能确保一切正常。但在训练期间,应尽量表示真实情况。因此,比较好的作法是将数据集划分为三个部分训练集、开发集(也称为交叉验证集)和测试集。构建的模型仅通过训练集来学习,验证集用于跟踪训练进度并根据验证集上的结果优化模型。同时,在训练过程结束后使用测试集来评估模型的性能。使用全新的数据可以让我们对算法的仿真情况有一个客观的看法。


深度学习揭秘之防止过拟合(overfitting)


图1.划分数据集的推荐方法

确保验证集和测试集来自同一分布以及它们能够准确地反映希望将来收到的数据非常重要。只有这样,才能确保在学习过程中做出的决策更接近好的解决方案。那么如何分割手上的数据集呢?最常推荐的拆分方法之一是按照60/20/20的比例拆分,但在大数据时代,当数据集是数百万条目时,这种固定比例的划分已经不再合适。简而言之,一切都取决于使用的数据集的大小,如果有数以百万计的条目可供使用,或许最好的划分方法是按照98/1/1的比例划分。注意:开发集和测试集应该足够大,以使得对构建的模型的性能有很高的信心。根据数据大小划分数据集的推荐方法如图1所示。

偏差和方差

当准备好数据集后,需要使用工具来评估模型的性能。然而,在得出任何结论之前,我们应该熟悉两个新的概念偏差(bias)和方差(variance)。为了让我们更好地理解这个复杂的问题,这里举一个简单的例子。假设数据集由位于二维空间中的两类点组成,如图2所示。


深度学习揭秘之防止过拟合(overfitting)


图2.数据集的可视化

由于这是一个简单的演示用例,这次就没有测试集,仅使用训练集和验证集。接下来,我们准备三个模型:第一个是简单的线性回归,另外两个是由几个密集连接层构建的神经网络。在图3中,我们可以看到使用这些模型定义的分类边界。右上角的第一个模型非常简单,因此具有较高的偏差,即它无法找到要素和结果之间的所有重要链接,这是由于数据集中有很多噪音,因此简单的线性回归无法有效地处理它。从图中可以看到,在神经网络模型上表现得更好,但左下角的模型太紧密地拟合数据,这使得它在验证集上表现得更糟,这意味着它具有很大的方差它适合噪声而不是预期的输出。在最后的模型中,通过使用正则化来减轻这种不期望的影响。



图3.创建的分类边界:右上角线性回归; 左下角神经网络; 右下角正则化的神经网络

上述举的例子很简单,只有两个特征。当我们在多维空间中操作时,需要使用包含数十个特征的数据集,这种情况该怎么办?这个时候需要比较使用训练集和交叉验证集计算得到的误差值。当然,最佳情况是这两组的错误率都很低。主要问题是如何定义低错误率在某些情况下它可以是1%,而在其他情况下它可以高达10%或更大。在训练神经网络时,设立一个比较模型性能的基准是有所帮助的。通常,这取决于执行此任务的人员能力水平。然后尝试确保设计的算法在训练期间有一个接近参考水平的误差。如果已经实现了这个目标,但是在验证集上验证错误率时,错误率会显著增加,这可能意味着模型存在过拟合(高方差)。另一方面,如果模型在训练集和交叉验证上表现都不佳,那么它可能太弱并且具有高偏差。当然,这个问题会更复杂,而且涉及的面也更广,在这里不做讨论,感兴趣的读者可以阅读NG的新书。

防止过拟合的方法

介绍

当我们的神经网络具有较高的方差时,这里有很多方法可以有所帮助。比如,非常普遍的方法获取更多数据,这种方法一般每次都运行良好。还有一些操作,例如正则化,但这种方法需要一些经验和技巧,因为对神经网络施加太多限制可能会损害其有效学习的能力。现在让我们试着看一下减少过拟合的一些最流行的方法,并讨论它们起作用的原因。

L1和L2正则化

当需要减少过拟合时,应该尝试的第一种方法是正则化。这种方法涉及到在损失函数中添加一个额外的式子,这会使得模型过于复杂。简单来说,就是在权重矩阵中使用过高的值,这样就会尝试限制其灵活性,同时也鼓励它根据多种特征构建解决方案。这种方法的两个流行版本是L1-最小绝对偏差(LAD)和L2-最小二乘误差(LS),相应的公式如下。在大多数情况下,L2正则化是首选,因为它将不太重要的特征的权重值减小到零。但是在处理具有大量异常值的数据集时不是首选。



现在看一下在偏差和方差的例子中使用的两个神经网络。正如之前提到的,使用正则化来消除过拟合。在三维空间中可视化权重矩阵并比较在有正则化和没有正则化的模型之间获得的结果如下图所示。此外,还使用正则化对许多模型进行了模拟,改变λ值以验证其对权重矩阵中包含的值的影响。矩阵行和列索引对应于水平轴值,权重为垂直坐标值。



图4.可视化没有和具有正则化的模型权重矩阵

Lambda因子及其影响

在前面提到的L1和L2两个版本中的正则化公式中,引入了超参数λ (也称为正则化率)。在选择其值时,试图在模型的简单性和拟合训练数据之间达到最佳点。增加λ值也会增加正则化效应。在图4中可以注意到,没有正则化的模型获得的平面,以及具有非常低λ的模型其系数值非常紊乱,有许多具有重要价值的峰值。在应用具有较高超参数值的L2正则化之后,该平面图是平坦的。最后,可以看到将lambda值设置为0.1或1会导致模型中权重值急剧下降。

dropout

另一种非常流行的神经网络正则化方法是dropout。这个想法实际上非常简单神经网络的每个单元(属于输出层的那些单元)都被赋予在计算中被暂时忽略的概率p。超参数p称为丢失率,通常将其默认值设置为0.5。然后,在每次迭代中,根据指定的概率随机选择丢弃的神经元。因此,每次训练会使用较小的神经网络。下图显示了使用dropout操作的神经网络的示例。从图中可以看到,在每次迭代过程中是随机停用来自第二和第四层神经元。


深度学习揭秘之防止过拟合(overfitting)


图5:dropout可视化

这种方法的有效性是非常令人惊讶。毕竟,在现实世界中,如果经理每天随机选择员工并将其送回家,工厂的生产率是不会提高的。让我们从单个神经元的角度来看这个问题,在每次迭代中,任何输入值都可能会被随机消除,神经元会尝试平衡风险而不会支持任何特征。结果,权重矩阵值的分布变得更均匀。

提前停止(early stopping)

下图显示了在后续的学习过程迭代期间在测试和交叉验证集上得到的准确度值的变化情况。从中可以看到,最终得到的模型并不是最好的模型。最终得到的结果比150个epoch后的情况要糟糕得多。为什么不在模型开始过拟合之前就中断学习过程?这一观察启发了一种流行的过拟合减少方法,即提前停止(early stopping)。


深度学习揭秘之防止过拟合(overfitting)


图6.神经网络学习过程中后续时期的准确度值的变化

在实践中,每迭代几次就对模型进行检查它在验证集上的工作情况,并保存每个比以前所有迭代时都要好的模型。此外,还设置最大迭代次数这个限制,超过此值时停止学习。尽管提前停止可以显著改善模型的性能,但在实践中,其应用极大地使得模型的优化过程变得复杂,很难与其他常规技术结合使用。

结论

掌握如何确认模型是否过拟合对于构建神经模型是很重要的,掌握防止过拟合发生的解决方法也是最基本的。受限于篇幅,本文中没有进行详细描述,但总结了相关内容,具体的操作技巧还需要各位在实践中进行尝试。

作者信息

Piotr Skalski,热爱机器学习和数据科学

本文由阿里云云栖社区组织翻译。

文章原标题《Preventing Deep Neural Network from Overfitting》,译者:海棠,审校:Uncle_LLD。

免责声明:本文作者:“阿里云云栖号”,版权归作者所有,观点仅代表作者本人。本站仅提供信息存储分享服务,不拥有所有权。信息贵在分享,如有侵权请联系ynstorm@foxmail.com,我们将在24小时内对侵权内容进行删除。
(197)
你们知道fitting试身吗?知道定制西
上一篇 2024年03月17日
尕撒拉歌曲(尕撒拉原唱现场版)
下一篇 2024年03月17日

相关推荐

  • level-e(level成绩E可以上大学吗)

    进入一般的大学达到E以上就可以申请,但要进入顶尖的院校至少要达到三个A以上。凭A-Level成绩,除了可报考英国大学,加拿大也十分认可。多伦多大学学生至少提供五门IGCSE,三门A-Level的成绩,每门科目至少B以上。...

    2024年01月01日
  • 电波拉皮价格(电波拉皮多长时间做一次)

    个人情况而定,通常建议一个月做一次。电波拉皮是一种非常有效的美容方法,它可以紧致皮肤,减少皱纹和松弛,让皮肤更加光滑和紧实。然而,电波拉皮的前提是刺激胶原蛋白的生长,而胶原蛋白的生长需要一定的时间。因此,我们建议每个人每个月做一次电波拉皮,以...

    2024年01月25日
  • 88位中国人民志愿军烈士遗骸回国,《英雄儿女》剧组观看直播回放

    9月16日,中韩双方在韩国仁川国际机场共同举行第九批在韩中国人民志愿军烈士遗骸交接仪式,88位中国人民志愿军烈士遗骸及相关遗物返回祖国。上海话剧艺术中心大型话剧《英雄儿女》剧组在排练结束后,一同观看第九批在韩志愿军烈士遗骸交接仪式直播回放。在...

    2024年02月17日
  • 老师回复家长的暖心话(还有什么更好的词语来回复吗)

    老师在家长群发通知,之所以请看到的家长要回复“收到”,其目的在于知道、了解有多少家长看到了这个通知。...

    2024年02月25日
  • 蜘蛛牌游戏(有哪些暗藏福利的游戏)

    当年街机游戏厅中的游戏,有福利游戏一般就是麻将机、扑克这类带有赌博性质的游戏。这些游戏为了吸引更多的玩家来赏玩,在福利方面也是下了不少功夫的。要知道,在年代比较久远的游戏中很多福利图片都是真人的。...

    2024年02月26日
  • 从昨天开始,杭州人寄快递有了新选择

    都市快报首席记者梁应杰从昨天开始,杭州人收到从京东购买的商品时,很可能被快递小哥问上一句:最近有没有包裹要寄?继在上海、苏州、南京等地开通个人快递服务后,京东快递正式进入杭州。今后,穿梭在杭州城的京东快递员既负责送件,也提供寄件服务。那么,京...

    2024年03月05日
  • 线上虚拟试衣间实用性差成鸡肋 疫情后命运能否反转?

    线上虚拟试衣间命运能否反转?随着3D和AR技术的日趋成熟,商家和电商平台推出的虚拟试衣服务却因为尺寸不准、上身效果差异较大广受吐槽,概念满分的功能沦为鸡肋。不过,在疫情背景之下,该服务在海外再度受到推崇,购物平台与科技公司正在做新的技术尝试。...

    2024年03月17日
  • 逆水寒,易水寒,谁在天华汴京叱咤呢喃——我的大宋江湖广陵散

    两人一马,纵横天下。书剑恩仇,荒野永华?温瑞安不是田连元逆水寒之四大名捕傲立荒野江湖。有别于瓦岗寨之三十六友的隋唐演义;广陵散不是参赛篇嵇康游玩洛西夜宿月华亭得绝曲。我之报国无门一如袁孝尼之求之不得人物神州杂五方,平明京兆坐黄堂。民投牒讼千狙...

    2024年03月17日
  • 上高速的时候收费下高速的时候免费怎么办(下高速赶上免费怎么还收费)

    高速路上究竟需不需要缴纳过路费,主要是看你在下高速的时间点,是不是处在国家规定的免费时期。如果你在下高速的时候,时间是在免费时期,那么无论你上高速十是不是领了卡,那么你都是不需要交纳过路费的。...

    2024年03月27日
  • 几点打春2021(2021年立春是几月几号双春吗)

    2021年没有二个立春,这是因为农历2021年的时候没有立春这个节气,所以是一个春都没有。我国的历法是一种阴阳合历,是结合太阳和月亮运行的周期制定的。一年按太阳的运行分为二十四节气,按月亮的运行分月,并用增设闰月的办法,来解决阴历与阳历之间的...

    2024年04月28日
返回顶部