Datamängd med två indata
Att bygga en modell med flera indata börjar med att skapa en anpassad datamängd som kan förse modellen med alla indata. I den här övningen bygger du Omniglot-datamängden, som levererar tripletter bestående av:
- En bild av ett tecken som ska klassificeras,
- En one-hot-kodad alfabetsvektor av längden 30, med nollor överallt utom en etta som anger ID:t för det alfabet tecknet tillhör,
- Målmärket – ett heltal mellan 0 och 963.
Du har tillgång till samples, en lista med 3-tupler som innehåller en bilds filsökväg, dess alfabetsvektor och målmärket. Följande importer är redan gjorda åt dig, så låt oss sätta igång!
from PIL import Image
from torch.utils.data import DataLoader, Dataset
from torchvision import transforms
Den här övningen är en del av kursen
Fördjupad djupinlärning med PyTorch
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
class OmniglotDataset(Dataset):
def __init__(self, transform, samples):
# Assign transform and samples to class attributes
____ = ____
____ = ____