PyTorch'ta veri artırma (data augmentation)
Hadi, veri artırmayı Dataset'ine ekleyelim ve istenen dönüşümlerin uygulandığından emin olmak için bazı görüntüleri görsel olarak inceleyelim.
Önce, artırıcı dönüşümleri train_transforms içine ekleyeceksin. Rastgele yatay çevirme ve 0 ile 45 derece arasında rastgele bir açıyla döndürmeyi kullanalım. Dataset ve DataLoader'ı oluşturmak için gelen kod, öncekiyle tamamen aynı. Son olarak, görüntüyü yeniden şekillendirip yeni artırma dönüşümlerinin görünür olup olmadığını görmek için göstereceksin.
İhtiyacın olan tüm içe aktarmalar senin için yapıldı:
from torchvision.datasets import ImageFolder
from torch.utils.data import DataLoader
from torchvision import transforms
import matplotlib.pyplot as plt
Biraz bulut fotoğrafını artırma zamanı!
Bu egzersiz
PyTorch ile Orta Düzey Deep Learning
kursunun bir parçasıdırEgzersiz talimatları
- Rastgele yatay çevirme ve ardından 0 ile 45 derece arasında rastgele bir açıyla döndürme yapmak için
train_transforms'a iki dönüşüm daha ekle. - DataLoader'dan gelen
imagetensörünü gösterime uygun hale getirmek için yeniden şekillendir. - Görüntüyü göster.
Uygulamalı interaktif egzersiz
Bu örnek kodu tamamlayarak bu egzersizi bitirin.
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()