机器学习算法的目标是降低期望泛化误差。这个数据量被称为 风险(risk)。在这里,我们强调该期望取自真实的潜在分布 pdata。如果我们知道了真实分布 pdata(x, y),那么最小化风险变成了一个可以被优化算法解决的优化问题。然而,我们遇到的机器学习问题,通常是不知道 pdata(x, y),只知道训练集中的样本。将机器学习问题转化回一个优化问题的最简单方法是最小化训练集上的期望损失。这意味着用训练集上的经验分布 ˆp(x, y) 替代真实分布 p(x, y)。现在,我们将最小化 经验风险(empirical risk):
(3)
其中 m 表示训练样本的数目。
基于最小化这种平均训练误差的训练过程被称为 经验风险最小化(empiricalrisk minimization)。在这种情况下,机器学习仍然和传统的直接优化很相似。我们并不直接最优化风险,而是最优化经验风险,希望也能够很大地降低风险。一系列不同的理论构造了一些条件,使得在这些条件下真实风险的期望可以下降不同的量。然而,经验风险最小化很容易导致过拟合。高容量的模型会简单地记住训练集。在很多情况下,经验风险最小化并非真的可行。最有效的现代优化算法是基于梯度下降的,但是很多有用的损失函数,如 0 − 1 损失,没有有效的导数(导数要么为零,要么处处未定义)。这两个问题说明,在深度学习中我们很少使用经验风险最小化。反之,我们会使用一个稍有不同的方法,我们真正优化的目标会更加不同于我们希望优化的目标。
领取专属 10元无门槛券
私享最新 技术干货