На прошлой неделе Amazon Web Services (AWS) и Microsoft представили открытую библиотеку Gluon для машинного обучения. Создатели утверждают, что она позволит разработчикам легко прототипировать и развёртывать сложные модели машинного обучения в облаке.


/ Flickr / Cory Doctorow / CC

Gluon предлагает понятный и ёмкий API. Модели в библиотеке определяются и управляются как любые другие данные. Также есть возможность быстро создавать прототипы и использовать динамические графы нейросетей для новых архитектур без ущерба скорости обучения.

По словам главы подразделения искусственного интеллекта AWS Мэтта Вуда (Matt Wood), машинное обучение с помощью нейросетей состоит из трех основных компонентов: данных для обучения, модели нейросети и обучающего алгоритма. Нейросеть похожа на ориентированный граф: входные данные соединяются с выходными через нейронные слои, синапсы которых имеют определенные веса. Во время обучения алгоритм корректирует веса на основе ошибок в выходных данных. Это традиционный способ обучения сети. Он может длиться несколько дней или дольше.

Фреймворки для глубокого обучения помогают ускорить процесс. Но работа с ними требует от пользователя дополнительных усилий: формального определения графа, планирования и корректировки весов.

Настраивать сеть, в которой миллионы соединений, приходится вручную. Поэтому сети глубокого обучения громоздкие и их трудно отлаживать. Использовать их код для других проектов также сложно.

Особенности Gluon


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

  • Понятный API. Сети Gluon настраиваются с помощью простого и ёмкого кода. При этом Gluon поддерживает сложные методы: динамические графы и гибкие структуры, но разработчику нет необходимости разбираться в конкретных деталях или оптимизировать все вручную.
  • Разные типы данных. Gluon поддерживает работу с разряженными и квантованными данными. Разряженные данные часто обрабатываются при обработке естественного языка.
  • Динамические сети. В Gluon сети определяются динамически, что делает их гибкими, как любую другую структуру данных. Алгоритм динамически настраивает сеть во время определения и обучения. Это означает, что разработчики смогут использовать стандартные циклы и условия для создания сетей.
  • Производительность. Встроенная поддержка циклов и невырожденных тензоров позволяет эффективно выполнять алгоритмы для моделей RNN и LSTM. При этом Gluon предлагает автоматическое распределение задач на несколько графических процессоров.

Gluon — открытый и бесплатный продукт. Найти его можно на GitHub.

Другие библиотеки


Помимо Gluon, за последние месяцы появились ещё несколько библиотек. Компания IBM с помощью PowerAI DDL обучила нейросеть Resnet-50 на основе данных ImageNet за 50 минут. Для этого разработчики задействовали 64 сервера с 4 графическими процессорами в каждом.

Библиотека Deeplearn.js от Google позволяет обучать нейросети в браузере без установки софта. Разработчики компании заявляют, что библиотека может стать платформой для быстрого прототипирования, визуализации и офлайн-вычислений.

CatBoost — это алгоритм градиентного бустинга на деревьях решений от разработчиков компании «Яндекс». Новая версия продукта CatBoost version 0.2 вышла в сентябре и уже опубликована на GitHub. CatBoost основан на принципах универсального алгоритма MatrixNet, который используется в компании «Яндекс» для ранжирования задач и прогнозирования.

Ссылки по теме


Напоследок предлагаем вам небольшую подборку инструментов и материалов, касающихся разработки интеллектуальных систем. Например, пользователи Quora советуют обратить внимание на следующие ресурсы:


А пользователи Reddit предложили к просмотру подборку бесплатных ресурсов для самообучения и курируемый список с фреймворками и библиотеками Awesome Machine Learning.

Несколько фреймворков и полезных материалов вы найдете по ссылкам здесь и тут.

P.S. О чем еще мы пишем в нашем блоге:

Комментарии (2)


  1. navion
    18.10.2017 14:33

    Как с этим связана ленточная библиотека на КДПВ?


  1. mediaman
    18.10.2017 14:58

    Всегда радует подобная критика в комментах, хотя можно что-то и по делу написать. Дать пару ссылок по теме или про алгоритмы