10 трендов глубокого обучения, которые были обозначены на NIPS 2015

Автор блога codinginparadise написал о новых трендах Deep Learning, которые можно было заметить, слушая доклады NIPS 2015 — одной из самых крупных конференций по машинному обучению, ниже приведён перевод этого текста.

Эти заметки относятся только к Deep/Reinforcement Learning, потому что эти секции посещал автор.

  1. Архитектуры нейронных сетей становятся более сложными и умными.
    Большинство state-of-the-art архитектур для распознавания образов, автоматических переводов итд уходят от простой сети с прямым распространением ошибки или полносвязных архитектур. В частности, они представляют собой смесь LSTM, полносвязных сетей со специальными функциями потерь или miltiple cortical columns.
  2. Все крутые ребят используют LSTM.
    Большинство state-of-the-art систем используют LSTM для того, чтобы получить память, которая может понять повторяющиеся паттерны.
  3. Механизмы внимания становятся более популярными.
    Некоторые, но не все системы начинают использовать алгоритмы с «вниманием», которые «фокусируют» внимание нейтронной сети на каких-то конкретных деталях задачи. Это ещё не часть нейронных сетей, но всё к этому идёт.
  4. Нейронные машины Тьюринга выглядят интересными, но они ещё не готовы для применения в продакшне.
    Нейронные машины Тьюринга, которые позволяют тренировать сети учить алгоритмы, выглядят довольно многообещающе, но, к сожалению, их пока нельзя применять в продакшне.
  5. Компьютерное зрение и NLP очень сильно пересекаются.
    Полносвязные сети впервые появились в CV, но теперь они используются в некоторых NLP системах, в то время как LSTM и рекуррентные сети впервые появились в NLP, но теперь используются в LSTM. Вдобавок к этому, появилось пересечение этих сфер — генерация описания изображений.
  6. Символическое дифференцировании становится более важным.
    Поскольку архитектура нейронных сетей становится всё крупнее, функции потерь всё сложнее, ручное вычисление градиента для обратного распространения ошибок становится намного сложнее. Самый свежий Tensor Flow гугла поставляется с символьным дифференцированием.
  7. Отличные результаты даёт сжатие нейронных сетей.
    Несколько исследователей показали разные подходы к сжатию весов, нужных для обучения модели — бинаризация, фиксация плавающей точки, итеративное обрезание и тонкая настройка весов и так далее.
    Эти подходы открывают важные возможности: использование нейронных сетей на мобильных устройствах. Вдобавок, если мы подаём на вход сжатой нейронной сети какие-то данные, сжатие позволит обрабатывать данные в реальном времени, что открывает новый спектр приложений в области дополненной реальности и генерации видеопотока в 30 FPS.
    Эти подходы уже есть, но никто не занимается ими плотно. Возможно, мы увидем бум сжатия в 2016.
  8. Продолжается смешение глубокого обучения и обучения с подкреплением.
    Никаких особенных прорыв в обучение с подкреплением не было, но вот Deep Reinforcement Learning показывает неплохие результаты в области перехода от классификации видеопотока к принятию решения.
    Предстоит пройти сложный путь в этом направлении, но эта раняя работа очень интересна.
  9. Если ты до сих пор не используешь batch-нормализацию, то надо бы начать.
    batch-нормализация уже стала де-факто стандартом нейронных сетей, которую используют большинство докладчиков.
  10. Исследования и использование идут бок о бок.
    Практически нет разрыва между исследованиями новых приложений или алгоритмов и использованием и масштабированием этих инноваций. TensorFlow — одна из нескольких библиотек, которая позволяет это — исследователи могут сделать новую архитектуру сети в виде графа, который затем может быть масштабирован в разных конфигурациях на несколько рабочих станций, использующих Python или C++
    В то же время, Caffe никуда не исчезал и работает лучше на одной машине. TensorFlow, например, не работает на Amazon AWS.
 

Kirill