在 Torch 中,可以使用 torchvision.transforms
模块来对数据进行预处理。常见的数据预处理操作包括:
transforms.Resize
和 transforms.CenterCrop
。transforms.RandomHorizontalFlip
和 transforms.RandomRotation
。transforms.Grayscale
和 transforms.Normalize
。transforms.ToTensor
。以下是一个示例,展示如何使用 transforms
对数据进行预处理:
import torchvision.transforms as transforms
# 定义预处理操作
data_transform = transforms.Compose([
transforms.Resize(256), # 将图片缩放为 256x256
transforms.CenterCrop(224), # 将图片裁剪为 224x224
transforms.RandomHorizontalFlip(), # 随机水平翻转图片
transforms.ToTensor(), # 将图片转换为张量
transforms.Normalize(mean=[0.485, 0.456, 0.406], std=[0.229, 0.224, 0.225]) # 归一化图片像素值
])
# 加载数据集并应用预处理操作
train_dataset = torchvision.datasets.ImageFolder(root='path/to/train/data', transform=data_transform)