Data augmentation trong PyTorch
Hãy bổ sung data augmentation vào Dataset của bạn và quan sát vài ảnh để chắc rằng các biến đổi mong muốn đã được áp dụng.
Đầu tiên, bạn sẽ thêm các biến đổi tăng cường vào train_transforms. Ta sẽ dùng lật ngang ngẫu nhiên và xoay một góc ngẫu nhiên trong khoảng từ 0 đến 45 độ. Phần mã theo sau để tạo Dataset và DataLoader giống hệt như trước. Cuối cùng, bạn sẽ đổi hình dạng ảnh và hiển thị nó để xem các biến đổi tăng cường mới có nhìn thấy rõ không.
Tất cả import cần thiết đã được gọi sẵn cho bạn:
from torchvision.datasets import ImageFolder
from torch.utils.data import DataLoader
from torchvision import transforms
import matplotlib.pyplot as plt
Đến lúc tăng cường những bức ảnh đám mây rồi!
Bài tập này là một phần của khóa học
Deep Learning nâng cao với PyTorch
Hướng dẫn bài tập
- Thêm hai biến đổi vào
train_transformsđể thực hiện lật ngang ngẫu nhiên rồi xoay một góc ngẫu nhiên trong khoảng từ 0 đến 45 độ. - Đổi hình dạng tensor
imagelấy từ DataLoader để có thể hiển thị được. - Hiển thị ảnh.
Bài tập tương tác thực hành trực tiếp
Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.
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()