练习3-softmax分类(李沐函数简要解析)

环境为:练习1的环境

网址为:https://www.bilibili.com/video/BV1K64y1Q7wu/?spm_id_from=333.1007.top_right_bar_window_history.content.click

代码简要解析

导入模块

导入PyTorch

导入Torch中的nn模块

导入d2l中torch模块 并命名为d2l

复制代码
import torch
from torch import nn
from d2l import torch as d2l

获取数据

从Fashion-MNIST中获取batch_size个数据 注意此处为28*28的像素图像 d2l.load_data_fashion_mnist(batch_size) 函数加载 Fashion-MNIST 数据集,并返回两个迭代器

复制代码
batch_size=100
train_iter,test_iter=d2l.load_data_fashion_mnist(batch_size)

初始化模型和参数

Flatten()将输入为28*28的像素图像摊开成一组784长的数组 作为特征值 输入

nn.Linear() 为784输入 10输出的层

net.apply(init); 是将其中init函数作为所有可变参数的初始化方式 注意:m是层 既对每层m进行判断 符合条件对m的权重进行初始化

type(m) == nn.Linear 用于检查变量 m 是否属于 PyTorch 中的线性层(nn.Linear

复制代码
net=nn.Sequential(nn.Flatten(),nn.Linear(784,10))
def init_weights(m):
    if type(m)==nn.Linear:
            nn.init.normal_(m.weight,std=0.01)
        
net.apply(init_weights)

初始化损失函数 这里为交叉熵损失函数

复制代码
loss=nn.CrossEntropyLoss(reduction='none')

设定梯度下降算法

torch.optim.SGD()

复制代码
trainer=torch.optim.SGD(net.parameters(),lr=0.1)

训练

这里的d2l是李沐老师自己写的,想要运行成功,理论上需要把d2l下载下来

网址:https://github.com/d2l-ai/d2l-zh

复制代码
num_epochs=10;
d2l.train_ch3(net, train_iter, test_iter, loss, num_epochs, trainer)

我所学习到的

获得Fashion-MNIST的数据

复制代码
train_iter,test_iter=d2l.load_data_fashion_mnist(batch_size)

对输入进行平铺处理 其本质是把每个像素点都当作特征值

复制代码
nn.Flatten()

多层的权重初始化

复制代码
net.apply(init_weights)

交叉熵损失函数

复制代码
loss=nn.CrossEntropy()
相关推荐
Metaphor6923 小时前
在 PDF 中添加或删除数字签名:一份详尽的 Java 教程
经验分享
Dr.Kun6 小时前
【鲲码园Python】基于pytorch的蘑菇分类系统(9类)
pytorch·python·分类
老鱼说AI6 小时前
PyTorch 深度强化学习实战:从零手写 PPO 算法训练你的月球着陆器智能体
人工智能·pytorch·深度学习·机器学习·计算机视觉·分类·回归
星轨初途7 小时前
数据结构二叉树之链式结构(3)(上)
c语言·数据结构·经验分享·笔记·后端·算法·个人开发
马拉萨的春天8 小时前
iOS的分类中为什么不能添加变量以及如何设置关联对象的弱引用效果
ios·分类·数据挖掘
骑猪兜风2338 小时前
大厂集体押注 SDD!阿里、腾讯、亚马逊都在用的规范驱动开发,优势在哪?坑怎么避?
人工智能·驱动开发·经验分享·langchain·ai编程
likeshop开源商城9 小时前
开源AI应用平台实战测评:Dify、BuildingAI、PandaWiki与MaxKB横向解析
经验分享
易知微EasyV数据可视化11 小时前
数字孪生文旅:以某地智慧乡村数字孪生驾驶舱建设为例
经验分享·数字孪生·数据可视化·智慧文旅
半tour费21 小时前
TextCNN-NPU移植与性能优化实战
python·深度学习·分类·cnn·华为云
明天再做行么1 天前
软件测试资源合集
经验分享