【问题标题】:Showing Labels When Evaluating TensorFlow-Slim在评估 TensorFlow-Slim 时显示标签
【发布时间】:2017-04-13 15:48:51
【问题描述】:

我正在自学 TensorFlow,目前正在tensorflow/models/slim repo 中试验不同的图像分类模型。按照那里的教程,我已经微调了一个预训练的inception_v2_resnet 模型,并正在尝试evaluate 它。我想知道是否有任何简单的方法来修改eval_image_classifier.py 脚本以打印它正在分类的图像的标签?这将有助于调整此脚本以用于测试集。

【问题讨论】:

    标签: python python-2.7 tensorflow tf-slim


    【解决方案1】:

    我知道这篇文章有点老了,但我在这段时间里玩的是 tensorflow。也许有人查看这篇文章会在这里找到答案。

    您可以在评估循环中打印 eval_op,它可以处理其他数据,而不仅仅是 names_to_updates.values()。 原来是这样写的:

    eval_op = list(names_to_updates.values())
    

    但你可以改成这样:

    eval_op = tf.Print(list(names_to_updates.values()), [predictions], message="predictions:", summarize=100)
    

    示例输出:

    INFO:tensorflow:Evaluation [1/111]
    I tensorflow/core/kernels/logging_ops.cc:79] predictions:[11 3 3 9]
    INFO:tensorflow:Evaluation [2/111]
    I tensorflow/core/kernels/logging_ops.cc:79] predictions:[8 10 3 7]
    

    “Predictions:”后面的数组中的数字是输出的标签个数。

    以同样的方式,您可以输出例如此处写的错误标记的图像文件名 (How to get misclassified files in TF-Slim's eval_image_classifier.py?)

    【讨论】:

      【解决方案2】:

      slim 中的evaluate 函数是负责在图像上实际调用 session.run 的函数,所以这里有你要修改的地方。

      【讨论】:

      • 在这种情况下,我想我必须在修改后重建 tensorflow。
      • 你能完成这项任务吗?我在评估函数下看不到标签数组或可用的数组。
      • @Ogail 我还没有机会完成这项任务。
      猜你喜欢
      • 2018-02-19
      • 1970-01-01
      • 1970-01-01
      • 2018-11-11
      • 2019-05-04
      • 2018-02-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多