Курс 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. Создание графиков в терминале
  2. Создание и обучение модели с Keras
  3. Декоратор @override
  4. Класс Counter() для подсчета элементов
  5. Прокачанный трейсинг ошибок
  6. Операторы объединения в Python 3.9
  7. Генератор чисел Фибоначчи
  8. Генераторы в Python
  9. Проверка памяти объекта
  10. Работа с пакетами
  11. Передача словаря через **kwargs
  12. Использование подчеркивания в REPL
  13. Работа с кортежами в Python
  14. Переворот строки с помощью срезов
  15. Группировка элементов в словарь
  16. Экспорт внешнего файла с помощью writefile
  17. Транспонирование матрицы в Python
  18. Сортировка в Python
  19. Установка Python — Простое руководство
  20. Оператор zip в Python
  21. Функция с *args.
  22. Регистрация на курсы SF Education
  23. kwargs в Python
  24. Метод add для класса Vector
  25. Отслеживание прогресса с tqdm
  26. Метод rxor для операции побитового исключающего «или»
  27. Фильтрация списка от «ложных» значений
  28. Создание Radio кнопок в tkinter
  29. Частичное совпадение ввода
  30. Функция reduce() из модуля functools
  31. Списки в Python: синтаксис представления
  32. Именованные аргументы в Python
  33. Работа с OpenCV
  34. Тест скорости набора текста на Python
  35. Метод splitlines() для разделения строк
  36. Работа с файлами в Python
  37. Управление доступом к модулю
  38. Применение функций в Python
  39. Поиск уникальных и повторяющихся элементов
  40. Создание и удаление объектов
  41. Аргумент по умолчанию
  42. Проверка окончания строки с помощью str.endswith()
  43. Вычисление натуральных логарифмов в NumPy
  44. Методы classmethod и staticmethod
  45. Измерение потребления памяти при сортировке
  46. Очистка данных с помощью pandas

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