首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >有没有一种不用安装整个make_tensor_proto包就可以使用TensorFlow的方法?

问有没有一种不用安装整个make_tensor_proto包就可以使用TensorFlow的方法?
EN

Stack Overflow用户
提问于 2022-07-06 11:36:39
回答 1查看 33关注 0票数 1

我试图提供一个TensorFlow模型(使用TensorFlow服务)。看来,为了使用TensorFlow服务API并进行预测,我需要使用原件方法。

对于我的Docker映像,我只为这个方法安装了1.3GB的TensorFlow包。显然,这并不理想。因此,我想知道是否可以从不同的(更精简的)包导入make_tensor_proto,或者使用其他方法。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-07-21 08:42:54

您可以按照下面链接中提到的步骤进行操作。

https://www.mux.com/blog/tuning-performance-of-tensorflow-serving-pipeline

简化步骤:

  1. 把张量原型复制到本地机器上。
  2. 将原型编译到python模块,并将其放在项目目录下。
  3. 用原仿生函数代替tensorflow库。

从这一行代码

代码语言:javascript
复制
import tensorflow as tf  
...
tensor = tf.contrib.util.make_tensor_proto(features)  
request.inputs['inputs'].CopyFrom(tensor)

到这一行代码

代码语言:javascript
复制
from protos.tensorflow.core.framework import tensor_pb2  
from protos.tensorflow.core.framework import tensor_shape_pb2  
from protos.tensorflow.core.framework import types_pb2  
...
# ensure NHWC shape and build tensor proto
tensor_shape = [1]+list(img.shape)  
dims = [tensor_shape_pb2.TensorShapeProto.Dim(size=dim) for dim in tensor_shape]  
tensor_shape = tensor_shape_pb2.TensorShapeProto(dim=dims)  
tensor = tensor_pb2.TensorProto(  
              dtype=types_pb2.DT_FLOAT,
              tensor_shape=tensor_shape,
              float_val=list(img.reshape(-1)))
request.inputs['inputs'].CopyFrom(tensor) 

您可以将这个编译好的pythonic函数复制到您的项目工作目录中,并复制到应该工作的docker中。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72882935

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档