以下是使用PyTorch对MNIST数据集进行预处理的完整代码示例,包含数据加载、标准化和转换为张量的步骤:

import torch
from torchvision import datasets, transforms
from torch.utils.data import DataLoader

# 定义数据预处理转换器
transform = transforms.Compose([
    transforms.ToTensor(),              # 转换为Tensor
    transforms.Normalize((0.5,), (0.5,))  # 标准化到[-1, 1]区间
])

# 加载训练集和测试集
train_dataset = datasets.MNIST(root='./data', train=True, download=True, transform=transform)
test_dataset = datasets.MNIST(root='./data', train=False, download=False, transform=transform)

# 创建DataLoader
train_loader = DataLoader(train_dataset, batch_size=64, shuffle=True)
test_loader = DataLoader(test_dataset, batch_size=64, shuffle=False)

# 验证数据格式
for images, labels in train_loader:
    print(f"图像形状: {images.shape}, 标签范围: {labels.min()}~{labels.max()}")
    break

预处理流程图🔄

MNIST_preprocessing_steps

扩展阅读📚

如需深入了解PyTorch数据处理技巧,请访问PyTorch教程