这里写自定义目录标题
- 打卡
- 昇思MindSpore扫盲
- 快速入门
打卡
昇思MindSpore扫盲
第一节基本是一个mindspore的科普扫盲。大概介绍一通mindspore的一些架构,feature,以及其对比于其他同类框架的优势。简单扫读了一遍大概有点印象直接跳过。
快速入门
这里 是使用mindSpore训练模型的一个例子,我们可以一步一步训练出一个 手写体数字识别的小模型,最后用数据区检验我们的这个模型怎么样。
这里数据用的是经典的MNIST。好像google的TensorFlow和百度的paddlepaddle入门都是这个 _。这是属于一个行业潜规则吗 哈哈哈哈。
下载数据没啥说的,继续往下走,mindspore这里也是打包成了64的batch和tensorflow一样。
下一步网络构建,见名知意的去看,大概是一个三层的神经网络。激活函数都是reLU。
class Network(nn.Cell):
def __init__(self):
super().__init__()
self.flatten = nn.Flatten()
self.dense_relu_sequential = nn.SequentialCell(
nn.Dense(28*28, 512),
nn.ReLU(),
nn.Dense(512, 512),
nn.ReLU(),
nn.Dense(512, 10)
)
def construct(self, x):
x = self.flatten(x)
logits = self.dense_relu_sequential(x)
return logits
model = Network()
print(model)
然后就是初始化损失函数训练以及测试。虽然还没具体的区看API,但感觉整体上是比较清晰易懂的,对于有一点基础的人很容易就可以上手。
再往后保存加载模型感觉比paddlepaddle容易。
这里我试了一下增加epochs轮数,整体精度上会有所增加。但受限于网络也就那样。期待后续的学习。
好了 今天到此为止。明天继续~