- 博客(10)
- 资源 (10)
- 收藏
- 关注
原创 昇思25天打卡训练营第10天|使用静态图加速
Graph模式下Python代码不是由python解释器执行,而是将代码编译成静态计算图,然后执行静态计算图.MindSpore静态图编译器维护了Python常用语法子集,支持神经网络的构建及训练.在需要对Tensor某些运算进行编译加速时,可在其定义的函数上使用jit修饰器,在调用该函数时,该模块被自动编译为静态图。在MindSpore中又称为Graph模式,基于图优化、计算图整图下沉技术,编译器可以对图进行全局优化,以获得较好的性能,比较适合网络固定且需要高性能的场景。JitConfig配置项。
2024-07-15 23:47:10 660
原创 昇思25天打卡训练营第9天|保存与加载
除Checkpoint外,MindSpore提供了云侧(训练)和端侧(推理)统一的中间表示(Intermediate Representation,IR),可直接使用export接口直接保存为MindIR。加载模型权重,要先创建相同模型的实例,再使用load_ckeckpoint,load_param_into_net加载参数到模型。在训练网络模型的过程中,保存中间的结果,用于微调fine-tune和后续的模型推理与部署.使用save_checkpoint接口保存模型,传入网络对象和指定的保存路径。
2024-07-15 22:29:17 317
原创 昇思25天打卡训练营第8天|模型训练
损失函数会评估预测结果与目标值相异程度,模型训练目标即为降低损失函数求得的误差。可以循环输入数据训练模型,一次数据集的完整迭代称为一轮.每轮包括训练与验证两个步骤,训练时迭代训练数据集并尝试收敛到最佳参数,验证时则迭代测试数据集,检查模型性能是否提升.n为批量大小,$\eta$为学习率,w为各轮训练的权重参数,$\abla l$为损失函数导数。构建数据集,定义神经网络模型,定义超参、损失函数及优化器,输入数据集训练评估。指可调整的参数,控制模型训练优化的过程,对模型训练和收敛速度有直接影响.
2024-07-15 19:26:05 441
原创 昇思25天打卡训练营第7天|函数式自动微分
自动微分主要解决的问题是将一个复杂的数学运算分解为一系列简单的基本运算,该功能对用户屏蔽了大量的求导细节和过程,大大降低了框架的使用门槛。grad和value_and_grad提供has_aux参数,当其设置为True时,可以自动实现前文手动添加stop_gradient的功能,满足返回辅助数据的同时不影响梯度计算的效果。`grad`函数有两个入参,第一个fn为待求导的函数,grad_position为求导输入位置的索引,例如此处function中w,b的位置分别为2,3,因此传入参数(2,3)。
2024-07-15 17:20:25 803
原创 昇思25天打卡训练营第6天|网络构建
由于语法解析的限制,当前在编译构图时,支持的数据类型、语法以及相关操作并没有完全与Python语法保持一致,部分使用受限。借鉴传统JIT编译的思路,从图模式的角度考虑动静图的统一,扩展图模式的语法能力,使得静态图提供接近动态图的语法使用体验,从而实现动静统一。在静态图模式下,MindSpore通过源码转换的方式,将Python的源码转换成中间表达IR(Intermediate Representation),并在此基础上对IR图进行优化,最终在硬件设备上执行优化后的图。可用于MindIR导入导出。
2024-07-15 14:02:11 697
原创 昇思25天打卡训练营第5天|数据变换Transformers
Transforms可通过map方法传入,实现对指定数据列的处理。在使用Lookup前,需要构造词表,一般可以加载已有的词表,或使用Vocab生成词表。为了更直观地呈现Transform前后的数据对比,我们使用Transforms的Eager模式进行演示。mindspore.dataset提供了面向图像、文本、音频等不同数据类型的Transforms,同时也支持使用Lambda函数。首先我们定义三段文本,作为待处理的数据,并使用GeneratorDataset进行加载,再按环节展开说明。
2024-07-15 09:51:44 903
原创 昇思25天打卡训练营第4天|数据集
4)自定义数据集:mindspore提供了一系列公开的数据集和可供调用的API.对于不支持的数据集,可以通过自定义加载类和自定义数据集生成函数的方式来生成,通过GeneratorDataset接口自定义数据集加载方式,该接口支持通过可随机访问数据集对象、可迭代数据集对象以及生成器generator构造自定义数据集.Dataset是Pipeline的起始,用于加载原始数据.mindspore.dataset提供了内置的文本、图像、音频等数据集加载接口,并提供了自定义数据集加载接口.- 可随机访问数据集。
2024-07-04 09:05:17 299
原创 昇思25天学习打卡训练营第3天|张量Tensor
绝大部分元素为0的张量称稀疏张量.常用表达形式为,其中indices表示非0下标元素,values表示非0元素个数,shape表示被压缩的稀疏张量形状。张量可以表示矢量、标量与其他张量之间线性关系的多线性䁋,如内积、外积、线性映射、笛卡尔积.坐标在n维空间内有n^r个分量的一种量,每个分量为坐标的函数,在坐标变换时该分量也依照某些规则作线性变换,r称为该张量的秩或阶.(?
2024-07-01 12:23:59 525
原创 昇思25天学习打卡营第2天|MindSpore快速入门
mindspore.nn类是构建所有网络的基类,也是网络基本单元.可以继承nn.Cell类重写__init__,construct方法实现自定义网络操作.__init__包含所有网络层定义,construct包含数据(Tensor)变换过程.1)正向计算:模型预测结果(logits),与正确标签(label)对比求预测损失(loss)train--train-images-idx3-ubyte(60000个训练图片)test--t10k-images-idx3-ubyte(10000个测试图片)
2024-06-30 17:46:56 464
原创 昇思25天学习打卡营第1天|基本介绍
MindExpression统一API接口:基于python的前端表达与编程接口,函数/OOP编程范式融合与AI/数值计算表达融合,动静表达统一/单机分布表达统一。MindSporeData数据处理层:高效的数据集处理、常用数据集加载、用户自定义处理注册与pipeline并行优化。MindSpore Science科学计算库:数据集、基础模型、预置的高精度模型、前后端处理工具。1. MindSpore 是全场景深度学习框架,目标是易开发、高效、统一部署。第三方前端:第三方多语言前端表达。
2024-06-30 16:11:59 253
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人