当某些gt在预测中没有对应时,如何计算ground-truth和预测地标之间的NME(归一化平均误差)?

Posted

技术标签:

【中文标题】当某些gt在预测中没有对应时,如何计算ground-truth和预测地标之间的NME(归一化平均误差)?【英文标题】:How to calculate NME(Normalized Mean Error) between ground-truth and predicted landmarks when some of gt has no corresponding in predicted? 【发布时间】:2021-11-08 11:16:58 【问题描述】:

我正在尝试学习一些面部标志检测模型,并注意到其中许多使用 NME(归一化平均误差)作为性能指标:

公式很简单,计算ground-truth点与模型预测结果之间的l2距离,然后除以归一化因子,归一化因子因数据集而异。

但是,当在某人开发的某个地标检测器上采用此公式时,我必须处理这种不平凡的情况,即某些检测器可能无法为某些输入图像生成足够数量的地标(可能是因为 NMS /模型继承问题/图像质量等)。因此,某些真实点可能在预测结果中没有对应的点。

那么如何解决这个问题,我是否应该将这样的缺失点结果添加到“失败结果集”并使用FR来测量模型,而在进行NME计算时忽略它们?

【问题讨论】:

我投票结束这个问题,因为它与 help center 中定义的编程无关,而是关于 DL 理论和/或方法 - 请参阅 deep-learning @ 中的介绍和注意事项987654323@. 【参考方案1】:

如果你有一个作为神经网络输出的向量 10x1 作为例子 那就是您的点,例如 [x1,y1,x2,y2...x5,y5]。该向量将是模型中神经元数量的固定长度原因。 如果您缺少点 - 这是因为(例如,您有 5 个点中的 4 个)有些点超出了图像的宽度和高度。或者像 [-0.1, -0.2, 0.5,0.7 ...] 这样的减号(负),前 2 个点在图像上看不到,就像它们是任务一样,但它们将在矢量中,你可以调用 NME。 在一些自定义的神经网络中是可能的,因为缺失值会变成最大的错误点。

【讨论】:

感谢您的回复,但某些模型可能不会像 gt 一样具有相同大小的输出,例如 fast-RCNN(我知道它不是地标检测模型,只是一个示例),模型本身可能产生比 gt 更多的地标,并且只有经过一些后期处理(如 nms)才能产生最终结果。但是由于涉及后期处理,输出的数量可能不一样

以上是关于当某些gt在预测中没有对应时,如何计算ground-truth和预测地标之间的NME(归一化平均误差)?的主要内容,如果未能解决你的问题,请参考以下文章

如果整个ground truth都是黑色的,则进行医学图像分割

当某些记录不完整时,计算登录和注销之间的持续时间

如何在 Python 的滚动平均值计算中忽略 NaN

当某些术语之间可能没有空格时,如何拆分一行文本中的项目?

echarts中跨域动态获取数据时,当某些对应的数据为空时,鼠标滑动到所在位置卡死

如何在 PySpark 中计算不同窗口大小的滚动总和