在 PyTorch 中做資料增強
把資料增強加入你的 Dataset,並且用目視檢查一些影像,確認轉換確實有套用。
首先,把增強用的轉換加入 train_transforms。這裡要使用隨機水平翻轉,以及在 0 到 45 度之間的隨機旋轉。接下來建立 Dataset 與 DataLoader 的程式碼與之前完全相同。最後,重新調整影像的形狀並顯示它,看看新的資料增強是否看得出來。
所需的匯入都已經幫你完成:
from torchvision.datasets import ImageFolder
from torch.utils.data import DataLoader
from torchvision import transforms
import matplotlib.pyplot as plt
來為一些雲朵照片做資料增強吧!
本練習屬於課程
Intermediate Deep Learning with PyTorch
練習說明
- 在
train_transforms中再加入兩個轉換:先做隨機水平翻轉,接著在 0 到 45 度之間隨機旋轉。 - 將從 DataLoader 取出的
image張量重新調整形狀,使其適合顯示。 - 顯示該影像。
動手互動練習
試著完成這個範例程式碼,體驗一下這個練習。
train_transforms = transforms.Compose([
# Add horizontal flip and rotation
____,
____,
transforms.ToTensor(),
transforms.Resize((128, 128)),
])
dataset_train = ImageFolder(
"clouds_train",
transform=train_transforms,
)
dataloader_train = DataLoader(
dataset_train, shuffle=True, batch_size=1
)
image, label = next(iter(dataloader_train))
# Reshape the image tensor
image = image.____.____(____, ____, ____)
# Display the image
____
plt.show()