《昇思25天学习打卡营第2天 | 快速入门》
活动地址:https://xihe.mindspore.cn/events/mindspore-training-camp
签名:Sam9029
快速实现一个简单的深度学习模型
今天学习使用 MindSpore的API来快速实现一个简单的深度学习模型
感觉今天的 课程章节目的,主要是将使用 mindspoce 训练模型的流程跑一遍
当然整个过程,里面有很多的引入模块和函数我都不知道,
不过目前不求甚解,逐一的去了解掌握即可,不能急于求成,陷入局部的技术探索陷阱,导致迷失方向
总结一下深度学习模型的流程
- 引入 Mindscope 模块(因为 平台提供的 IDE 就预装了 Mindscope,直接引入即可)
import mindspore
-
处理数据集
- 引入 Download 模块,从指定的链接下载 数据集
- 使用
mindspore.dataset
提供的数据变换进行预处理
-
网络构建
- 说实话没太搞清楚这一步做什么
-
模型训练
-
涉及到的工作为以下三个重要的步骤
正向计算:模型预测结果(logits),并与正确标签(label)求预测损失(loss)。
反向传播:利用自动微分机制,自动求模型参数(parameters)对于loss的梯度(gradients)。
参数优化:将梯度更新到参数上。 -
训练过程需多次迭代数据集,一次完整的迭代称为一轮(epoch)。
在每一轮,遍历训练集进行训练,结束后使用测试集进行预测。打印每一轮的loss值和预测准确率(Accuracy),可以看到loss在不断下降,Accuracy在不断提高。
Epoch 1 ------------------------------- loss: 2.292041 [ 0/938] ...省略 loss: 0.328109 [900/938] Test: Accuracy: 91.0%, Avg loss: 0.321219 Epoch 2 ------------------------------- loss: 0.413094 [ 0/938] ...省略 loss: 0.373354 [900/938] Test: Accuracy: 92.9%, Avg loss: 0.245301 Epoch 3 ------------------------------- loss: 0.211956 [ 0/938] ...省略 loss: 0.137108 [900/938] Test: Accuracy: 93.9%, Avg loss: 0.214044
-
-
保存模型
- 最重要的一步,代码写完,模型训练好就要保存下来
-
加载模型
- 这里我理解为,模型成为了一个工具
- 每次使用,就可以向 python 中 Class 使用一样,创建一个模型的实例对象来使用
虽然训练过程中依旧很多不懂的的专业术语和词汇,甚至是python模块的使用
但是没关系,千里之行,始于足下!
我会继续一步一步的保持学习,在 昇思社区 进行 AI技术方面的探索和学习
希望能给同样对AI充满热情的你一些启发。记住,技术的世界无限广阔,让我们一起勇敢地迈出探索的脚步吧!🚀🤖