由于有人投票,我将在这里发布我的答案。
假设您以以下方式定义了mean_iou op:
miou, update_op = tf.metrics.mean_iou(
predictions, labels, dataset.num_of_classes, weights=weights)
tf.summary.scalar(predictions_tag, miou)
如果在Tensorboard中看到图形,则会发现有一个名为“ mean_iou”的节点,并且在扩展此节点后,您会发现有一个名为“ total_confucion_matrix”的操作。 这是您计算每个类别的查全率和查准率所需要的。
获得节点名称后,可以通过tf.summary.text将其添加到张量tf.summary.text或者通过tf.print函数在终端中进行打印。 下面是一个示例:
miou, update_op = tf.metrics.mean_iou(
predictions, labels, dataset.num_of_classes, weights=weights)
tf.summary.scalar(predictions_tag, miou)
# Get the correct tensor name of confusion matrix, different graphs may vary
confusion_matrix =