机器学习速成过拟合的风险和泛化

机器学习速成过拟合的风险和泛化

大家好,今天我们学习【机器学习速成】之过拟合的风险和泛化。

泛化是指模型很好地拟合以前未见过的新资料的能力。

我们之前曾提到过, 仅仅拟合训练资料并不足以进行机器学习。 对于机器学习,其实我们感兴趣的是泛化。 我们来深入探讨一下这个主题。

我们马上学三点

直观理解过拟合。确定某个模型是否出色。将资料集划分为训练集和测试集机器学习

直观理解过拟合

资料集

现在我们有一个数据集, 左边是一些垃圾邮件样本, 右边是一些非垃圾邮件样本。 我可以尝试拟合一个线性模型, 对垃圾邮件样本和非垃圾邮件样本进行某种程度的区分。

欠拟合

但这里我要尝试拟合的任何一种线性模型 最终都会出点错, 可能会将这个或那个样本误分类, 放线上的错误一侧。

我可能会决定尝试一种更聪明的方法, 以针对训练资料获得完全准确的结果, 具体方法是绘制一条更为复杂的线, 可能是像这样的一条线。

过拟合

我要确保我的模型超级聪明, 可以实现百分之百的准确率。 现在,我的所有训练样本都已完全正确分类。

这时候会有什么问题呢? 问题就是:如果加入新的样本,会怎么样? 我最终可能会遇到一些新样本, 对于这些样本,模型无法很好地进行预测。

从某种意义上讲, 这个模型最初可能过拟合了训练资料, 而无法很好地对之前未出现的新资料进行分类。

模型复杂苏曲线

我们已经看到, 如果模型过于复杂, 那么过拟合真的会成为问题。 过拟合模型在训练过程中产生的损失很低, 但在新资料测试集方面的表现却非常糟糕。

最好的模型:泛化能力最好, 也就是对应测试资料集准确率最高的模型;

如何才能确保在实践中模型不会过拟合呢? 让我们回过头来, 从整体上看看在机器学习中, 我们究竟在尝试做些什么。

在非常抽象的层面上, 我们可以想象有某种隐藏的流程在为我们提供资料。

这个隐藏的流程可能就像这样: 生成垃圾电子邮件或非垃圾电子邮件, 然后人们会根据自己的看法标记这些邮件。

或者是这样的流程: 生成小狗照片, 然后人们将这些照片标记为可爱或不可爱。 这个流程可以是任何为我们提供资料的流程, 而一般情况下,我们无法了解这个流程的完整详情。

我们唯一会了解的, 就是我们从这个流程中采集的具体样本。 也就是具体的电子邮件或垃圾邮件, 或者具体的小狗照片。 我们将这些样本称为资料样本。

机器学习的目标是对从真实概率分布中 抽取的新资料做出良好预测。 遗憾的是,模型无法检视整体情况; 模型只能从训练资料集中取样。

现在,在理想情况下 我们希望能够对资料样本进行训练, 然后这个模型对从未见过的样本做出良好预测。

我们如何得知自己的模型是否出色?

我们如何才能相信模型能做到这一点呢? 我们可以追溯到远至14世纪的奥卡姆的威廉, 使用他提出的一些很好的概念, 他是史上第一位机器学习理论家, 提出了“奥卡姆剃刀”这一概念, 大意是说模型应尽可能简单

围绕这一概念诞生了 一个称为“泛化理论”的完整领域。 这是个非常吸引人的领域, 但本课程不会过多涉猎。

因为我们不需要运用理论, 实际上我们利用的是经验。

我们可以使用的经验策略是, 从该分布另外取样, 然后看看模型效果如何。 这种方式称为使用测试集方法。

我们从该分布抽取一批资料, 对这些资料进行训练, 这就是训练集。

我们再从该分布另外抽取一批资料, 用于测试模型称之为测试集, 一般来说, 在测试集上表现是否良好 是衡量能否在新资料上表现良好的有用指标, 前提是:如果测试集足够大; 如果我们不反复使用相同的测试集来作假。

如果预测效果好, 即预测测试集和预测训练集的效果一样好, 那么我们就可以满意地确定, 我们的模型可以很好地泛化到之前未出现的新资料。

机器学习细则

这里有些注意事项, 也就是机器学习的一些细则。

第一,我们要以独立且一致的方式从该分布抽取样本。 样本之间不会互相影响。 我们不以任何方式主动产生偏差。

第二,分布是平稳的,不会随时间发生变化。 即分布在资料集内不会发生变化。

第三,我们始终从同一个分布提取样本, 不会突然开始从其他分布提取样本。

以上是非常关键的假设, 我们在监督式机器学习中 所做的许多工作都是以这些假设为基础。

但是在实践中,我们有时会违反这些假设。 想象有一个选择要展示的广告的模型。 如果该模型在某种程度上 根据使用者以前看过的广告选择广告, 则会违背独立同分布假设。

想象有一个包含一年零售资讯的资料集。 使用者的购买行为会出现节假日或季节性变化, 这会违反平稳性假设。

如果人们突然认为, 其他品种的小狗就像他们之前看到小狗一样可爱, 这时从相同分布抽取样本的行为就可能会改变。

因此,我们必须知道这些假设, 密切关注各项指标, 这样在违反了这些假设时就能立即知晓。

总结:

泛化是指模型很好地拟合以前未见过的新资料的能力。 新资料必须从用于建立该模型的同一分布中抽取。

如果某个模型尝试紧密拟合训练资料, 但却不能很好地泛化到新资料, 就会发生过拟合。

如果不符合监督式机器学习的关键假设, 那么我们将失去 对新资料进行预测这项能力的重要理论保证。

这里讲了三点,关键词有哪几个? 欢迎回复评论

标签: 机器人

猜你喜欢