如何将 CoreML 模型转换为 TensorFlow 模型?

Posted

技术标签:

【中文标题】如何将 CoreML 模型转换为 TensorFlow 模型?【英文标题】:How to convert a CoreML Model to a TensorFlow Model? 【发布时间】:2020-08-25 23:20:43 【问题描述】:

我了解到可以将 TensorFlow 模型 (.pb) 文件转换为 CoreML (.mlmodel) 以在 ios 平台上运行它。但是我有一些想在 tensorflow 上运行的 .mlmodel 文件。所以我想知道是否有任何方法可以将它们转换为 .pb 文件,或者我可以在 Tensorflow 中使用它们的任何其他方式。

【问题讨论】:

【参考方案1】:

好消息:是的,你可以做到。

坏消息:您必须手动完成。没有工具可以自动执行此操作。

最简单的解决方案是在 TensorFlow 中定义模型,然后将权重从 Core ML 模型复制到 TF 模型中。

【讨论】:

知道如何获得 Core ML 模型的权重吗? 您在 Python 脚本中使用 coremltools 加载模型,然后手动遍历所有层以获得它们的权重。 您能帮帮我吗,我不知道如何使用 coremltools 检查模型,我已经搜索了互联网但一无所获。 在 *** 上解释这一点会很费力,但是我的博客上有很多博客文章解释了如何使用 coremltools 挖掘模型,另外我还写了一本书更多细节。您可以在我的个人资料中找到这两个链接。

以上是关于如何将 CoreML 模型转换为 TensorFlow 模型?的主要内容,如果未能解决你的问题,请参考以下文章

如何将使用 Mask Rcnn 在自定义对象检测上创建蒙版图像的 Keras 模型转换为 CoreML 模型以在 iOS 应用程序中使用?

将 Caffe 模型转换为 CoreML

尝试使用 coremltools 4.1 将模型转换为 coreml 不工作

将模型从 tensorflow 转换为 Coreml (4.0) 时出现实例归一化错误

将 keras 模型转换为 coreml 时出错(“InputLayer”对象不可迭代)

将训练好的 Keras 图像分类模型转换为 coreml 并集成到 iOS11