《深度学习DEEP LEARING》花书—机器学习部分 5.2 关键词 容量 过拟合 欠拟合 假设空间 学习笔记分享(欢迎指正)

目录

泛化误差(generalization)

欠拟合

过拟合

容量(capacity)

假设空间(hypothesis space)

        举例

        小结


首先引入一个概念:

泛化误差(generalization)

通常情况下,当我们训练机器学习模型时,我们可以使用某个训练集,在训练集上计算一些被称为 训练误差

training error
)的度量误差,目标是降低训练误差。目前为止,我们讨论的是一个简单的优化问题。机器学习和优化不同的地方在于,我们也希望 泛化误差

generalization error
)(也被称为
测试误差

test error
))很低。泛化误差被定义为新输入的误差期望。这里,期望的计算基于不同的可能输入,这些输入采自于系统在现实中遇到的分布。
通常,我们度量模型在训练集中分出来的 测试集(test set
)样本上的性能,来评估机器学习模型的泛化误差。
以下是决定机器
学习算法效果是否好的因素:
1.
降低训练误差。
2.
缩小训练误差和测试误差的差距。
这两个因素对应机器学习的两个主要挑战:
欠拟合underfifitting)和 过拟合
overfifitting
)。

欠拟合是指模型不能在训练集上获得足够低的误差。

过拟合是指训练误差和和测试误差之间的差距太大。

那么,为了控制其中的度,引入容量的概念。

容量(capacity

通过调整模型的
容量

capacity
),我们可以控制模型是否偏向于过拟合或者欠拟合。通俗地,模型的容量是指其拟合各种函数的能力。容量低的模型可能很难拟合训练集。容量高的模型可能会过拟合,因为记住了不适用于测试集的训练集性质。
那么,如何去量化模型容量呢?
有许多方法,其中
最有名的是 Vapnik-
Chervonenkis
维度

Vapnik-Chervonenkis dimension, VC
)。
VC
维度量二元分类器的容量。VC
维定义为该分类器能够分类的训练样本的最大数目。假设存在
m
个不同 x
点的训练集,分类器可以任意地标记该
m
个不同的
x
点,
VC
维被定义为 m 的最大可能值。量化模型的容量使得统计学习理论可以进行量化预测。统计学习理论中最重要的结论阐述了
训练误差和泛化误差之间差异的上界随着模型容量增长而增长,但随着训练样本增多而下降。通常, 泛化误差是一个关于模型容量的 U 形曲线函数。

那么,如何去控制这个容量呢?有许多方法,下面着重介绍两种

假设空间hypothesis space

机器学习中可能的函数构成的空间称为“假设空间”。即学习算法可以选择为解决方案的函数集。当机器学习算法的容量适合于所执行任务的复杂度和所提供训练数据的数量时,算法效果通常会最佳。容量不足的模型不能解决复杂任务。容量高的模型能够解决复杂的任务,但是当其容量高于任务所需时,有可能会过拟合。

例如:线性回归算法将关于其输入的所有线性函数作为假设空间。广义线性回归的假设空间包括多项式函数,而非仅有线性函数。这样做就增加了模型的容量。

             举个例子如图,图中的点代表训练集的样本,我们的目标是找到能拟合尽量多的点的函数。其中,用三个模型拟合了这个训练集的样本。

假设,训练数据是通过随机抽取 x 然后用二次函数确定性地生成 y 来合成的。

因此,() 用一个线性函数拟合数据会导致欠拟合——它无法捕捉数据中的曲率信息。

() 用二次函数拟合数据在未观察到的点上泛化得很好。这并不会导致明显的欠拟合或者过拟合。

() 一个 9 阶的多项式拟合数据会导致过拟合。

如图所示,我们探讨了通过改变输入特征的数目和加入这些特征对应的参数,改变模型的容量,
事实上,还有很多方法可以改变模型的容量。
值得注意的是,具有最优容量的模 型仍然有可能在训练误差和泛化误差之间存在很大的差距。在这种情况下,我们可以通过收集更多的训练样本来缩小差距。

小结

1 本单元学习中,我们了解了什么是泛化误差,以及为了缩小训练误差和训练误差与泛化误差差距而引起的欠拟合和过拟合问题。
2 为了把握过拟合和欠拟合提出了容量的概念,并讨论了如何去量化容量。
3 为了控制容量,提出了假设空间。

 

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
THE END
分享
二维码
< <上一篇

)">
下一篇>>