概念理解:通俗的“过拟合与欠拟合”直观解释

【导读】前几天,应用数据科学研究者William Koehrsen发布一篇关于“过度拟合和拟合不足”的博文,作者解释了在模型训练中过拟合与欠拟合的概念与原因,并解释了方差与偏差的概念,并介绍了克服模型过拟合与欠拟合的方法——验证集。也许你曾看过关于“过拟合与欠拟合”的博文,但是本文绝对也值得一看,因为作者使用现实生活中的例子进行概念讲解,把概念的理解变成一个有趣的过程,相信会令您耳目一新!

Overfitting vs. Underfitting: A Conceptual Explanation

过拟合与欠拟合:概念解释

基于样例的数据科学核心概念框架

如果你想学英语,虽然你对语言没有预先的知识,但是你也听说过英国最伟大的作家是威廉·莎士比亚。所以,一个自然学习方法就是把自己锁在图书馆里,去记住他的作品。 经过一年的学习,你从学习中走出来前往纽约市,用“Good dawning to thee, friend!”问候你所看到的第一个人。当然,对方可能会不屑一顾 “神经病!”。你可以再试试:“Dear gentlewoman, How fares our gracious lady?”又会得到一个失败而急促的回答。 经过第三次失败的尝试,你会心烦意乱:“What shame what sorrow!”。的确如此:你刚刚经历了建模过程中最基本的错误之一,在训练数据的时候过拟合了。

在数据科学中,过拟合模型被解释为在训练集上具有高方差(high variance)和低偏差(low bias),导致新测试数据泛化能力不佳。我们可以用学习英语的过程来简化“过拟合”概念的理解。我们要建立的模型是如何使用英语进行交流。我们的训练数据是莎士比亚的全部作品,我们的测试集是在纽约与人交流。如果我们用社会接受度来衡量性能,那么我们的模型就不能推广到测试数据(因为莎士比亚的语法肯定和纽约人民的有所不同)。这很容易理解,但方差和偏差该怎么理解呢?

方差是一个模型反应训练数据变化的程度。由于我们只是记忆训练集,所以我们的模型具有很高的方差:它高度依赖于训练数据。如果我们读完J.K Rowling的全部作品,Rowling不是莎士比亚,那么构建出的模型将完全不同。当一个具有高方差的模型被应用到一个新的测试集上时,它不能很好地执行,这是因为原先的模型中没有这部分训练数据。就像一个学生只是记住了教科书中的问题,但在遇到现实世界的问题时就会感到力不从心。

有时甚至是高年级学生也应该走出去看看

偏差是方差的另一面,因为它代表了我们对数据做出假设的力度。 在我们尝试学习英语的过程中,我们没有形成最初的模型假设,并相信Bard的工作将教会关于语言的所有知识。这种低偏差看起来像是积极的——这也是为什么我们会想要偏向于数据?但是,我们应该始终对数据是否能够告诉我们所有的一切保持怀疑态度。任何自然过程都会产生噪音,而我们的训练数据无法捕捉到所有的噪音。通常,我们应该在我们的模型中对于训练数据中没有看到的波动做出一些初步的假设。 例如,在我们开始阅读之前,我们应该明白莎士比亚的作品不能从字面上教我们英语,这样才会使我们对训练数据持谨慎态度。

到目前为止:偏差是指我们忽略了多少数据,方差是指我们的模型依赖于数据的程度。在任何模型中,总是存在偏差和方差之间的关系,当我们建立模型时,我们试图达到最好的平衡。偏差与方差适用于任何模型(从最简单到最复杂的模型),对于数据科学家来说,这是一个重要的概念!

我们看到一个过拟合的模型具有高方差和低偏差。 那反过来呢:低方差和高偏差呢?这就是所谓的欠拟合:相反,如果训练数据过于紧密,一个欠拟合的模型会忽略了训练数据中的经验教训,并且没有学习到输入和输出之间的基本关系。

我们以我们的例子来考虑这个问题。从我们之前试图建立的英语学习的模型中,我们决定提前对模型做一些假设。我们也改变我们的训练数据,通过观看所有的英语节目自学英语。为了避免重复第一次尝试中我们的错误,我们提前做出一个假设,即只有在某种语言中以最常见的词语开始的句子(例如the, be, to, of, and, a)是重要的。 当我们学习的时候,我们不注意其他的句子,相信我们会建立一个更好的模型。

经过长时间的训练,我们再次走上纽约街头。 这一次我们稍微好一点,但是我们的谈话再次失败。虽然我们知道一些英语,可以理解有限的几个句子,但是由于我们对训练数据的偏见,我们没有学习到这个语言的基本结构。该模型没有高方差,但是我们对我们最初的尝试进行了过度矫正,模型欠拟合了!

当我们严格关注数据的时候我们会过拟合。 当我们忽略了数据,就会欠拟合。必须有一种方法来找到最佳的平衡! 幸运的是,在数据科学方面有一套完善的解决方案,叫做验证(validation)。 在我们的例子中,我们只使用了一个训练集和一个测试集,这意味着我们不可能提前知道我们的模型在现实世界中会如何做。理想情况下,我们将有一个“预测试”来评估我们的模型,并在真正的测试之前做出改进。 这个“预测试”被称为验证集,是模型开发的关键部分。

我们两次学习英语的失败使我们更加聪明,现在我们决定使用一个验证集。我们同时使用莎士比亚的作品和朋友秀(Friends show),因为我们学到了更多的数据,几乎总能改善模型。这次在我们训练结束之后,在我们上街之前,我们会评估我们的模型,第一个星期,我们的谈话能力还不行,因为我们的语言模型是很糟糕的。但是,这只是验证集,每次我们犯错误,我们都可以调整我们的模型。最后,我们可以与小组保持自己的对话并宣布我们已经准备好了在测试集上进行测试。

再次在现实世界中进行实验,我们终于成功了!我们的模型现在非常适合沟通,因为我们有一个关键要素,即用于模型改善和优化的验证集。

这个例子可以被简化。 在数据科学模型中,我们使用了大量的验证集,否则我们最终会过拟合验证集。我们将训练数据分成不同的子集,或者如果我们有大量的数据,我们可以使用多个验证集。这个例子涵盖了问题的所有方面,现在,当你听到过拟合与欠拟合以及偏差与方差时,你就有了一个概念可以理解这个问题以及如何解决这个问题!

数据科学可能看起来很复杂,但它确实是建立在一系列基本模块上的。 本文中涉及的概念:

过拟合:对训练数据过度依赖。

欠拟合:不了解训练数据中的关系。

高方差:模型在训练数据上发生显著变化。

高偏差:对模型的假设导致忽略训练数据。

过拟合和欠拟合会导致测试集的泛化能力差。

模型调整的验证集可以防止欠拟合和过拟合。

数据科学和其他技术领域不应该脱离我们的日常生活。通过用现实世界的例子来解释概念,我们可以更好地理解这些概念。如果我们了解这个框架,那么我们可以使用一些技巧来完善。 下一篇文章将提供一个使用图表和度量指标的例子。

欢迎反馈和批评。你可以通过Twitter @koehrsen_will联系到我。

原文链接:

https://towardsdatascience.com/overfitting-vs-underfitting-a-conceptual-explanation-d94ee20ca7f9

原文发布于微信公众号 - 专知(Quan_Zhuanzhi)

原文发表时间:2018-02-03

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏量化投资与机器学习

【机器学习课程】深度学习与神经网络系列之绪论介绍

神经网络与深度学习 让机器具备智能是人们长期追求的目标,但是关于智能的定义也十分模糊。Alan Turing在 1950年提出了著名的图灵测试:“一个人在不接触...

23290
来自专栏计算机视觉战队

深度学习的昨天、今天和明天

机器学习是人工智能领域的一个重要学科。 自从20世纪80年代以来, 机器学习在算法、理论和应用等方面都获得巨大成功。2006年以来, 机器学习领域中一个叫“ 深...

9830
来自专栏机器之心

CVPR2018 | 直接建模视觉智能体?让「小狗」动起来~

选自arXiv 作者:Kiana Ehsani 等 机器之心编译 参与:Pedro、路 近日,来自华盛顿大学和艾伦人工智能研究所的研究者在 arXiv 上发布论...

36560
来自专栏新智元

【10亿+数据集,ImageNet千倍】深度学习未来,谷歌认数据为王

【新智元导读】数据重要还是算法重要?一篇新的论文或许给出了答案。使用一个 300 倍于 ImageNet 的新数据集,谷歌研究人员发现,随着数据增长,模型完成计...

44140
来自专栏机器之心

模拟世界的模型:谷歌大脑与Jürgen Schmidhuber提出「人工智能梦境」

选自arXiv 作者:David Ha、Jürgen Schmidhuber 机器之心编译 人类可以在应对各种情况时在大脑中事先进行充分思考,那么人工智能也可以...

34280
来自专栏机器之心

学界 | MINIEYE首席科学家吴建鑫解读ICCV入选论文:用于网络压缩的滤波器级别剪枝算法ThiNet

机器之心报道 作者:高静宜 近日,南京大学计算机科学与技术系教授、MINIEYE 首席科学家吴建鑫所在团队的一篇论文《ThiNet: 一种用于深度神经网络压缩的...

43980
来自专栏Pytorch实践

机器是如何做阅读理解的?

机器阅读理解 斯坦福有个很重要的比赛,就是让机器完成阅读理解题目,即给定一篇文章,让机器理解文章含义进行题目回复。每年这一比赛都是国际性的,引来了业界、学术界的...

50970
来自专栏PPV课数据科学社区

大数据分析到底需要多少种工具

1.分类方法大比武 大数据分析主要依靠机器学习和大规模计算。机器学习包括监督学习、非监督学习、强化学习等,而监督学习又包括分类学习、回归学习、排序学习、匹配学习...

38050
来自专栏AI科技大本营的专栏

OpenAI NLP最新进展:通过无监督学习提升语言理解

【AI 科技大本营导读】近日,OpenAI 在其官方博客发文介绍了他们最新的自然语言处理(NLP)系统。这个系统是可扩展的、与任务无关的,并且在一系列不同的 N...

15230
来自专栏AI研习社

Arxiv Insights | 克服稀疏奖励的束缚,让智能体在学习中成长

在强化学习的设置中,为了执行一个我们想学习的任务,智能体会应用一些特征提取方案来从原始数据中提取有用信息,然后会有一个策略网络用于提取特征。

20610

扫码关注云+社区

领取腾讯云代金券