Курс Python → Работа с набором данных CIFAR10 в PyTorch

Для работы с наборами данных в PyTorch используются модули Dataset и DataLoader. Модуль Dataset представляет собой абстракцию, которая предоставляет доступ к данным, а модуль DataLoader используется для загрузки данных в модели PyTorch. В данном случае мы рассмотрим использование набора данных CIFAR10, который содержит изображения различных классов.

Для начала работы с набором данных CIFAR10 необходимо его загрузить. PyTorch уже содержит встроенные функции для загрузки популярных наборов данных, включая CIFAR10. После загрузки данных их необходимо предварительно обработать, например, провести нормализацию или преобразование изображений в тензоры. Для этого можно использовать функцию torchvision.transforms.


import torch
import torchvision
import torchvision.transforms as transforms

# Загрузка набора данных CIFAR10
train_dataset = torchvision.datasets.CIFAR10(root='./data', train=True, download=True, transform=transforms.ToTensor())
test_dataset = torchvision.datasets.CIFAR10(root='./data', train=False, download=True, transform=transforms.ToTensor())

После предварительной обработки данных необходимо создать DataLoader, который будет загружать данные в модель батчами. DataLoader позволяет эффективно работать с большими объемами данных и автоматически разбивает данные на батчи, управляет перемешиванием и подгрузкой данных в память.


# Создание DataLoader
train_loader = torch.utils.data.DataLoader(train_dataset, batch_size=64, shuffle=True)
test_loader = torch.utils.data.DataLoader(test_dataset, batch_size=64, shuffle=False)

Теперь у вас есть готовые DataLoader для обучения и тестирования модели на наборе данных CIFAR10. Вы можете использовать их для итерации по данным в цикле обучения, передавая батчи данных в модель и вычисляя потери. Это позволит вам эффективно использовать набор данных и обучать модели глубокого обучения в PyTorch.

Твои коллеги будут рады, поделись в

Автор урока

Дмитрий Комаровский
Дмитрий Комаровский

Автоматизация процессов
в КраснодарБанки.ру

Другие уроки курса "Python"

  1. Декораторы в Python
  2. Обход элементов в Python
  3. Определение объема памяти объекта
  4. Получение списка кортежей из словаря
  5. Показ всплывающих окон Tkinter
  6. Работа с необработанными строками
  7. Работа с функцией next() в Python
  8. Работа со строками в Python
  9. Python Метод del.
  10. Сортировка HTML по CSS-селектору
  11. Присоединение элементов коллекции
  12. Функция zip() в Python
  13. Сортировка данных в Python
  14. Извлечение аудио из видео
  15. Уникальность ключей в словаре
  16. Объединение строк с помощью метода join
  17. Преобразование кортежа в словарь.
  18. Создание пользовательской коллекции в Python
  19. Создание и удаление объектов
  20. Копирование в Python
  21. Фильтры Pillow: NEAREST, BILINEAR, BICUBIC
  22. Генераторные функции в Python
  23. Расширение информации об ошибке в Python
  24. Метод count() для списков
  25. Метод pos в Python
  26. Функция count() в Python
  27. Concrete Paths в Python
  28. Вызов внешних программ в Python с помощью sh
  29. Печать календаря
  30. Логирование с Logzero
  31. Отладка в командной строке
  32. Метод add для класса Vector
  33. Просмотр атрибутов и методов класса
  34. Работа с классами данных
  35. Python itertools combinations() — группировка элементов
  36. Лямбда-функции в Python
  37. Операторы объединения в Python 3.9
  38. Поиск индекса элемента
  39. Создание Radio кнопок в tkinter
  40. Работа с изменяемыми списками
  41. Сумма элементов списка
  42. Работа с словарями в Python
  43. Импортирование в Python
  44. Обновление ключей в Python
  45. Работа с массивами в Python
  46. Псевдонимы в Python

Marketello читают маркетологи из крутых компаний