Курс Python → Генератор данных в Keras

Генератор данных из библиотеки Keras представляет собой специальный класс, который на лету создает данные для обучения нейронной сети. Это особенно полезно, когда у вас большой объем данных, который не помещается в оперативной памяти. Вместо того чтобы загружать все данные сразу, генератор создает пакеты данных по мере необходимости.

Для создания генератора данных в Keras необходимо определить функцию-генератор, которая будет возвращать пакеты данных. Эта функция должна содержать цикл, который будет генерировать пакеты данных и возвращать их. Важно учесть, что каждый пакет данных должен иметь одинаковый размер, чтобы модель могла правильно обучаться.


def data_generator(data, labels, batch_size):
    while True:
        batch_indices = np.random.choice(len(data), batch_size)
        batch_data = data[batch_indices]
        batch_labels = labels[batch_indices]
        yield batch_data, batch_labels

После того, как функция-генератор определена, ее можно передать в метод fit() модели Keras в качестве параметра generator. Таким образом, при обучении модели данные будут поступать из генератора, а не из памяти. Это позволяет эффективно использовать память и обрабатывать большие объемы данных.

Использование генераторов данных в Keras делает процесс обучения нейронной сети более гибким и эффективным. Вы можете легко настраивать размер пакетов данных, изменять порядок данных или добавлять аугментацию. Это помогает улучшить качество модели и ускорить процесс обучения.

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

Автор урока

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

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

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

  1. Расчет времени выполнения кода
  2. Виртуальные среды в Python
  3. Удаление ключей из словаря
  4. Поиск шаблона в строке
  5. Управление асинхронными задачами с помощью Semaphore
  6. Скрытие вывода данных
  7. Тестирование функции сложения
  8. Мониторинг памяти с Pympler
  9. Бинарный поиск
  10. Быстрый поиск кода
  11. Регистрация на хакатоне
  12. Документирование функций в Python
  13. Извлечение статей с newspaper3k
  14. Управление контекстом выполнения кода
  15. Область видимости переменных
  16. Работа с модулем os в Python
  17. Работа с CSV файлами в Python
  18. Регулярные выражения: метод match
  19. Создание треугольника Паскаля
  20. Генерация QR-кодов с библиотекой qrcode
  21. Изменение элемента списка
  22. Возврат нескольких значений
  23. Управление ресурсами с контекстными менеджерами
  24. Оператор «and» в Python
  25. Многострочные комментарии в Python
  26. Преобразование range в итератор
  27. Пропуск строк в файле с itertools
  28. Отправка поздравлений по дню рождения
  29. Пропуск начальных строк с помощью dropwhile()
  30. Улучшенные подсказки для импорта в Python 3.12
  31. Асинхронное программирование с asyncio
  32. Профилирование с cProfile
  33. Форматирование строк в Python
  34. Подсчет элементов с помощью Counter
  35. Сортировка элементов в Python
  36. Работа с рекламными данными в Pandas
  37. Основные операции с Numpy
  38. Декораторы в Python
  39. Применение функции map() с лямбда-функциями
  40. Модуль pprint
  41. Преобразование PowerPoint в PDF.
  42. Особенности ключей словаря в Python
  43. Beautiful Soup — извлечение данных из HTML
  44. Курс Data Scientist в медицине
  45. Python: отсутствие точек с запятыми
  46. Функция zip() в Python
  47. Поиск наиболее частого элемента

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