将chainer模型转换为onnx

onnx-chainer的Python项目详细描述


onnx chainer

PyPIGitHub licenseBuild Statuscodecov

这是chainer支持onnx的附加包。

测试环境

  • python 3.5.5、3.6.7、3.7.2
  • OnNX 1.4.1、1.5.0版
    • 操作集版本7、8、9、10
  • Chainer稳定,预览
  • onnx运行时0.4.0

(您仍然可以指定所有操作集版本<;=9,但请注意,操作集版本<;=6未经测试)

安装

在ubuntu 14.04/16.04

pip install onnx-chainer

运行测试

一。安装测试模块

$ pip install onnx-chainer[test-cpu]

或者,在GPU环境中

$ pip install cupy  # or cupy-cudaXX is useful
$ pip install onnx-chainer[test-gpu]

2.运行测试

$ pytest -m "not gpu"

或者,在GPU环境中

$ pytest

快速启动

首先,安装ChainerCV以获得预先培训的模型。

importnumpyasnpimportchainerimportchainercv.linksasCimportonnx_chainermodel=C.VGG16(pretrained_model='imagenet')# Pseudo inputx=np.zeros((1,3,224,224),dtype=np.float32)onnx_chainer.export(model,x,filename='vgg16.onnx')

支持的功能

目前支持82个chainer函数以onnx格式导出。

激活

  • clippedrelu
  • 洗脱液
  • 硬乙状结肠
  • 漏洞百出
  • logsoftmax
  • 预备功能
  • relu
  • 乙状结肠
  • softmax
  • SoftPlus

数组

  • 铸件
  • concat
  • 复制
  • 深度2空间
  • 数据包
  • 展开尺寸
  • 获取项目
  • hstack
  • 垫{a6}2
  • 重复
  • 重塑
  • 调整图像大小
  • 分开
  • 形状
  • space2深度
  • 分裂轴
  • 挤压
  • 堆栈
  • 棉签
  • 平铺
  • 转置
  • 垂直缝
  • 其中

连接

  • 卷积2d函数
  • 卷积
  • 反褶积2d函数
  • 反褶积nd
  • 嵌入式函数
  • 线性函数

损失

  • SoftMaxCross熵

数学

  • 绝对值
  • 添加
  • 添加常量
  • argmax
  • argmin
  • 广播到
  • 剪辑
  • div
  • divfrom常量
  • exp
  • 身份
  • 线性字体
  • 对数经验
  • matmul
  • 最大值
  • 最大
  • 平均值
  • 最小值
  • 最小值
  • mul
  • 多常数
  • powvarconst
  • 生产
  • rsqrtgpu
  • sqrt
  • 正方形
  • sub
  • 亚常量
  • 总和

噪音

  • 辍学

标准化

  • 批量规范化
  • fixedbatchnormalization
  • 本地响应放大
  • normalizel2

合并

  • 平均池2d
  • 平均池接地
  • MaxPooling2d
  • 最大池接地
  • 滚动池2d
  • 未冷却2d

贡献

欢迎对Onnx Chainer的任何贡献!


1:模式应该是“常量”、“反射”或“边缘”
2:onnx不支持pad操作的多个常量值
3:当前onnx不支持embeddid
4:在测试模式下,导出的文件中不包括所有的辍学层
5:chainer不支持shape函数

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java搜索具有外键的JPA实体的约定是什么?   java事务没有使用事务和嵌套方法的2个实例回滚   SpringBootJavaMessageFormat。使用umlauts格式(ä/ö/ü)   java如何通过字符串在sqlite中搜索列   JAVAlang.ClassNotFoundException:org。冬眠Hibernate4的例外情况   java消息正文在Gmail中被弄乱了   java Apache Ignite未使用空值更新缓存   Java正则表达式未捕获组   java onBackPressed();除非我叫super否则不行。onBackPressed();两次密码   java CustomAlertDialog在删除数据库记录后未完成其进程   C++中的迭代器(Stl)与java,是否存在概念上的区别?   Java在不知道字符编码的情况下将字节[]转换为字符串   来自本地WSDL文件的java Web服务客户端   java工具可用于在一个位置聚合所有项目相关信息   java在Netbeans中的maven项目中设置依赖项