Перейти к содержанию

Зачем использовать Keras?

Зачем использовать Keras?

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

Keras учитывает опыт разработчиков.

  • Keras — это API, разработанный для людей, а не для машин. Keras использует передовые методы снижения когнитивной нагрузки: он предлагает согласованный и простой API, минимизирует количество действий пользователя, необходимых для решения распространенных задач, предоставляет четкую и действенную обратную связь в случае возникновения ошибок.
  • Все это делает Keras простым в изучении и использовании. Будучи пользователем Keras, вы становитесь более продуктивным, получаете возможность воплощать все ваши идеи быстрее своих конкурентов, что может позволит вам выигрывать соревнования по машинному обучению.
  • Эта простота использования не ведет к ограничению гибкости: поскольку Keras интегрируется с языками более низкого уровня (в частности TensorFlow), у вас появляется возможность реализовать все задачи, которые вы могли бы решить на базовом языке. В частности, как и tf.keras, API Keras легко интегрируется с вашими рабочими задачами TensorFlow.

Keras широко применяется в промышленности и исследовательском сообществе.

Диаграмма фреймерков глубокого обучения, рассчитанная Джеффом Хейлом на основе 11 источников данных по 7 категориям.

С середины 2018 Keras получил признание у более чем 250 тыс. персональных пользователей в различных областях. Это больше, чем в любом другом фреймворке, за исключением TensorFlow (при том, что API Keras является официальным фронтендом TensorFlow, через модуль tf.keras).

Вы уже не раз сталкивались с приложениями, созданными с помощью Keras — Netflix, Uber, Yelp, Instacart, Zocdoc, Square и др. Keras особенно популярен в стартапах, которые берут принципы глубокого обучения за основу своих продуктов.

Keras является одним из лидеров у исследователей глубокого обучения, занимая второе место по количеству упоминаний в научных статьях, загруженных на сервер arXiv.org. Keras также используется в исследованиях, проводимых большими научными компаниями, в частности CERN и NASA.

Keras позволяет легко превратить модель в готовый продукт.

Модели, созданные в Keras могут быть легко развернуты на большем количестве платформ, чем у любого другого фреймворка глубокого обучения:

Keras поддерживает несколько бэкенд движков и не блокирует вас в пределах одной экосистемы.

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

  • TensorFlow (от Google)
  • CNTK (от Microsoft)
  • Theano

У Amazon также есть свой фреймворк Keras, который использует MXNet в качестве бэкенда.

Таким образом, ваша модель Keras может быть обучена на различных аппаратных средствах (помимо процессоров):

Keras обладает мощной поддержкой multi-GPU и распределенной поддержкой обучения.

Разработка Keras поддерживается ключевыми компаниями в экосистеме глубокого обучения.

Разработка Keras поддерживается главным образом Google, а API Keras поставляется в TensorFlow как tf.keras. Кроме того Microsoft поддерживает бэкенд CNTK Keras. Amazon AWS поддерживает фреймворк MXNet Keras. В разработке участвуют и другие крупные компании: NVIDIA, Uber, Apple (с CoreML) и др.