在创建Google AI平台版本期间,Mask RCNN COCO训练的体重失败。错误:“输出的外部尺寸必须未知”

时间:2019-12-10 07:58:17

标签: tensorflow keras google-cloud-platform deep-learning neural-network

在使用github代码here将其传输到保存的模型后,我尝试在Google Cloud平台上部署经过Mask-RCNN训练的COCO模型权重(链接mrcnn_serving_ready)。但是,将已保存的模型上传到Google存储桶并在Google AI平台中创建版本后,出现以下错误:

Create Version failed. Model validation failed: Outer dimension for outputs must be unknown, outer dimension of 'mrcnn_detection/Reshape_1:0' is 1 

我尝试将第一个输出张量mrcnn_detection/Reshape_1:0(?, 100, 6)重塑为(1, 100, 6)。但是,无法成功。

代码和配置部件

在Mask-RCNN中加载可可粉:

model = MaskRCNN(mode="inference", model_dir=MODEL_DIR, config=config)
model.load_weights(PATH_TO_MASK_RCNN_COCO_h5, by_name=True)

model.keras_model.inputs结果:

[<tf.Tensor 'input_image:0' shape=(?, ?, ?, 3) dtype=float32>,
 <tf.Tensor 'input_image_meta:0' shape=(?, 14) dtype=float32>,
 <tf.Tensor 'input_anchors:0' shape=(?, ?, 4) dtype=float32>]

model.keras_model.outputs结果:

[<tf.Tensor 'mrcnn_detection/Reshape_1:0' shape=(1, 100, 6) dtype=float32>,
 <tf.Tensor 'mrcnn_class/Reshape_1:0' shape=(?, 1000, 2) dtype=float32>,
 <tf.Tensor 'mrcnn_bbox/Reshape:0' shape=(?, 1000, 2, 4) dtype=float32>,
 <tf.Tensor 'mrcnn_mask/Reshape_1:0' shape=(?, 100, 28, 28, 2) dtype=float32>,
 <tf.Tensor 'ROI/packed_2:0' shape=(1, ?, 4) dtype=float32>,
 <tf.Tensor 'rpn_class/concat:0' shape=(?, ?, 2) dtype=float32>,
 <tf.Tensor 'rpn_bbox/concat:0' shape=(?, ?, 4) dtype=float32>]

使用mrcnn_serving_ready保存的模型的结果是saved_model.pb,其中有一个空的variables文件夹和一个frozen_graph.pb。但是,我仅上传了saved_model.pb

Google AI平台版本创建设置

Python version: 3.5
TensorFlow: 1.14.0
Runtime version: 1.14
Machine type: Single core CPU

对于解决此问题的任何想法或建议,我们将不胜感激。

0 个答案:

没有答案