昇思25天学习打卡营第一天|基本介绍、快速入门
基本介绍这一节课整体介绍昇思MindSpore和华为昇腾AI全栈,并介绍昇思MindSpore在华为昇腾AI全栈中的位置。昇思MindSpore是一个全场景深度学习框架,旨在实现易开发、高效执行、全场景统一部署三大目标。下图是它的架构图下图是它的执行流程查看基本简介能大概了解到昇腾整个框架,从快速入门这节课能够加深对这方面的理解,跟着教程一步步走,我学到了数据集、网络的构建、和模型的处理等方面的知
一、背景:
昇思25天打卡是华为组织的一个学习营,免费报名参加,免费提供算力支持。
二、学习的内容:
今天我是打卡的第一天,我学习的课程是基本介绍和快速入门,由于我此前没有这方面的基础,或者说是比较薄弱,所以先通过这两节熟悉熟悉。
1.基本介绍
基本介绍这一节课整体介绍昇思MindSpore和华为昇腾AI全栈,并介绍昇思MindSpore在华为昇腾AI全栈中的位置。
昇思MindSpore是一个全场景深度学习框架,旨在实现易开发、高效执行、全场景统一部署三大目标。
下图是它的架构图

下图是它的执行流程

2.快速入门
本节通过MindSpore的API来快速实现一个简单的深度学习模型。
环境的初始化

数据集的处理和下载

查看
MindSpore的dataset使用数据处理流水线(Data Processing Pipeline),需指定map、batch、shuffle等操作。这里我们使用map对图像数据及标签进行变换处理,然后将处理好的数据集打包为大小为64的batch。
可使用create_tuple_iterator 或create_dict_iterator对数据集进行迭代访问,查看数据和标签的shape和datatype。

网络构建
mindspore.nn类是构建所有网络的基类,也是网络的基本单元。当用户需要自定义网络时,可以继承nn.Cell类,并重写__init__方法和construct方法。__init__包含所有网络层的定义,construct中包含数据(Tensor)的变换过程。

模型训练
在模型训练中,一个完整的训练过程(step)需要实现以下三步:
- 正向计算:模型预测结果(logits),并与正确标签(label)求预测损失(loss)。
- 反向传播:利用自动微分机制,自动求模型参数(parameters)对于loss的梯度(gradients)。
- 参数优化:将梯度更新到参数上。
训练过程需多次迭代数据集,一次完整的迭代称为一轮(epoch)。在每一轮,遍历训练集进行训练,结束后使用测试集进行预测。打印每一轮的loss值和预测准确率(Accuracy),可以看到loss在不断下降,Accuracy在不断提高。

训练过程

模型训练完成后,需要将其参数进行保存

保存后会在目录出现

加载模型

打印出来是空即模型加载完成。
加载后的模型可以直接用于预测推理。

总结
查看基本简介能大概了解到昇腾整个框架,从快速入门这节课能够加深对这方面的理解,跟着教程一步步走,我学到了数据集、网络的构建、和模型的处理等方面的知识,以及认识到它们和AI之间的关系。
昇腾计算产业是基于昇腾系列(HUAWEI Ascend)处理器和基础软件构建的全栈 AI计算基础设施、行业应用及服务,https://devpress.csdn.net/organization/setting/general/146749包括昇腾系列处理器、系列硬件、CANN、AI计算框架、应用使能、开发工具链、管理运维工具、行业应用及服务等全产业链
更多推荐

所有评论(0)