Курс 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. Список импортированных модулей в Python
  2. Хранение переменных в Python.
  3. Модуль math: основные функции
  4. Управление сессиями в Python
  5. Определение функций с необязательными аргументами
  6. Вакансии в Nebius
  7. Определение основы слова с showballstemmer
  8. Хранение переменных в словаре.
  9. Получение локальных переменных в Python
  10. Добавление Progressbar в Python
  11. Отправка POST-запроса в REST API
  12. Работа со словарями
  13. Декоратор Property в Python
  14. Модуль inspect: получение информации о объектах
  15. Повторение элементов в Python
  16. Проблемы с именами переменных
  17. Распаковка значений в Python
  18. Функции классификации комплексных чисел
  19. Работа с deque из collections
  20. Метод matmul для умножения матриц
  21. Установка Python3.7 и PIP
  22. Работа с рекламными данными в Pandas
  23. Работа со слайсами
  24. Упрощение условных выражений с тернарным оператором
  25. Распаковка с оператором *
  26. Форматирование вывода списков
  27. Виртуальное окружение Python
  28. Автоматизация действий с Pyautogui
  29. Ветвление выражения в Python
  30. Манипуляция формой массива в Numpy
  31. Объединение списков в Python.
  32. Pillow: работа с изображениями
  33. Подсчет элементов в Python
  34. Проверка файла .py на синтаксис.
  35. Методы и функции в Python
  36. Функции в одну строку
  37. Изменение списка срезом
  38. Оператор умножения для вектора
  39. Использование двоеточия в Python
  40. Работа с enumerate()
  41. Модуль subprocess: запуск внешних команд
  42. Синхронизация потоков с time.sleep()
  43. Работа с буфером обмена на Python
  44. Python: Фильтрация списков с помощью filter()
  45. Howdoi — получение ответов из терминала

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