炼数成金 门户 商业智能 深度学习 查看内容

微软开源的深度学习模型转换工具MMdnn

2018-10-29 11:31| 发布者: 炼数成金_小数| 查看: 15095| 评论: 0|来自: 极市平台

摘要: 在工业街和学术界中,开发者或者研究人员可以选择多种深度学习框架来构建模型,每种框架有自己特有的网络结构定义以及模型保存格式,这种框架之间的鸿沟阻碍了不同框架模型之间的操作。MMdnn是微软开源的用于不同深 ...

工具 模型 框架 深度学习 Tensorflow 微软

MMdnn简介
在工业街和学术界中,开发者或者研究人员可以选择多种深度学习框架来构建模型,每种框架有自己特有的网络结构定义以及模型保存格式,这种框架之间的鸿沟阻碍了不同框架模型之间的操作。MMdnn是微软开源的用于不同深度学习框架(Caffe, Keras, MXNet, Tensorflow, CNTK, PyTorch Onnx和CoreML)的模型之间互相转换的工具,通过模型的中间表示来完成不同框架模型之间的转换。其代码被托管在微软的Github中:https://github.com/Microsoft/MMdnn

支持的框架
目前MMdnn支持的深度学习框架有:
Caffe
Microsoft Cognitive Toolkit (CNTK)
CoreML
Keras
MXNet
ONNX 
PyTorch
TensorFlow (实验性的) 
DarkNet (只在源码中有, 实验性的)

已测试的模型转换
MMdnn在一些ImageNet模型上测试的结果:


MMdnn的安装
MMdnn可以使用pip直接安装:
pip install mmdnn

使用下面的方法可以安装版本的MMdnn:
pip install -U git+https://github.com/Microsoft/MMdnn.git@master

用MMdnn进行模型的转换
MMdnn可以使用pip直接安装:
模型的转换只需要一行命令,例如下面的命令会下载TensorFlow的ResNet V2 152模型,并使用MMdnn将其转换为PyTorch模型:
mmdownload -f tensorflow -n resnet_v2_152 -o ./
mmconvert -sf tensorflow -in imagenet_resnet_v2_152.ckpt.meta -iw imagenet_resnet_v2_152.ckpt --dstNodeName MMdnn_Output -df pytorch -om tf_resnet_to_pth.pth

用MMdnn进行模型可视化
下载预训练的模型:
mmdownload -f keras -n inception_v3

将预训练模型转换为中间表示:
mmtoir -f keras -w imagenet_inception_v3.h5 -o keras_inception_v3

打开MMdnn模型可视化工具http://mmdnn.eastasia.cloudapp.azure.com:8080/并选择文件keras_inception_v3.json:


官方示例教程
Keras "inception V3"转换为CNTK模型:https://github.com/Microsoft/MMdnn/blob/master/docs/keras2cntk.md
TensorFlow slim模型ResNet V2 152转换为PyTorch模型:https://github.com/Microsoft/MMdnn/blob/master/docs/tf2pytorch.md
Mxnet模型LResNet50E-IR转换为TensorFlow模型:https://github.com/Microsoft/MMdnn/issues/85

声明:文章收集于网络,如有侵权,请联系小编及时处理,谢谢!

欢迎加入本站公开兴趣群
商业智能与数据分析群
兴趣范围包括各种让数据产生价值的办法,实际应用案例分享与讨论,分析工具,ETL工具,数据仓库,数据挖掘工具,报表系统等全方位知识
QQ群:81035754

鲜花

握手

雷人

路过

鸡蛋

相关阅读

最新评论

热门频道

  • 大数据
  • 商业智能
  • 量化投资
  • 科学探索
  • 创业

即将开课

 

GMT+8, 2018-11-21 00:32 , Processed in 0.220542 second(s), 25 queries .