0

我建立了一个编码器/解码器模型(在 PyTorch 中),保存为两个单独的mlmodel对象。coremltools.models.pipeline为了提高效率,我想把这些放在一起。将两个输入模型保存到磁盘后,这就是我用来构建管道的方法:

from coremltools.models.pipeline import *
from coremltools.models import datatypes

input_features = [('distorted_input', datatypes.Array(28*28))]
output_features = ['z_distribution', 'rectified_input']

pipeline = Pipeline(input_features, output_features)
pipeline.add_model(enc_mlmodel)
pipeline.add_model(dec_mlmodel)

pipeline_model = coremltools.models.MLModel(pipeline.spec)
pipeline_model.save('inputFixerPipeline.mlmodel')

管道的创建运行良好,但保存的模型无法连接输入——即,查看 Netron 中的模型,我看到distorted_input节点只是自行挂起。管道的其余部分似乎是正确的。

有什么想法吗?

4

1 回答 1

0

image_input_names回答我自己的问题:我对管道中的第二个模型有争论。事实上,它不需要图像,而只是一个张量,所以我想它以某种方式混淆了管道构建器。删除image_input_names条目立即更正管道模型。

希望这可以帮助某人避免将来的某个时间。

于 2019-02-20T00:10:19.873 回答