Долгая краткосрочная память

23 Ноября 2020 ПостНаука

Профессор искусственного интеллекта Юрген Шмидхубер о том, как долгая краткосрочная память улучшила работу известных сервисов и научила программы обыгрывать профессиональных игроков вDota.

Эта лекция — часть курса «Глубокое обучение», который мы делаем вместе с организаторами технологического конкурса UpGreat ПРО//ЧТЕНИЕ. Профессор Университета прикладных наук итальянской Швейцарии, пионер в области искусственного интеллекта Юрген Шмидхубер рассказывает о совершенных искусственных нейросетях и механизмах глубокого обучения. 

Наша следующая лекция посвящена долгой краткосрочной памяти, в которой развивается метод обратного распространения ошибки, впервые предложенный Сеппой Линнайнмаа в 1970 году, а также рекуррентные нейросети, которые обучаются с учителем, — не просто сети прямого распространения, а именно рекуррентные.

Этот метод известен как обратное распространение ошибки во времени. Рекуррентная сеть развертывается в нейронную сеть прямого распространения, количество слоев в которой соответствует шагу поступления последовательности векторов входного сигнала, например речи. При распознавании речи от микрофона поступает примерно 100 векторов входного сигнала в секунду (или по одному каждые 10 миллисекунд).

Рекуррентные нейросети являются универсальными вычислительными машинами. Это легко доказать: в нескольких нейронах можно реализовать логический вентиль NAND («И-НЕ»), а сеть таких вентилей может имитировать работу микросхемы вашего компьютера, ч. т. д. Но ранние рекуррентные сети не могли решать глубокие задачи — с длинными последовательностями входных данных и долгими временными интервалами между наблюдениями и значимыми входными событиями.

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

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

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

Можно также перегнать знания сети более высокого уровня («учителя») в сети нижнего уровня («ученика»), заставив рекуррентную сеть нижнего уровня предсказывать данные скрытых узлов верхней сети, которая работает с меньшей частотой, поскольку она получает только те входные данные, которые сеть нижнего уровня не смогла предсказать.

В начале 1990-х, к 1993 году, такие системы могли решать ранее неразрешимые, очень глубокие задачи, требующие более тысячи последовательных этапов вычислений.

Такой метод отлично работал, но затем возник лучший метод, который не нуждался в предобучении без учителя и произвел революцию в области обработки последовательностей, — долгая краткосрочная память (LSTM). Недавно я узнал, что к концу 2010-х на нашу статью о LSTM, выпущенную в 1997-м, каждый год ссылались чаще, чем на какую-либо другую работу из области Computer Science, написанную в XX веке, — этим стоит гордиться.

Долгая краткосрочная память решает проблемы исчезающего и взрывающегося градиента, или, как я это называю, фундаментальную проблему глубокого обучения, которую в 1991 году впервые выявил и проанализировал в дипломной работе мой первый студент — Сепп Хохрайтер.

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

Долгая краткосрочная память была разработана специально для решения этой проблемы. Первые наработки были представлены уже в дипломной работе Сеппа в 1991 году. Я не успею подробно описать суть этой архитектуры, но могу по крайней мере упомянуть блестящих сотрудников моей лаборатории, которые позволили добиться этого результата, — прежде всего Сеппа, но также Феликса Герса, который внес важный вклад, например введя фильтры забывания (forget gate), которые теперь составляют неотъемлемую часть стандартной LSTM и используются повсеместно. Кроме того, активное участие в этом принимали Алекс Грейвс, Даан Виестра и другие исследователи.

В 1997 году вычисления были в 100 тысяч раз дороже, чем сегодня, в 2020-м. В 1941 году Конрад Цузе создал первый работающий программируемый компьютер, и с тех пор каждые 5 лет вычисления становились в 10 раз дешевле. К 2009 году они стали настолько дешевыми, что мой студент Алекс Грейвс смог впервые выиграть соревнования по распознаванию письменной речи: он использовал алгоритм глубокого обучения с применением LSTM — с большими задержками и используя пути назначения коэффициентов доверия глубокого типа, но и так он смог превзойти всех соперников.

К 2010-м годам вычисления стали достаточно дешевыми, чтобы LSTM распространилась по всей планете на миллиардах смартфонов. Например, с 2015 года работают системы с использованием LSTM, натренированные нашим методом коннекционной темпоральной классификации (connectionist temporal classification, CTC), — Алекс Грейвс был главным автором посвященной им публикации, вышедшей в 2006 году. Комбинация LSTM и CTC сильно улучшила распознавание речи Google, которое теперь работает на миллиардах смартфонов под Android.

Наша LSTM также лежала в основе улучшений Google Translate, начавшихся в 2016 году. До 2016 года китайцы хохотали над тем, как Google Translate переводил с английского на китайский и обратно, но теперь уже нет. К 2016 году более четверти вычислительной мощности для систем логического вывода в дата-центрах Google использовалось для LSTM.

В 2017 году Facebook объявил, что они применяют LSTM для перевода 30 миллиардов сообщений в неделю — это более 50 тысяч в секунду. Кроме того, LSTM улучшила многие аспекты ПО Microsoft, а также среди разработок Apple работу Siri и предиктивный набор текста QuickType на миллиардах айфонов. В 2016 году она также научилась отвечать пользователям Алексы, созданной Amazon: это не записанные реплики — голос генерируется заново для каждого конкретного случая. Крупнейшие азиатские компании вроде Samsung, Alibaba, Tencent и многих других также широко применяют LSTM.

Важно понимать, что LSTM можно натренировать не только с помощью градиентного спуска, но также при помощи обучения с подкреплением без учителя, который на примере тренировочного сета мог бы показать, что нужно делать. Нет, их можно натренировать при помощи градиента политики (policy gradient), чтобы максимизировать вознаграждение при обучении с подкреплением, как в 2007–2010 годах показали мы с коллегами, в числе которых нужно назвать моего научного сотрудника Даана Виестру, Яна Питерса и Александра Фёстера.

Даан Виестра позднее стал ведущим сотрудником в DeepMind, сооснователем которой является Шейн Легг, еще один сотрудник моей лаборатории в Институте исследования искусственного интеллекта Далле Молле (IDSIA). Шейн и Даан были первыми в DeepMind, у кого были публикации на тему ИИ и степень PhD в Computer Science.

Градиенты политики стали необычайно важны в LSTM. Например, в 2019 году DeepMind выиграла у профессионального игрока в StarCraft, которая во многих аспектах намного сложнее шахмат или го. DeepMind использовали программу AlphaStar: ее мозг — это по сути LSTM, натренированная методами градиента политики.

Знаменитая программа OpenAI Five научилась выигрывать у опытных игроков в известную компьютерную игру Dota 2. Это было в 2018 году, и опять же в сердце этой системы лежит натренированная методом градиента политики LSTM, которая отвечает за 84% параметров модели, то есть 84% корректируемых параметров были параметрами LSTM. Сам Билл Гейтс назвал это важной вехой в истории развития ИИ.



Источник: ПостНаука
Категория:

Хочу быть в курсе

Спасибо!