将MatConvNet模型转换为pytorch模型(pytorch-mcn)

Song • 82 次浏览 • 0 个回复 • 2018年02月09日

pytorch-MCN

pytorch-MCN是一个将训练过的MatConvNet模型导入到Pytorch的工具(如果您希望以其他方式去尝试mcnPyTorch )。

Demo

要运行importer,请将路径设置为MatConvNet模型,并在importer.sh脚本中提供一个输出目录(导入的PyTorch模型将存储在该目录中)。脚本中有几个例子可以被注释/取消注释来运行Demo。然后运行bash importer.sh

导入的模型

许多标准模型已经被导入和验证,可以在这里找到。

验证

验证导入的模型需要MATLABMatConvNet的副本(具体的依赖关系在compare/startup.m中给出)。过程如下:

  • 1、运行compare/featureDumper.m脚本以将原始MatConvNet模型中的中间要素转储到磁盘。
  • 2、在debug_mode中将模型导入PyTorch(可以在importer.sh中设置一个选项。这将在PyTorch模型定义中生成额外的源代码,用于存储网络计算的每个中间张量。
  • 3、运行compare/compare_models.py脚本,它将执行张量之间的数值比较。

笔记

框架之间的模型转换可能比较具有挑战性的,因为每个框架的层和模块没有精确的对应关系。因此,转换过程中经常会有一些工作,特别是对于非标准体系结构。

这个工具需要Python 3.5PyTorch 0.3.0(默认情况下ipython会被使用,但是你可以通过改变一个配置变量来切换到标准的python importer.sh)。MatConvNet模型最好为的dagnn格式(如果需要,ensure_dags.m脚本将模型从SimpleNN转换为这种格式)。

理想情况下,未来模型转换过程将通过onnx运行,但目前对于所需的功能缺少相当多的支持。因此,计划在可能的情况下更新转换器。

项目地址

albanie/pytorch-mcn


原创文章,转载请注明 :将MatConvNet模型转换为pytorch模型(pytorch-mcn) - pytorch中文网
原文出处: https://ptorch.com/news/127.html
问题交流群 :168117787
提交评论
要回复文章请先登录注册
用户评论
  • 没有评论
Pytorch是什么?关于Pytorch! 使用pytorchviz进行pytorch执行过程的可视化