首页 文章

使用预先训练的重新发送模型在张量流中进行对象检测时出错

提问于
浏览
0

我使用tensorflow服务模块从预先训练的resnet50模型创建了一个已保存的模型 . 但是当我尝试运行模型服务器时,我收到此错误:

2018-03-23 13:36:37.130839:E external / org_tensorflow / tensorflow / core / common_runtime / executor.cc:651] Executor无法创建内核 . 参数无效:NodeDef提到attr'dilations'不在Op输出中:T; attr = T:type,allowed = [DT_HALF,DT_FLOAT]; ATTR =步幅:列表(INT); ATTR = use_cudnn_on_gpu:布尔,默认= TRUE; attr = padding:string,allowed = [“SAME”,“VALID”]; attr = data_format:string,default =“NHWC”,allowed = [“NHWC”,“NCHW”]>; NodeDef:FirstStageFeatureExtractor / resnet_v1_50 / resnet_v1_50 / conv1 / Conv2D = Conv2D [T = DT_FLOAT,data_format =“NHWC”,dilations = [1,1,1,1],padding =“VALID”,strides = [1,2,2] ,1],use_cudnn_on_gpu = true,_device =“/ job:localhost / replica:0 / task:0 / device:CPU:0”](FirstStageFeatureExtractor / resnet_v1_50 / resnet_v1_50 / Pad,FirstStageFeatureExtractor / resnet_v1_50 / conv1 / weights / read) . (检查GraphDef解释二进制文件是否与生成GraphDef的二进制文件保持同步 . ) . [[Node:FirstStageFeatureExtractor / resnet_v1_50 / resnet_v1_50 / conv1 / Conv2D = Conv2D [T = DT_FLOAT,data_format =“NHWC”,dilations = [1,1,1,1],padding =“VALID”,strides = [1,2] ,2,1],use_cudnn_on_gpu = true,_device =“/ job:localhost / replica:0 / task:0 / device:CPU:0”](FirstStageFeatureExtractor / resnet_v1_50 / resnet_v1_50 / Pad,FirstStageFeatureExtractor / resnet_v1_50 / conv1 / weights /读)]]

1 回答

  • 0

    好吧,它告诉你什么是错的,尽管在所有细节下可能很难看到:

    "Check whether your GraphDef-interpreting binary is up to date with your GraphDef-generating binary"

    您似乎使用了最新版本的TensorFlow,它为Conv2D添加了“dilations”参数 .

    tensorflow_model_server中的TensorFlow版本比这更老,因此不知道如何实例化该运算符 .

    尝试在较旧的TensorFlow版本上重建模型,或尝试使用较新的TensorFlow版本创建tensorflow_model_server .

    在当前的TensorFlow服务池中,可以轻松完成

    bazel build --action_env TF_REVISION="{git hash}" //tensorflow_serving/model_servers:tensorflow_model_server
    

    有关详细信息,请参阅https://github.com/tensorflow/serving/commit/f9e602c753ef82ff96b28429dd07e900f10eb007

相关问题