【问题标题】:Wrong labels in the inception v3 network (Tensorflow)inception v3 网络中的错误标签 (Tensorflow)
【发布时间】:2017-04-29 18:14:29
【问题描述】:

我在这里使用 build_image_data.py 脚本:https://github.com/tensorflow/models/blob/master/inception/inception/data/build_image_data.py 就像将我的数据集转换为 TFRecords 格式的文档一样。在 inception_train.py 脚本中,当我打印图像和标签时,标签与图像不对应,因此我无法进行正确的训练。我使用的数据集是不平衡的(类之间的图像数量不同)。我还做了一个测试,在类和标签之间使用相同数量的图像仍然是错误的。 tensorflow 代码保持不变,我所做的唯一更改是未在 image_processing.py 脚本中应用失真。我不知道标签错误是因为我的 TFR 转换还是因为返回图像和标签的 image_processing.py 脚本。有什么想法吗?

张量流版本:0.10 操作系统:Ubuntu 14.04

inception_train.py 脚本中代码的sn-p检查是:

labs = sess.run(labels)
imgs = sess.run(images)


for i in range(FLAGS.batch_size):
  print('Label ' + str(labs[i]))
  plt.imshow(imgs[i, :, :, :])
  plt.show()

【问题讨论】:

  • 您提到进行更改 - 如果您使用全新的脚本,它会起作用吗?
  • 不,它也不适用于应用扭曲。
  • 我在 build_image_data.py 脚本中进行了很多打印,并且标签是正确的,因此可能 image_processing.py 脚本中存在错误。任何帮助表示赞赏。

标签: python computer-vision tensorflow deep-learning conv-neural-network


【解决方案1】:

您应该同时运行两者:即只调用一次 sess.run。像这样的:

imgs,labs = sess.run([images,labels])# ONLY ONE CALL 

for i in range(FLAGS.batch_size):
    print('Label ' + str(labs[i]))
    plt.imshow(imgs[i, :, :, :])
    plt.show()

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-07-14
    • 2017-03-22
    • 1970-01-01
    • 2023-03-24
    • 2016-11-26
    • 2017-10-24
    • 2016-09-17
    相关资源
    最近更新 更多