使用PyTorch训练一个手写数字识别模型(MNIST)
创作时间:
作者:
@小白创作中心
使用PyTorch训练一个手写数字识别模型(MNIST)
引用
CSDN
1.
https://blog.csdn.net/m0_67724631/article/details/138806650
本文将介绍如何使用PyTorch训练一个手写数字识别模型(MNIST)。MNIST数据集是一个经典的机器学习基准数据集,包含大约60,000个训练样本和10,000个测试样本,每个样本都是一个28x28像素的手写数字图像,标签为0到9。
准备工作
首先导入必要的库,并定义一个简单的神经网络结构。这个神经网络由三个线性层组成,每个线性层之间使用ReLU激活函数进行激活。最后一层使用log softmax作为输出。类似下图
import torch
import torch.nn as nn
import torch.nn.functional as F
import torch.optim as optim
from torchvision import datasets, transforms
from torch.utils.data import DataLoader
class Net(nn.Module):
def __init__(self):
super(Net, self).__init__()
self.fc1 = nn.Linear(28 * 28, 128)
self.fc2 = nn.Linear(128, 64)
self.fc3 = nn.Linear(64, 10)
def forward(self, x):
x = x.view(-1, 28 * 28)
x = F.relu(self.fc1(x))
x = F.relu(self.fc2(x))
x = self.fc3(x)
return F.log_softmax(x, dim=1)
初始化神经网络、损失函数和优化器。
net = Net()
criterion = nn.CrossEntropyLoss()
optimizer = optim.SGD(net.parameters(), lr=0.01, momentum=0.9)
定义数据预处理的转换。将图像转换为PyTorch张量,并对图像进行标准化处理。
transform = transforms.Compose([
transforms.ToTensor(),
transforms.Normalize((0.1307,), (0.3081,))
])
热门推荐
春天里的菜篮子 跟着大V学厨艺
酒驾交通肇事怎么处理?刑事案件
方舟手游实用宠物推荐攻略
三种主流简历上传方式全攻略
河北省唐山市丰南区:打造全域旅游新高地
七夕节的习俗:乞巧、乞文采、香桥会等传统活动
秋季行情在股票市场中有什么特点?其操作策略有哪些?
苦丁蒲公英茶的功效与作用:一杯茶的多重健康益处
复利计算方法及公式(复利计算的基本公式)
专家解析:老年人严重腿部麻木的五大原因及应对方法
苏轼《蝶恋花·春景》写作背景
宠物寄养靠谱吗?了解行业规范与选择合适宠物寄养服务
低压54正常吗?医生的专业解答来了
打野英雄推荐,热门打野英雄推荐指南
长沙十大必吃馆子:从火宫殿到文和友,地道湘菜等你来尝
二手笔记本电脑的估价方法与技巧——如何精准评估二手笔记本价值?
房产不满两年交税费及二手房满两年再出售的税率
光遇小金人数量分布与刷新机制详解
糖尿病肾病“泡沫尿”到底是怎么形成的?该如何治疗呢?
最经典的7道发糕做法,不揉面,手不粘面,蓬松柔软像蛋糕,真香
合成生物学赋能,上海蓝晶微生物用生物制造助推农业未来发展
超越自我,心静如水:如何做到百毒不侵,从容面对人生
新生儿28天体检都检查什么
《发酵的味学》:探寻全球“臭名远扬”的美食魔力
三四十年前的山东泰安,这些地方你还记得吗?
开发商不按期交房怎么办
金陵城里寻文脉 《城市风华录》解锁不一样的南京!
农村宅基地使用与维权指南
WPS表格复制粘贴技巧:保持格式不变的实用方法
文化中国行|百年商埠的传承与新生——贺州市河东历史文化街区走笔