Keras - 多输出模型的准确性无效

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Keras - 多输出模型的准确性无效相关的知识,希望对你有一定的参考价值。

在多输出模型的情况下,一个重要的问题是这种模型的训练需要能够为网络的不同头(输出)指定不同的度量。

如官方文档中所述:

要为多输出模型的不同输出指定不同的度量标准,您还可以传递字典,例如metrics = {'output_a':'accuracy'}

对于我的模型,我正在做类似以下的事情:

metrics ={'output_a': 'crossentropy',
          'output_b': 'mse',
          'output_c': 'mse',
          'output_d': 'mse',
          'output_e': 'categorical_accuracy'}

但是当我开始训练模型时,在日志中无法看到整体精度,而损失和val_loss是可见的。

所以我的问题是:

  1. val和val_loss是否分别暗示了模型的整体损失和整体验证损失?
  2. 是否也可以打印模型的acc?
答案
  1. 丢失和val_loss是否分别意味着模型的整体损失和整体验证损失? 是的,他们是整体损失的培训和验证。根据loss_weights中指定的系数对每个输出的单个损失进行加权。
  2. 是否也可以打印模型的准确性? 您可以单独获得每个输出的准确度,但我相信Keras不支持“整体”指标。这将需要有关如何汇总各个输出指标的更多信息。

以上是关于Keras - 多输出模型的准确性无效的主要内容,如果未能解决你的问题,请参考以下文章

多标签分类keras中的奇怪准确性

在 keras 模型指标中使用简单的“准确性”进行多类分类在技术上是错误的吗?我们应该使用 CategoricalAccuracy() 吗?

Keras 中的 model.evaluate() 返回啥值?

多输出自定义keras ResNet50模型; ValueError:图表已断开连接

Keras 函数模型验证准确率高,但预测不正确

Keras中多输出模型的验证损失和验证数据