tensorflow服务:feature_configs数据格式的混淆

时间:2017-06-19 06:44:29

标签: tensorflow deep-learning tensorflow-serving

我已经遵循了tensorflow服务教程mnist_saved_model.py  并尝试训练和导出text-cnn-classifier模型 管道是

"No exports for 'false'".

Tensorflow数据输入:

*embedding layer -> cnn -> maxpool -> cnn -> dropout -> output layer     

转换为

data_in = tf.placeholder(tf.int32,[None, sequence_length] , name='data_in')

这适用于训练阶段 但是在考试时间 它说 AbortionError(代码= StatusCode.INVALID_ARGUMENT,details ="期望arg [0]为int64但提供字符串")

我对上面一行感到困惑

  serialized_tf_example = tf.placeholder(tf.string, name='tf_example')
  feature_configs = {'x': tf.FixedLenFeature(shape=[sequence_length], 
                     dtype=tf.int64),}
  tf_example = tf.parse_example(serialized_tf_example, feature_configs)
  # use tf.identity() to assign name
  data_in = tf.identity(tf_example['x'], name='x')  

我将行改为

 feature_configs = {'x': tf.FixedLenFeature(shape=[sequence_length], 
                    dtype=tf.int64),}

但是在训练时它会出现以下错误:

  feature_configs = {'x': tf.FixedLenFeature(shape=[sequence_length], 
                     dtype=tf.string),}

1 个答案:

答案 0 :(得分:0)

你的代码错了:

update_url

这意味着您的输入是serialized_tf_example = tf.placeholder(tf.string, name='tf_example') ,例如句子的单词。因此:

string

在我看来,这并不意味着,因为你不会将词汇转移feature_configs = {'x': tf.FixedLenFeature(shape=[sequence_length], dtype=tf.int64),} tf_example = tf.parse_example(serialized_tf_example, feature_configs) 转移到string。你需要加载你的火车数据的词汇来获得单词索引!