Mindspore模型迁移指北

【笔者按】 笔者最近在进行讲Mask_RCNN网络迁移到Mindspore框架的工作。本文会按照个人进度迭代更新,记录所学所思。

1. Mindspore算子

Mindspore支持的算子
Pytorch和Mindspore典型接口和算子的区别

1.1 Mindspore.nn算子

mindspore.nn
神经网络Cell。用于构建神经网络中的预定义构建块或计算单元。

1.2 Mindspore.ops算子

mindspore.ops
可用于Cell的构造函数的算子。

import mindspore.ops as ops

1.3 Mindspore隐式类型转换算子

mindspore隐式类型转换算子
【转换规则】

  • 标量与Tensor运算:运算时,将标量自动转为Tensor,数据类型和参与运算的Tensor数据类型保持一致;当Tensor是bool数据类型,标量是int或float时,将标量和Tensor都转为数据类型为int32或float32的Tensor;当Tensor是int或者uint数据类型,标量是float时,将标量和Tensor都转为数据类型为float32的Tensor。
  • 不同数据类型Tensor运算:数据类型优先级排序为bool < uint8 < int8 < int16 < int32 < int64 < float16 < float32 <float64,运算时,先确定参与运算的Tensor中优先级相对最高的数据类型,然后将低优先级数据类型Tensor转换为相对最高优先级数据类型;而当int8和uint8数据类型的Tensor进行运算时,将其都转为int16的Tensor。
  • 不支持对Parameter进行数据类型转换:如果按照转换规则推导,需要对网络中定义的Parameter进行数据类型转换时,会抛出RuntimeError异常。

1.4 Mindspore分布式算子

mindspore分布式算子

2. Mindspore与Tensorflow/Pytorch的API映射关系

Mindspore与Tensorflow的API映射
Mindspore与Pytorch的API映射

2.1 Mindspor与Pytorch常用映射

torch.unique <–> mindspore.ops.Unique
torch.cat <–> mindspore.ops.Concat
<

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值