首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >CoreML输出类型

CoreML输出类型
EN

Stack Overflow用户
提问于 2017-09-07 10:15:52
回答 1查看 1.7K关注 0票数 2

是否可以更改CoreML模型的输出类型?我的模型以图像作为输入,将图像作为输出,但当我将Keras模型转换为mlmodel时,我得到:

代码语言:javascript
复制
coreml_model = coremltools.converters.keras.convert('/Users/user/Desktop/model.h5',input_names='input_img',image_input_names='input_img',output_names='image')
coreml_model.save('/Users/user/Desktop/model.mlmodel')

输出是MultiArray类型,但我想要图像类型,如何更改它?

EN

回答 1

Stack Overflow用户

发布于 2019-04-25 13:35:38

是的有可能。但是,之后您需要手动更改转换后的Core模型,因为coremltools在2.1版中没有为此提供任何转换选项。

简而言之,下面是将模型转换为Core格式后需要做的事情。这些应该在Python端通过调用coremltools的低级API来完成。

  1. 使用CoreML将转换后的coremltools模型加载到Python中
  2. 在链的末尾添加一个新的ActivationLinear层,就在原始模型的输出层之后。您还可以使用该层执行线性转换,例如从0..1到0..255之间的转换范围和/或添加偏差。
  3. 通过设置新层的type属性,将其配置为图像输出层。
  4. 将更新的模型保存到新的Core模型中。
  5. 加载它,并使用培训数据集中的一个示例进行测试,作为一个正常检查。

要使步骤5工作,您需要在Mac上运行Python脚本,因为它使用本机Core库来运行模型。

有关详细信息,您可以阅读我在让核心ML生成图像作为输出上的文章。

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

https://stackoverflow.com/questions/46093797

复制
相关文章

相似问题

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