Необходимо решить задачу классификации с помощью CNN, написанной на pytorch. В качестве датасета используется стандартный torch-датасет CIFAR, который можно скачать таким образом:
trainset = torchvision.datasets.CIFAR10(root='./data', train=True,
download=True, transform=transform)
testset = torchvision.datasets.CIFAR10(root='./data', train=False,
download=True, transform=transform)
В качестве шаблона решения использовать предоставленный ноутбук. Нужно определить модель как класс, наследуемый от nn.Module, и обучить ее на CIFAR-датасете. Нельзя использовать предобученные модели.
В качестве решения будет два файла: ноутбук с решением cifar_cnn.ipynb и полученная модель model.pth, записанная так:
torch.save(model, “model.pth”)
Ноутбук должен содержать скрипт определения и обучения модели, соответственно, он должен включать все используемые трансформации для train-стадии и val-стадии. Скрипт должен включать и валидирование на тестовом датасете, так как это необходимый этап в большинстве случаев.