Answers:
我也遇到过类似的问题。
我已经用交叉熵损失训练了我的神经网络二进制分类器。这里,交叉熵的结果是历元的函数。红色用于训练集,蓝色用于测试集。
通过显示精度,我惊讶地发现,即使对于测试集,与epoch 50相比,epoch 1000的精度更高!
为了理解交叉熵和准确性之间的关系,我研究了一个更简单的模型,即逻辑回归(具有一个输入和一个输出)。下面,我仅在3种特殊情况下说明这种关系。
通常,交叉熵最小的参数不是精度最大的参数。但是,我们可能期望交叉熵和准确性之间存在某种关系。
[在下文中,我假设你知道什么是交叉熵,为什么我们用它来代替精确到火车模型等等。如果没有,请仔细阅读本第一:如何解释的交叉熵的分数?]
插图1这是为了表明交叉熵最小的参数不是精度最大的参数,并了解原因。
交叉熵。 最小化交叉熵后,我得到0.6的精度。在x = 0.52处进行0和1之间的切割。对于这5个值,我分别得到的交叉熵为:0.14、0.30、1.07、0.97、0.43。
准确性。 在最大化网格上的精度之后,我获得了许多不同的参数,导致0.8。通过选择切割x = -0.1,可以直接显示出来。好了,您也可以选择x = 0.95来削减集合。
在第一种情况下,交叉熵很大。确实,第四个点距离切割点很远,因此具有较大的交叉熵。即,我分别获得交叉熵:0.01、0.31、0.47、5.01、0.004。
在第二种情况下,交叉熵也很大。在这种情况下,第三个点远离切口,因此具有较大的交叉熵。我分别获得了5e-5、2e-3、4.81、0.6、0.6的交叉熵。
在最小化交叉熵是1.27。对于,我们可以显示变化时(在同一张图中)交叉熵和准确性的演变。
插图2在这里,我取。我将数据作为logit模型下的样本,其斜率且截距。我选择了一种具有较大效果的种子,但是许多种子会导致相关行为。
在这里,我仅绘制了最有趣的图形。最小化交叉熵的为0.42。对于此,我们可以显示变化时(在同一张图中)的交叉熵和准确性的演变。
这是一件有趣的事情:情节看起来像我最初的问题。交叉熵上升,所选的变得很大,但是精度继续上升(然后停止上升)。
我们无法选择精度更高的模型(首先是因为这里我们知道基础模型的!)。
插图3在这里,我取,其中和。现在,我们可以观察到准确性和交叉熵之间的密切关系。
我认为,如果模型具有足够的容量(足以包含真实模型),并且数据很大(即样本量达到无穷大),那么当精度最大时,交叉熵可能最小,至少对于逻辑模型而言。我没有任何证据,如果有人引用,请分享。
参考书目:将交叉熵和准确性联系起来的主题既有趣又复杂,但是我找不到有关此内容的文章...研究准确性很有趣,因为尽管评分规则不正确,但是每个人都可以理解其含义。
注意:首先,我想在此网站上找到答案,涉及准确性和交叉熵之间关系的帖子很多,但答案却很少,请参阅:可比训练和测试交叉熵导致非常不同的准确度;验证损失减少,但验证准确性恶化;对分类交叉熵损失函数的怀疑 ; 解释日志损失百分比 ...