Курс 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. Проверка типов с использованием isinstance
  2. Удаление первого элемента списка
  3. Логирование с Loguru
  4. Вывод баннеров
  5. Применение функции к каждому элементу списка
  6. Оператор «not» в Python
  7. Функция format() в Python
  8. Получение списка кортежей из словаря
  9. Работа с процессами в Python
  10. Списковый компрехеншен.
  11. Тестирование с responses
  12. Обход элементов в Python
  13. Проверка дубликатов в Python
  14. Метод __complex__ в Python
  15. Поиск уникальных элементов строкой в Python
  16. Управление ресурсами с контекстными менеджерами
  17. Подсказки типов в Python
  18. Работа с deque в Python
  19. Работа с deque из collections
  20. Функция eval() в Python
  21. Библиотека sh: удобные команды терминала
  22. Исправление ошибки NameError
  23. Поиск подстроки в строке
  24. Оптимизация строк в Python
  25. Сокращение ссылок с pyshorteners
  26. Оператор is в Python
  27. Модуль Operator в Python
  28. Измерение времени выполнения с помощью time
  29. Генератор данных в Keras
  30. Особенности множеств в Python
  31. Работа с часовыми поясами в Python.
  32. Конкатенация списков в Python
  33. Defaultdict в Python
  34. Проверка типа объекта в Python
  35. Оператор in для проверки наличия элемента
  36. Функция zip() в Python
  37. Python 3.12: Псевдонимы типов
  38. Именование переменных в Python
  39. Проверка окончания строки с помощью str.endswith()
  40. Декораторы в Python
  41. Создание генераторов в Python
  42. Печать календаря
  43. Повторение и перенос строки
  44. Расчет времени выполнения программы

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