【问题标题】:Exporter classification_signature出口商分类_签名
【发布时间】:2016-03-31 16:37:07
【问题描述】:

我正在尝试修改 serving tutorial 以使用我的模型,这基本上是修改为使用 CSV 文件和 JPEG 的 CIFAR 示例。我似乎找不到 Exporter 类的文档,但这是我目前所拥有的。它在 cifar10_train.py 文件中的 train() 函数中:

  # Save the model checkpoint periodically.
  if step % 10 == 0 or (step + 1) == FLAGS.max_steps:
    checkpoint_path = os.path.join(FLAGS.train_dir, 'model.ckpt')
    saver.save(sess, checkpoint_path, global_step=step)

    export_dir = FLAGS.export_dir
    print 'Exporting trained model to ' + FLAGS.export_dir
    export_saver = tf.train.Saver(sharded=True)
    model_exporter = exporter.Exporter(export_saver)
    #
    # TODO: where to find x and y?
    #
    signature = exporter.classification_signature(input_tensor=x, scores_tensor=y)
    model_exporter.init(sess.graph.as_graph_def(),
                        default_graph_signature=signature)
    model_exporter.export(export_dir, tf.constant(FLAGS.export_version), sess)

这是我用来训练模型的代码:

  labels = numpy.fromfile(os.path.join(data_dir, 'labels.txt'), dtype=numpy.int32, count=-1, sep='\n')

  filenames_and_labels = []

  start_image_number = 1
  end_image_number = 8200

  for i in xrange(start_image_number, end_image_number):
    file_name = os.path.join(data_dir, 'image%d.jpg' % i)
    label = labels[i - 1]
    filenames_and_labels.append(file_name + "," + str(label))


  print('Reading filenames for ' + str(len(filenames_and_labels)) + ' files (from ' + str(start_image_number) + ' to ' + str(end_image_number) + ')')

  for filename_and_label in filenames_and_labels:
    array = filename_and_label.split(",")
    f = array[0]
    # print(array)
    if not tf.gfile.Exists(f):
      raise ValueError('Failed to find file: ' + f)

  # Create a queue that produces the filenames to read.
  filename_and_label_queue = tf.train.string_input_producer(filenames_and_labels)

  filename_and_label_tensor = filename_and_label_queue.dequeue()
  filename, label = tf.decode_csv(filename_and_label_tensor, [[""], [""]], ",")
  file_contents = tf.read_file(filename)
  image = tf.image.decode_jpeg(file_contents)

任何想法如何正确设置导出器?

【问题讨论】:

    标签: tensorflow tensorflow-serving


    【解决方案1】:

    请查看MNIST export example

    这显示了如何生成 x 和 y,然后将其放入签名中。

    另外,Inception example 展示了如何扩展现有模型以创建导出和服务。特别是cifar10.inference 调用看起来类似于inception_model.inference

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-02-27
      • 2021-09-27
      • 1970-01-01
      • 2017-04-10
      • 2012-01-20
      • 2016-12-09
      • 1970-01-01
      相关资源
      最近更新 更多