将模型从 tensorflow 转换为 Coreml (4.0) 时出现实例规范化错误
Instance Normalization Error while converting model from tensorflow to Coreml (4.0)
我尝试将我的模型从 Tensorflow 转换为 Coreml,但出现以下错误。不是可以将实例规范化层转换为 CoreML 吗?有什么解决方法可以克服吗?
ValueError Traceback(最后一次调用)
在 ()
6个
7 模型 = ct.convert(
----> 8 tf_keras_model )
6帧
/usr/local/lib/python3.6/dist-packages/coremltools/converters/mil/mil/block.py in remove_ops(self, existing_ops)
700 + “被 ops {} 使用”
701)
--> 702 raise ValueError(msg.format(op.name, i, v.name, child_op_names))
703 # 检查输出 Var 不是块的输出
704 如果 v 在 self._outputs:
ValueError:无法删除 op 'Generator/StatefulPartitionedCall/StatefulPartitionedCall/encoder_down_resblock_0/instance_norm_0/Shape',id 为 0 的活动输出:'Generator/StatefulPartitionedCall/StatefulPartitionedCall/encoder_down_resblock_0/instance_norm_0/Shape' 被 ops ['Generator/StatefulPartitionedCall/StatefulPartitionedCall/encoder_down_resblock_0/instance_norm_0/strided_slice'] 使用
搜索堆栈溢出
我改用 keras-contrib,它工作正常。请参阅下面的问题及其解决方案。它仍然开放 tensorflow_addons。
我尝试将我的模型从 Tensorflow 转换为 Coreml,但出现以下错误。不是可以将实例规范化层转换为 CoreML 吗?有什么解决方法可以克服吗?
ValueError Traceback(最后一次调用) 在 () 6个 7 模型 = ct.convert( ----> 8 tf_keras_model )
6帧 /usr/local/lib/python3.6/dist-packages/coremltools/converters/mil/mil/block.py in remove_ops(self, existing_ops) 700 + “被 ops {} 使用” 701) --> 702 raise ValueError(msg.format(op.name, i, v.name, child_op_names)) 703 # 检查输出 Var 不是块的输出 704 如果 v 在 self._outputs:
ValueError:无法删除 op 'Generator/StatefulPartitionedCall/StatefulPartitionedCall/encoder_down_resblock_0/instance_norm_0/Shape',id 为 0 的活动输出:'Generator/StatefulPartitionedCall/StatefulPartitionedCall/encoder_down_resblock_0/instance_norm_0/Shape' 被 ops ['Generator/StatefulPartitionedCall/StatefulPartitionedCall/encoder_down_resblock_0/instance_norm_0/strided_slice'] 使用 搜索堆栈溢出
我改用 keras-contrib,它工作正常。请参阅下面的问题及其解决方案。它仍然开放 tensorflow_addons。