我正在使用来自https://github.com/Microsoft/FERPlus的FER2013Plus数据集,其中包含fer2013new.csv文件。该文件包含数据集中每个图像的标签。标签上的示例可能是:
(4,0,0,2,1,1,0,0,3)
每个维度都是不同的情感。最后,在他们的论文https://arxiv.org/pdf/1608.01041.pdf中,他们将标签分布转换为概率=>新标签将变为
(0.5、0、0、0.25、0.125、0、0、0.375)
换句话说,图像中的人以0.5的概率感到满意,以0.25的概率感到悲伤,依此类推...而这些概率的总和为1。
现在,在训练过程中,我习惯tf.nn.softmax_cross_entropy_with_logits_v2
了计算预测和标签之间的损失。现在如何计算精度?
任何帮助深表感谢!!
这是论文的摘录:
“我们将多数情绪作为单一情绪标签,并且针对多数情绪测量预测准确性。”
他们正在使用离散分类任务。因此,您只需要tf.argmax()
在logit上获得最高的概率,然后将其与tf.argmax()
标签的进行比较即可。
例如,如果标签为(0.5, 0, 0, 0.25, 0.125, 0, 0, 0.375)
,则高兴是多数情绪,因此您将检查自己的日志是否也具有多数情绪。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句