MindSpore算子支持类

Q:在使用Conv2D进行卷积定义的时候使用到了group的参数,group的值不是只需要保证可以被输入输出的维度整除即可了吗?group参数的传递方式是怎样的呢?

A:Conv2D算子是有这个约束条件的:当group大于1 时,其值必须要与输入输出的通道数相等。不要使用ops.Conv2D,这个算子目前不支持group>1。目前MindSpore只有nn.Conv2D接口支持组卷积,但是有group要与输入输出的通道数相等的约束。 Conv2D算子的

def __init__(self,

out_channel,

kernel_size,

mode=1,

pad_mode="valid",

pad=0,

stride=1,

dilation=1,

group=1,

data_format="NCHW"):

函数中带有group参数,这个参数默认就会被传到C++层。

QConvolution Layers有没有提供3D卷积?

A:目前MindSpore在Ascend上有支持3D卷积的计划。可以关注官网的支持列表,等到算子支持后会在表中展示。

QMindSpore支持矩阵转置吗?

A:支持,请参考mindspore.ops.Transpose的算子教程

Q:请问MindSpore能算给定任意一个tensor的方差吗?

A: MindSpore目前暂无可以直接求出tensor方差的算子或接口。不过MindSpore有足够多的小算子可以支持用户实现这样的操作,可以参考class Moments(Cell)来实现。

Q:使用MindSpore-1.0.1版本在图数据下沉模式加载数据异常,是什么原因?

A:应该是construct中直接使用了带有axis属性的算子,比如P.Concat(axis=1)((x1, x2))这种,建议把算子在__init__中初始化:

from mindspore import nn

from mindspore.ops import operations as P

class Net(nn.Cell):

def __init__(self):

super(Net, self).__init__()

self.concat = P.Concat(axis=1)

def construct(self, x, y):

out = self.concat((x, y))

return out

Qnn.Embedding层与PyTorch相比缺少了Padding操作,有其余的算子可以实现吗?

A:在PyTorch中padding_idx的作用是将embedding矩阵中padding_idx位置的词向量置为0,并且反向传播时不会更新padding_idx位置的词向量。在MindSpore中,可以手动将embedding的padding_idx位置对应的权重初始化为0,并且在训练时,通过mask的操作,过滤掉padding_idx位置对应的Loss。

QOperationsTile算子执行到__infer__时,value值为None,丢失了数值是怎么回事?

A:Tile算子的multiples input必须是一个常量(该值不能直接或间接来自于图的输入)。否则,构图的时候,会拿到一个None的数据,因为图的输入是在图执行的时候才传下去的,构图的时候拿不到图的输入数据。 相关的资料可以看静态图语法支持

Q:官网的LSTM示例在Ascend上跑不通。

A:目前LSTM只支持在GPU和CPU上运行,暂不支持硬件环境,可以通过MindSpore算子支持列表查看算子支持情况。

Qconv2d设置为(3,10),Tensor[2,2,10,10],在ModelArts上利用Ascend跑,报错:FM_W+pad_left+pad_right-KW>=strideWCPU下不报错。

A:这是TBE这个算子的限制,x的width必须大于kernel的width。CPU的这个算子没有这个限制,所以不报错。

 

MindSpore算子支持类的更多相关文章

  1. MindSpore特性支持类

    MindSpore特性支持类 Q:请问MindSpore支持梯度截断吗? A:支持,可以参考梯度截断的定义和使用. Q:如何在训练神经网络过程中对计算损失的超参数进行改变? A:暂时还未有这样的功能. ...

  2. MindSpore后端运行类

    MindSpore后端运行类 Q:如何在训练过程中监控loss在最低的时候并保存训练参数? A:可以自定义一个Callback.参考ModelCheckpoint的写法,此外再增加判断loss的逻辑: ...

  3. MindSpore平台系统类

    MindSpore平台系统类 Q:MindSpore只能在华为自己的NPU上跑么? A: MindSpore同时支持华为自己的Ascend NPU.GPU与CPU,是支持异构算力的. Q:MindSp ...

  4. C++builder XE10 终于支持类内变量初始化了

    Win32终于支持类内变量初始化了,C++11 用bcc32C编译器  llvm CLang.还支持Unicode 中文汉字 变量名. 用经典的bcc32编译还是不支持! class TPerson ...

  5. WCF调试异常信息:ServiceHost 仅支持类服务类型

    "/CommonHelpServices"应用程序中的server错误. ServiceHost 仅支持类服务类型. 说明: 运行当前 Web 请求期间,出现未经处理的异常. 请检 ...

  6. JAVA导入支持类

    导入支持类(可以是JDK基础类或者自己编写的类),可以供本类调用方法和属性. java中import用法: 1.单类型导入(single-type-import),例如import java.io.F ...

  7. LindAgile~缓存拦截器支持类的虚方法了

    写它的原因 之前写过一个缓存拦截器,主要在方法上添加CachingAspect特性之后,它的返回值就可以被缓存下来,下次访问时直接从缓存中返回结果,而它有一个前提,就是你的方法需要是一个接口方法,缓存 ...

  8. ledisdb:支持类redis接口的嵌入式nosql

    ledisdb现在可以支持嵌入式使用.你可以将其作为一个独立的lib(类似leveldb)直接嵌入到你自己的应用中去,而无需在启动单独的服务. ledisdb提供的API仍然类似redis接口.首先, ...

  9. weex不支持类的动态追加

    做一个weex项目时遇到需要根据状态动态改变样式的功能,本来想通过判断属性追加类的方式实现,如下: :class="['long-news',{'bold-txt':noRead}]&quo ...

随机推荐

  1. 深入浅出:MySQL的左连接、右连接、等值连接

    深入浅出:MySQL的左连接.右连接.等值连接 三种连接的语法 为便于更多的技友快速读懂.理解,我们只讨论2张表对象进行连接操作的情况,大于2张表对象进行的连接操作原理也是一样的. 1.左连接(LEF ...

  2. fullpage.js用法总结

    兼容性: 支持 IE8+ 及其他现代浏览器. 主要功能: 1.支持鼠标滚动: 2.支持前进后退键盘控制; 3.多个回调函数; 4.支持手机.移动设备; 5.支持窗口缩放自动调整; 6.可设置滚动宽度. ...

  3. mysql 密码忘记解决办法

    bin>net stop mysql bin>mysqld --skip-grant-tables bin>mysql mysql>use mysql mysql>upd ...

  4. DexHunter的原理分析和使用说明(二)

    本文博客地址:http://blog.csdn.net/qq1084283172/article/details/53715325 前面的博文<Android通用脱壳工具DexHunter的原理 ...

  5. Msfvenonm生成一个后门木马

    在前一篇文章中我讲了什么是Meterpreter,并且讲解了Meterpreter的用法.传送门-->Metasploit之Meterpreter 今天我要讲的是我们用Msfvenom制作一个木 ...

  6. [CTF]盲文对照表

    [CTF]盲文对照表 摘自:https://wenku.baidu.com/view/28b04fd380eb6294dd886ca7.html 学点盲文 盲文又称点字,国际通用的点字由6个凸起的圆点 ...

  7. Nmap浅析(1)——主机发现

    主机发现 ​ 当网络不通时,Ping一下网关来检查网关是否正常.当测试的目标是一个网络时,其中在线的主机才是目标,那么就需要技术来找出这些目标. ​ 技术的方法大都与TCP/IP协议族中的协议相对应. ...

  8. 3D高清电商购物小图标图片_在线商城三维icon图标素材大全

    3D高清电商购物小图标图片_在线商城三维icon图标素材大全

  9. PHPcms v9.6.0 文件上传漏洞

    title: PHPcms v9.6.0 文件上传漏洞 date: 2021-4-5 tags: 渗透测试,CVE漏洞复现,文件上传 categories: 渗透测试 CVE漏洞复现 文件上传 PHP ...

  10. ES6学习-2 let

    ES6 新增了let命令,用来声明变量.它的用法类似于var,但是let所声明的变量,只在let命令所在的代码块内有效. 1 { 2 let a = 10; 3 var b = 1; 4 } 5 co ...