Keras — библиотека глубокого обучения с открытым исходным кодом, реализующая высокоуровневый интерфейс для проектирования, обучения и вывода нейронных сетей. Разработанная на языке Python, она предоставляет удобные абстракции для построения моделей разной сложности: от простых многослойных перцептронов до сверточных и рекуррентных архитектур, а также гибридных и составных моделей. Keras ориентирована на повышение продуктивности исследователей и инженеров за счёт лаконичного и понятного синтаксиса, модульности компонентов и совместимости с различными вычислительными бэкендами.
Исторически Keras возникла как выделяемый проект с целью создать простую надстройку поверх существующих фреймворков для глубокого обучения; в дальнейшем её архитектура эволюционировала, и библиотека получила интеграцию с несколькими вычислительными бэкендами, такими как TensorFlow, JAX, PyTorch и OpenVINO, обеспечивая переносимость моделей и возможность выбора оптимального исполнения в зависимости от целей и оборудования. Keras поддерживает как высокоуровневые декларативные API для быстрой сборки моделей, так и более низкоуровневые механизмы для тонкой кастомизации поведения при обучении и выводе.
- Высокоуровневый API: интуитивные абстракции для последовательных и функциональных моделей, слоёв, оптимизаторов и метрик.
 - Совместимость с несколькими бэкендами: возможность использования TensorFlow, JAX, PyTorch и OpenVINO для обучения и вывода.
 - Модулярность: слои, функции активации, потери и метрики реализованы как взаимозаменяемые компоненты.
 - Поддержка кастомизации: возможность создания собственных слоёв, потерь, метрик и циклов обучения через расширяемые интерфейсы.
 - Инструменты работы с данными: утилиты для подготовки, аугментации и потоковой подачи датасетов в процессе обучения.
 - Сохранение и загрузка моделей: механизмы сериализации архитектуры, весов и конфигураций для воспроизводимости и деплоя.
 - Интеграция с инструментами развертывания: возможности экспорта моделей для вывода на разных платформах и устройствах.
 - Обширная документация и примеры: справочные материалы и образцы использования для широкого круга задач машинного обучения.