机器学习模型的损失和准确性解释-AI快速进阶系列
1. 简介
使用机器学习时,我们有不同的指标来告诉我们模型的表现如何。但是,这些措施可能会混淆它们的含义、如何解释或它们究竟是什么。知道了这一点,我们可以推断出更多关于我们模型的信息。
在本教程中,我们将重点介绍损失和准确性。它们都是训练模型时要考虑的基本值。
2. 损失
损失是一个值,表示模型中误差的总和。它衡量我们的模型做得有多好(或多坏)。如果误差高,损失就会高,这意味着模型没有做好。否则,它越低,我们的模型工作得越好。
要计算损失,请使用损失或成本函数。有几种不同的成本函数可供使用。每个都以不同的方式惩罚错误,问题决定了哪个更好用。交叉熵和均方误差分别是分类和回归问题最常用的方法。
但是我们怎么知道损失是高还是低呢?嗯,这取决于问题和所使用的成本函数。
假设我们想要预测像素的颜色,无论出于何种原因。为简单起见,我们假设像素的值可以从 0 到 255。我们使用均方误差作为成本函数。
在此示例中,损失为 1 将很小,而损失为 100 将非常高:
然而,损失是高还是低并不是我们可以从中学到的最重要的推论。如果我们绘制一段时间内的损失结果,我们可以看到我们的模型是否在学习,以及学习速度有多快。
这是因为,在深度学习中,模型使用损失函数进行学习。该模型的目标是最小化损失值。这是通过使用梯度下降等技术来完成的,该技术使用损失结果的信息更改模型参数。
随着时间的推移,看到损失可以产生我们模型的有趣发现。如果损失值没有减少,而只是振荡,则模型可能根本没有学习。但是,如果它在训练集中减少,但在验证集中没有减少(或者它减少但存在显着差异),则模型可能过度拟合。换句话说,它可能是从训练示例中过度学习,在新示例中变得毫无用处。如果是这种情况,那么使用正则化,使用更简单的模型,或者在深度学习中降低学习率会很有趣。
在我们关于学习曲线的文章中,我们可以了解更多关于如何随着时间的推移解释这些和其他类型的模型数据的信息。
3. 准确性
准确性更直接。它通过将模型预测与真实值(以百分比表示)进行比较来衡量我们的模型预测效果。
例如,假设我们有一个用于图像分类的模型,用于检测图像中是否有猫。我们有 5 张测试图像。如果模型能够正确预测其中 3 张图像中是否有猫,则准确率为 60%:
现在,如果我们一起分析这两个测量值,我们可以推断出有关模型如何工作的更多信息:
精度低但损失高意味着模型在大多数数据中都会出现大错误。但是,如果损失和准确性都很低,则意味着模型在大多数数据中都会出现小错误。但是,如果它们都很高,则会在某些数据中产生大错误。最后,如果精度高而损失低,则模型仅对部分数据产生小误差,这将是理想情况。
4. 结论
在本教程中,我们已经了解了损失和准确性指标是什么。我们已经看到了如何从它们中推断信息,单独和一起分析它们,并且由于它能够更多地了解我们的模型如何工作和行为