为什么不使用IOU进行培训?

zim*_*rmc 7 machine-learning computer-vision image-segmentation deep-learning

当人们尝试用CNN解决语义分割的任务时,他们通常在训练期间使用softmax-crossentropy损失(参见完全转换 - 长).但是,当谈到比较不同方法的表现时,报告了诸如交叉结合的措施.

我的问题是为什么人们不直接训练他们想要优化的措施?在训练期间对我进行一些衡量训练似乎很奇怪,但评估基准的另一个衡量标准.

我可以看到IOU在训练样本时存在问题,其中类不存在(union = 0且intersection = 0 =>除零归零).但是,当我可以确保我的基础事实的每个样本都包含所有类别时,还有另一个不使用此度量的原因吗?

lej*_*lot 9

这就像问“为什么我们训练对数损失而不是准确性进行分类?”。原因很简单——你不能直接训练大多数指标,因为它们是不可微的。到您的参数(或至少不会产生很好的错误表面)。对数损失(softmax 交叉熵)是准确性的有效替代指标。现在你是完全正确的,用不是你感兴趣的指标的有效替代品的东西进行训练是完全错误的,并且链接的论文做得不好,因为至少对于他们正在考虑的一些指标 - 我们可以轻松显示良好的替代品(例如,对于加权准确度,您所要做的就是重量对数损失)。

  • 为什么 IOU 是不可微的?最坏的情况下,我们应该能够通过集成来解决它 (3认同)

mat*_*tes 7

查看本文,他们提出了一种方法,使IoU的概念可以区分.我实施了他们的解决方案,效果惊人

  • 可能想在这里包含一些数学,使这不是一个链接唯一的答案.他们的算法类似于[Y.Wang等](http://www.cs.umanitoba.ca/~ywang/papers/isvc16.pdf).粗略地说,'I~ = sum(Y*Y')`和'U~ = sum(Y + Y' - Y*Y')`.你的论文使用了"I/U"的负数日志,而我链接的那个使用了"1-I/U".我喜欢负面的日志形式,但我很快就会尝试.你也可以在I/U之后而不是之前进行总结. (3认同)

api*_*ang 5

这是另一种简单的思考方式。

请记住,在解决相关图像问题时,仅仅评估准确性或 IoU 等指标是不够的。评估指标还必须帮助网络了解权重必须朝哪个方向推动,以便网络可以在迭代和历元中有效地学习。

评估这个方向就是早期评论的意思,即错误是可微的。我想网络没有任何关于 IoU 指标可以用来表达:“嘿,它不完全在这里,但我可能必须将我的边界框向左移动一点!”

只是一点点解释,但希望能有所帮助。