跳转至

02 过拟合和欠拟合

过拟合和欠拟合

模型容量

“模型容量”(Model Capacity)是指一个机器学习模型能够拟合不同复杂度函数的能力。模型容量通常与模型的复杂度有关,反映了模型能够表达的函数空间的大小。

简单的模型(低容量)

  • 直线:如果用一条直线来拟合这些点,这就相当于一个非常简单的模型。它可以很好地表示线性关系,但如果数据不是严格的线性关系,这条直线就可能无法很好地描述数据的趋势。比如,当数据点呈现一个 U 形时,直线就无法很好地拟合。

复杂的模型(高容量)

  • 曲线:现在,如果允许你用一条曲线来拟合这些点,比如一个二次方程 y=ax2+bx+c,这就相当于一个稍微复杂一点的模型。这条曲线可以更好地拟合非线性的关系,比如 U 形数据。如果你允许使用更高次的多项式,比如三次或四次多项式,那么模型就会变得更加复杂,可以拟合更复杂的关系。

模型容量的影响

  • 能记住所有训练数据的模型不一定是好的,因为数据可能包含大量噪音,过于注重无关的细节反而泛化能力会变差
  • 深度学习的核心:模型先足够大,在足够大的情况下用各种手段控制模型容量,使得最后泛化误差能往下降

数据复杂度

  • 多个重要因素
    • 样本个数(动物种类)
    • 每个样本的元素个数(每个动物的个数)
    • 时间、空间结构(视频)
    • 多样性(类别分类)

总结

  • 模型容量需要匹配数据复杂度,否则可能导致欠拟合和过拟合
  • 统计机器学习提供数学工具来衡量模型复杂度
  • 实际中一般靠观察训练误差和验证误差