包含了6W训练样本和1W条测试样本,共10类(0-9),每张图片都做了尺寸归一化,都是28*28大小的灰度图。
2. 模型训练2.1 超参数定义
import torch
import torch.nn as nn
import torch.nn.functional as F
import torch.optim as optim
from torchvision import datasets, transforms
# 超参数定义
EPOCHS = 10
BATCH_SIZE = 16
DEVICE = torch.device('cuda' if torch.cuda.is_available() else 'cpu')
2.2
# 1.构建pipeline,对图像做处理
pipeline = transforms.Compose([
transforms.ToTensor(), # 将图片转换成tensor
transforms.Normalize((0.1307,), (0.3081,)) # 正则化,降低模型复杂度
])
# 2.下载并加载数据
from torch.utils.data import DataLoader
# 下载数据集
train_set = datasets.MNIST('data', train=True, download=True, transform=pipeline)
test_set = datasets.MNIST('data', train=False, download=True, transform=pipeline)
# 加载数据
train_loder = DataLoader(train_set, batch_size=BATCH_SIZE, shuffle=True)
test_loder = DataLoader(test_set, batch_size=BATCH_SIZE, shuffle=True)
2.3



