TensorFlow服务中的legacy_init_op

Kir*_*kov 5 python machine-learning deep-learning tensorflow

我注意到TensorFlow Serving上的每个例子都使用了legacy_init_op参数,SavedModelBuilder但我没有找到任何关于这是什么的明确解释以及为什么它被称为遗留.谁知道这个论点的目的?

例:

legacy_init_op = tf.group(tf.tables_initializer(), name='legacy_init_op')

builder.add_meta_graph_and_variables(
      sess, [tf.saved_model.tag_constants.SERVING],
      signature_def_map={
          'predict_images':
              prediction_signature,
          tf.saved_model.signature_constants.DEFAULT_SERVING_SIGNATURE_DEF_KEY:
              classification_signature,
      },
      legacy_init_op=legacy_init_op)
Run Code Online (Sandbox Code Playgroud)

Ish*_*nal 6

Tensorflow 服务使用查找表进行嵌入或词汇查找.先前版本的tf <1.2初始化表需要单独的操作.所以你需要tf.tables_initializer()单独使用来初始化表.在将来的版本中,该操作将在ModelBundle中组合.