Explore Machine Learning 101, Basic Concepts,四

Explore Machine Learning 101, Basic Concepts,四

  • 三、如何实现机器学习(How)
    • 2、数据!数据!数据!
    • 3、欠拟合与过拟合
      • 欠拟合(Underfitting)
      • 过拟合(Overfitting)
  • 总结

  Note:本文系LeetCode专题“Basic Concepts in ML,Basic Concepts in ML”的翻译,期间加有笔者个人的见解,如有错误,欢迎评论区留言讨论,共同进步。

三、如何实现机器学习(How)

  通过上一节的学习我们深入了解了训练机器学习的流程,在接下来的学习中我们将进一步了解数据对于机器学习模型构建的重要性,同时对低拟合和过拟合问题进行初步的分析。

2、数据!数据!数据!

  机器学习工作流程的最终目的是建立一个机器学习的模型。正因为我们是从数据中得到的模型,所以数据决定了模型性能所能达到的上限。对于某个给定的数据集,实际上我们可以得到很多与之对应的机器学习模型;我们能做的就是找到性能最优的模型方案。同时我们也必须认识到我们无法让模型从数据范围以外学习到一些东西。

Rule of thumb: garbage in, garbage out.

Explore Machine Learning 101, Basic Concepts,四_第1张图片
  这里我们用一个耳熟能详的小故事来做一个简单的说明吧,比如盲人摸象。在我们的机器学习任务过程中,我们得到的训练数据集可能只是大象腿或者象牙的图像,而在测试过程中,我们得到的却是大象的全貌,在这种情况下,我们发现训练模型表现不佳并不奇怪,因为我们首先并没有接近现实的高质量训练数据。
  也许有人会说,既然数据如此的重要,那么我们为什么不把大象的全貌等高质量数据输入算法而不是在大象的某些部位拍摄呢?在面对实际问题时,无论是我们还是机器,往往会像“盲人”一样,常常难以收集到问题本质特征的数据。这一方面是因为技术问题(如数据隐私),另一方面也可能是我们没有正确认识到问题的本质。
  在现实世界中,我们得到的数据在有利的情况下反映了现实的一部分,在不利的情况下却可能是一些噪音,甚至在最坏的情况下与现实相矛盾。因此无论使用哪种机器学习算法,人们都无法从包含太多噪音或与现实太不一致的数据中学到任何东西。

3、欠拟合与过拟合

  对于有监督学习(例如分类或者回归),生成的模型不符合数据的情况有:欠拟合和过拟合。
  对于有监督学习模型最重要的评价标准就是其普适性或者说泛化能力,即由训练数据导出的模型对未知数据的期望属性的预测能力。当我们说一个模型是欠拟合或过拟合时,这意味着模型不能很好地推广到看不见的数据。
  同时我们需要认识到的是,一个与训练数据吻合良好的模型并不一定意味着它能很好地推广到不可见的数据(测试数据集)。原因如下:

  • 训练数据只是我们从现实世界中收集的样本,只代表了现实的一部分(如前文提到的盲人摸象的例子)。也有可能是训练数据不具有代表性,即使模型很好地拟合了训练数据,也不能很好地拟合不可见数据。
  • 我们收集的数据中不可避免的含有噪声和误差。与数据完全吻合的模型也会错误地捕捉到不期望的噪声和误差,最终导致对不可见数据的预测存在偏差和误差。

  在我们深入研究欠拟合和过拟合的定义之前,我们先来看看分类任务中欠拟合和过拟合模型的一些例子。
Explore Machine Learning 101, Basic Concepts,四_第2张图片

欠拟合(Underfitting)

  欠拟合模型是指与训练数据不匹配的模型,即与真实值有较大偏差的模型。
  拟合不足的原因之一可能是模型对数据过于简化,无法捕捉数据中隐藏的关系。以上图Underfitting Model为例分析(如图①):为了对样本进行分离,即分类,简单的线性模型无法清晰地划分出不同类别样本之间的边界,导致了显著的误分类。
  为了避免上述不拟合的原因,可以选择一种能够从训练数据集生成更复杂模型的替代算法。

过拟合(Overfitting)

  过拟合模型是一种与训练数据拟合良好的模型,即误差较小或无误差,但不适用于不可见数据的模型。
  与不完全拟合的情况相反,一个能够拟合所有数据(训练集)的过于复杂的模型会陷入噪声和错误的陷阱。如上图③:模型对训练数据的误分类较少,但更有可能在不可见的数据上绊倒。
  与欠拟合的处理方法类似地,为了避免过拟合,我们可以尝试另一个算法,可以生成一个相对简单的模型的训练数据集;或者更常见的是,一个保持与原算法生成的过度拟合模型,但添加一个正则化项的算法,即针对模型过于复杂的现象,算法将生成更少的复杂模型,从而拟合数据。

总结

  通过今天的学习我们进一步了解数据对于机器学习模型构建的重要性,同时对低拟合和过拟合问题进行初步的分析。在接下来的学习中我们将进入机器学习入门的最后一部分,即为什么机器学习算法在当今这么重要,以及机器学习的优势。

你可能感兴趣的:(Explore,Machine,Learning,101,Basic)