Курс 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. Работа с f-строками 2.0
  2. Манипуляция формой массива в Numpy
  3. Модуль antigravity: генерация координат
  4. Выражения-генераторы в Python
  5. Очистка строки в Python
  6. Создание списка через итерацию
  7. Разработка игры Pong с turtle
  8. Изменение логики работы с временем
  9. Удаление элементов из списка
  10. Основы слова
  11. JSON-esque в Python
  12. Ключевое слово global в Python
  13. Тип данных TypeVarTuple
  14. Оператор «not» в Python
  15. Оптимизация памяти с помощью __slots__
  16. Подсчет элементов с помощью Counter
  17. Метод __iand__ для пользовательских классов
  18. Вычисление натурального логарифма в NumPy
  19. Возврат нескольких значений из функции
  20. Форматирование строк в Python
  21. Запуск асинхронной корутины
  22. Инициализация объекта
  23. Логирование с Logzero
  24. Управление экспортом элементов
  25. Переменные в Python
  26. Преобразование данных в Python
  27. Именованные срезы в Python
  28. Работа с эмодзи в Python
  29. Принцип одной функции
  30. Руководство по библиотеке pydantic
  31. Удаление ресурса в Python
  32. Работа с изображениями Pillow
  33. Работа с итераторами в Python
  34. Удаление символов новой строки в Python.
  35. Удаление знаков препинания в Python
  36. Глубокое копирование объектов
  37. Модуль xkcd: загрузка комиксов
  38. capitalize() — изменение регистра первого символа строки
  39. Отделение звука от видео
  40. Вычисление фазы комплексного числа
  41. Декораторы в Python
  42. Преобразование range в итератор
  43. Удаление элементов из списка в Python.
  44. Определение локальных переменных в Python
  45. Метод matmul для умножения матриц
  46. Копирование списков в Python
  47. Лямбда-функции в Python

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