自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(21)
  • 收藏
  • 关注

转载 RWKV解读:在Transformer的时代的新RNN

最开始自然语言使用RNN来建模,它是一种基于循环层的特征提取网络结构,循环层可以将前一个时间步的隐藏状态传递到下一个时间步,从而实现对自然语言的建模。RNN由于存在循环结构(如下图所示),每个时间步的计算都要依赖上一个时间步的隐藏状态,导致计算复杂度较高,而且容易出现梯度消失或梯度爆炸的问题,导致训练效率低下,因此RNN网络扩展性不好。RNN结构Transformer在2017年由谷歌提出,是一种基于自注意力机制的特征提取网络结构,主要用于自然语言处理领域。

2023-09-15 14:38:06 191

原创 MindSpore报错TypeError: Do not support to get attribute from object Namespace*** 以及解决方案

类型中获取参数属性,从下面调用栈可以知道,报错的关键点在于self.options.img_res。类型,在图模式下不支持从<class, 'argparse.Namespace'>硬件环境(Ascend/GPU/CPU): Ascend。进行使用初始化的参数,而不是直接在construct。建议修改方式:从参数类中获取的参数在init。函数中进行初始化然后再在construct。是参数类的对象,其在construct。动态图可以正常运行,静态图下报错。当前报错是TypeError。

2023-08-18 11:43:12 176 1

原创 MindSpore | Unsupported expression ‘Starred‘

通过报错我们可以知道当前静态图不支持'Starred'(中文:星号的意思)所以在construct函数里面出现了星号,根据报错调用栈我们可以知道报错位置出现了*batch_dim。硬件环境(Ascend/GPU/CPU): Ascend。我们需要将星号展开,修改如下。Python版本:3.7。操作系统平台:Linux。静态图静态shape报错。

2023-08-18 11:42:24 106 1

原创 MindSpore | IndexError: (‘Not supported index data type, got ‘, None, ‘ type is ‘, )

根据报错我们可以知道输入的数据类型不对,从本文的标题可以知道我们得到了一个','(逗号),类型是它。这里指明了报错的大概位置是我们可以去输入里面去找问题。我们仔细排查以上代码能够发现ys_pad代码的错误,多了一个逗号。硬件环境(Ascend/GPU/CPU): Ascend。Python版本:3.7。操作系统平台:Linux。

2023-08-18 11:41:27 101 1

原创 MindSpore应用系列:树莓派上运行YOLOv5进行实时目标检测(三)

每一层都有3个anchor,每一anchor对应的(5+分类数)个通道,假设分类数为2,那一共就是7个通道了,这7个通道分别是xywh(4个通道),置信度(1个通道),分类(此处2分类,就是2个通道)物体边框的4个值,x,y,w,h,不过这个x,y并不直接是物体框中心点的坐标,而是它相对于自身所处的格子左上角的偏移,然后再把这个中心点的相对值作用到原图的尺度得到最终的坐标。然后就是宽高,宽高也不是直接预测出物体边框的宽高,而是基于anchor的,预测出来的值会乘上anchor的宽高得出最终的宽高。

2023-08-18 11:40:27 510 1

原创 MindSpore Dump功能使用经验

在使用功能,发现在指定目录下,并未生成相应的数据文件。

2023-08-18 11:39:51 66 1

原创 特性分析helps u further~|昇思MindSpore特性FAQ

对于模型文件本质保存的就是参数和对应的值,可以用其他框架的API将参数读取出来之后,拿到参数的键值对,然后再加载到MindSpore中使用。A6: MindSpore的ckpt和TensorFlow的ckpt格式是不通用的,虽然都是使用Protobuf协议,但是proto的定义是不同的。图形完备的IR: 更多的转换Python灵活语法,包括递归等。要注意类型间的区别。A4: 可以的,MindSpore面向Ascend/GPU/CPU提供统一的API,在算子支持的前提下,网络脚本可以不做修改直接跨平台运行。

2023-08-18 11:39:16 170 1

原创 推理经验各种足!|昇思MindSpore推理FAQ

A5: 在推理代码中通过Ascend310DeviceInfo中的SetPrecisionMode接口进行设置,可选:force_fp16、allow_fp32_to_fp16、must_keep_origin_dtype,allow_mix_precision。默认值为force_fp16,指的就是高性能模式。高精度模式可设置为allow_fp32_to_fp16或must_keep_origin_dtype。A7: 通过ASCEND_GLOBAL_LOG_LEVEL来设置,0:DEBUG级别;

2023-08-18 11:38:35 84 1

原创 分布式并行快问快答来咯!|昇思MindSpore分布式并行FAQ

解决方法:手动kill训练进程,根据报错日志,设置正确的卡号后,重启训练任务。A11: OpenMPI启动时,当前版本的hccl下,创建通信域时,相应的卡需要分配大约300M的device内存,因此每张卡所在的通信域的数量越多,则额外需要的内存越多,因此会有内存不足的问题。A10:这些问题,都是由于在mpirun启动其他主机时,其他主机的环境变量(包括NCCL的网卡选择配置)没有与本机同步,导致了单机多卡正常执行而多机多卡失败的现象。以上指令设置了NCCL在Host侧选择网卡名中带有eth的网卡进行通信。

2023-08-18 11:37:56 305 1

原创 精度or性能调优,so easy!| 昇思MindSpore调优问题FAQ

A1:可能与环境中使用了scipy 1.4系列版本有关,通过pip list | grep scipy命令可查看scipy版本,建议改成MindSpore要求的scipy版本。版本第三方库依赖可以在requirement.txt中查看。A2:在昇腾芯片上进行模型训练时,在batchsize等于AICORE个数或倍数的情况下可以获取更好的训练性能。AICORE个数可通过链接中的命令行进行查询。A3: 可能导致Loss值不收敛或者精度问题的原因很多,推荐参考下面总结,逐一排查问题。

2023-08-18 11:37:17 87 1

原创 框架互换,全程无忧!|昇思MindSpore第三方框架迁移使用FAQ

A2: MindSpore和PyTorch的自定义数据集逻辑是比较类似的,需要用户先定义一个自己的dataset类,该类负责定义__init__,__getitem__,__len__来读取自己的数据集,然后将该类实例化为一个对象(如: dataset/dataset_generator),最后将这个实例化对象传入GeneratorDataset(mindspore用法)/DataLoader(pytorch用法),至此即可以完成自定义数据集加载了。A8: 该问题通常是由于环境变量导入不正确导致的。

2023-08-18 11:36:29 165 1

原创 Ascend环境使用mindspore报Total stream number xxx exceeds the limit of

出现上述报错的原因一般是网络模型规模巨大,使用的流资源的数量超出了Ascend的流资源数量限制。流资源是Ascend平台的一种硬件资源,通过为每个算子分配流,可以控制算子的执行顺序。同一条流上的算子按顺序串行执行,不同流上的算子可以并行执行,每条流上可以分配的算子数量有限,流资源总的数量也是有限的。使用MindSpore r1.6及后续版本可解决此问题 在MindSpore r1.6之前版本,流资源的数量限制是1024条,在r1.6及后续版本,可用的流资源的数量增加到2016条,可解决此问题。

2023-02-21 13:51:45 183

原创 GPU设备算力不足导致计算结果错误[cublasGemmEx failed]

在mindspore-1.6版本之后,mindspore对使用者的GPU显卡进行了算力识别,如使用者的GPU算力小于5.3,会有相应的日志提醒。或者使用CPU设备进行mindspore的使用。或者执行matmul算子时报 cuBLAS Error: cublasGemmEx failed等情况。一般是因为当前使用的GPU设备算力不够引起。当前mindspore限制显卡算力为最低5.3,显卡算力的可在Nivida官网查询。按照官网正确安装mindspore 以及cuda驱动和库文件后,运行。

2023-02-21 13:50:26 273

原创 GPU环境运行MindSpore报错:设卡失败 SetDevice failed

在GPU环境上安装MindSpore,运行后报错提示设卡失败,如"SetDevice for id: 7 failed......"这类错误。日志中给出了设卡样例,提示MindSpore需要的逻辑device id和物理卡号的对应关系。此类错误一般原因:设卡的device id越界,超出了可用GPU卡总数。

2023-02-21 13:49:58 350

原创 [技术干货-功能调试] ms报错&quot;RuntimeError: Net parameters weight shape xxx i

技术干货-功能调试] ms报错"RuntimeError: Net parameters weight shape xxx is different from parameter_dict's xxx.."怎么办。

2023-02-21 13:49:48 95

原创 When &apos;...&apos; by using Fallback feature, an error occurred

定位报错问题的一般流程是: 1、首先找到报错的用户代码行: y = Tensor(self.data, mindspore.float32) 2、然后根据日志报错信息中的关键字,缩小分析问题的范围:Fallback feature 3、报错信息需要Traceback中的报错信息:NameError: data。

2023-02-21 11:47:07 50

原创 MindSpore报错&quot;operation does not support the type kMetaTypeNone&quot;

MindSpore前端语法是Python语法的子集, 撰写模型时需要遵循Python语法。学习掌握一些python语言的特性,对于MindSpore运行机制理解和问题定位很有帮助。

2023-02-21 11:37:09 66

原创 MindSpore报错 sth should be initialized as a Parameter type in ...

Cell网络中的变量需要在__init__中进行定义,并且使用Parameter接口进行初始化。

2023-02-21 11:34:44 75

原创 昇思报错&quot;The function construct need xx positional argument ...&quot;怎么办

MindSpore前端语法是Python语法的子集, 撰写模型时需要遵循Python语法。学习一些python语言的书籍,对于MindSpore运行机制理解和问题定位很有帮助。

2023-02-21 11:30:49 42

原创 MindSpore报错ValueError: For &apos;AvgPool&apos; 输出形状的每一维都要大于零

定位报错问题的步骤:1、找到报错的用户代码行:;2、 根据日志报错信息中的关键字,缩小分析问题的范围* the each element of the output shape must be larger than 0*;3、需要重点关注变量定义、初始化的正确性。

2023-02-21 11:28:45 47

原创 体验MindSporeRNN实现情感分类

体验mindspore教程中的RNN情感分析案例

2022-12-15 19:41:21 653

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除