溫馨提示×

Torch中怎么預處理數(shù)據(jù)

小億
109
2024-03-07 18:53:30
欄目: 深度學習

在 Torch 中,可以使用 torchvision.transforms 模塊來對數(shù)據(jù)進行預處理。常見的數(shù)據(jù)預處理操作包括:

  1. 圖片縮放和裁剪:使用 transforms.Resizetransforms.CenterCrop
  2. 圖片翻轉(zhuǎn)和旋轉(zhuǎn):使用 transforms.RandomHorizontalFliptransforms.RandomRotation。
  3. 圖片灰度化和歸一化:使用 transforms.Grayscaletransforms.Normalize。
  4. 將圖片轉(zhuǎn)換為張量:使用 transforms.ToTensor。

以下是一個示例,展示如何使用 transforms 對數(shù)據(jù)進行預處理:

import torchvision.transforms as transforms

# 定義預處理操作
data_transform = transforms.Compose([
    transforms.Resize(256),  # 將圖片縮放為 256x256
    transforms.CenterCrop(224),  # 將圖片裁剪為 224x224
    transforms.RandomHorizontalFlip(),  # 隨機水平翻轉(zhuǎn)圖片
    transforms.ToTensor(),  # 將圖片轉(zhuǎn)換為張量
    transforms.Normalize(mean=[0.485, 0.456, 0.406], std=[0.229, 0.224, 0.225])  # 歸一化圖片像素值
])

# 加載數(shù)據(jù)集并應用預處理操作
train_dataset = torchvision.datasets.ImageFolder(root='path/to/train/data', transform=data_transform)

0