Dataset se dvěma vstupy
Vytvoření multi-input modelu začíná přípravou vlastního datasetu, který dokáže modelu předávat všechny potřebné vstupy. V tomto cvičení sestavíš dataset Omniglot, který vrací trojice obsahující:
- Obrázek znaku určeného ke klasifikaci,
- One-hot enkódovaný vektor abecedy délky 30, ve kterém jsou samé nuly kromě jedné jedničky označující ID abecedy, ze které znak pochází,
- Cílový label – celé číslo mezi 0 a 963.
K dispozici máš samples, seznam 3-tic obsahujících cestu k souboru obrázku, jeho vektor abecedy a cílový label. Následující importy jsou už připravené, takže se můžeme pustit do práce!
from PIL import Image
from torch.utils.data import DataLoader, Dataset
from torchvision import transforms
Toto cvičení je součástí kurzu
Intermediate Deep Learning with PyTorch
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
class OmniglotDataset(Dataset):
def __init__(self, transform, samples):
# Assign transform and samples to class attributes
____ = ____
____ = ____