tf_serving

1 tf_serving 需要算法提供的主要有三个东西:

   a:模型pb文件

   b:上线所需client文件

首先:pb文件需要用tf.saved_model相关models生成。

tf.saved_model.builder.SavedModelBuilder().add_meta_graph_and_variables()

中signature_def_map中对于classification_signature,prediction_signature有区分,对于这一点没有明白。对于tf_serving中的分类和预测的区别在哪里。

  其次:client文件中request.model_spec.name,yaml文件中的env:name:MODEL_NAME的名字,pb文件所在文件夹的名字应该保持一致。

最后:

测试的时候发现,tf_serving返回的结果长度是训练过程中batch_size*分类类别数。这是由于训练脚本中将输入数据的size写死,image = tf.reshape(batch_size,img_size,img_size,img_channel),这样会导致任何输入模型的数据都被强制转成了这个规格。将训练脚本中相对应部分改为: image = tf.reshape(-1,img_size,img_size,img_channel),并且在builder.add_meta_graph_and_variables中添加参数strip_default_attrs=True。

猜你喜欢

转载自blog.csdn.net/qq_32110859/article/details/84943567
tf
今日推荐