Keras: библиотека с открытым исходным кодом для разработки нейронных сетей

Искусственный интеллект играет ключевую роль в современном цифровом мире — в том числе при разработке и использовании видеоигр (или других приложений), а также в веб-сервисах, устройствах и машинах. Одной из важнейших областей исследований и подполей, интенсивно изучающих ключевые особенности «виртуального интеллекта», являются нейронные сети, а реализация нейронных сетей значительно упрощается благодаря использованию Keras. Читайте дальше, чтобы узнать, что представляет собой эта библиотека с открытым исходным кодом и как она может упростить разработку нейронных сетей.

Что такое Keras?

Keras — это библиотека с открытым исходным кодом (лицензия MIT), написанная на языке Python, которая в основном основана на работе, проделанной разработчиком Google Франсуа Шолле в рамках проекта ONEIROS (Open-ended Neuro-Electronic Intelligent Robot Operating System). Первая версия этого платформонезависимого программного обеспечения была опубликована 28 марта 2015 года. Цель этой библиотеки — обеспечить возможность быстрой разработки нейронных сетей. В данном случае Keras — это не отдельный фреймворк, а удобный для новичков интерфейс (API) для доступа и программирования различных фреймворков машинного обучения. Theano, Microsoft Cognitive Toolkit (бывший CNTK) и TensorFlow — вот некоторые из фреймворков, поддерживаемых Keras.

Примечание

Начиная с выпуска TensorFlow 1.4, Keras стал неотъемлемой частью API ядра TensorFlow. Тем не менее, эта библиотека будет продолжать разрабатываться как независимое программное обеспечение, поскольку с самого начала она задумывалась как интерфейс для различных фреймворков, и это по-прежнему так.

Текущая версия Keras совместима с Python 2.7 и выше. Полный текст проекта доступен в любое время через официальный репозиторий Keras на GitHub.

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

Как работает Keras?

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

Как упоминалось ранее, Keras использует три инструмента: TensorFlow, Theano и Microsoft Cognitive Toolkit. Они имеют готовые к использованию интерфейсы, которые обеспечивают быстрый интуитивный доступ к соответствующему бэкенду. Нет необходимости выбирать какой-то один фреймворк, поскольку вы можете легко переключаться между различными бэкендами. Также можно выбрать другой бэкенд из трех названных здесь решений. Вам просто нужно указать его в конфигурационном файле (Keras.json), и он должен иметь следующие три функции: «placeholder», «variable» и «function».

Совет

Более подробную информацию об управлении back-end и общем использовании вы можете найти в нашем обширном руководстве по Keras.

Каковы преимущества использования Keras?

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

Ниже представлен обзор некоторых дополнительных преимуществ, предоставляемых Keras:

  • Широкая платформенная поддержка разработанных моделей: Модели, разработанные с помощью Keras, могут быть легко развернуты на различных платформах. Например, по умолчанию поддерживаются платформы iOS (Apple CoreML), Android (Keras TensorFlow Android Runtime), Google Cloud и Raspberry Pi.
  • Поддержка нескольких внутренних движков: Keras дает вам свободу выбора нужного бэкенда и комбинирования нескольких бэкендов. Вы также можете в любой момент перенести разработанную модель на другой бэкенд.
  • Выдающаяся поддержка нескольких графических процессоров: При использовании Keras вычислительная работа для разработанных процессов глубокого обучения может быть легко распределена между несколькими графическими чипами или картами.
  • Поддержка разработки со стороны крупнейших компаний: Поддержание и дальнейшее развитие Keras поддерживается самыми известными компаниями в отрасли. Google, Amazon AWS, Microsoft, Apple и Nvidia — вот некоторые из компаний, участвующих в проекте.

Для каких проектов подходит Keras?

Будучи универсальным интерфейсом для платформ машинного обучения, Keras в настоящее время используется в самых разных проектах в области ИИ. К середине 2018 года эта библиотека уже насчитывала более 250 000 индивидуальных пользователей — и это число значительно увеличилось после ее включения в состав программного обеспечения TensorFlow. Благодаря свободе выбора базового фреймворка, бесплатному лицензированию и независимости от платформы, Keras является идеальным универсальным решением для профессиональных нейросетевых приложений как в промышленности, так и в научных исследованиях. Например, такие известные компании, как Netflix, Uber и Yelp, а также такие организации, как NASA и CERN, используют Keras или пакет TensorFlow Keras в своих проектах.

Оцените статью
cdelat.ru
Добавить комментарий