Долгая краткосрочная память - Юрген ШмидхуберИсточник: ai-news
Профессор искусственного интеллекта Юрген Шмидхубер о том, как долгая краткосрочная память улучшила работу известных сервисов и научила программы обыгрывать профессиональных игроков в Dota 2 Эта лекция - часть курса "Глубокое обучение", который мы делаем вместе с организаторами технологического конкурса 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. Сам Билл Гейтс назвал это важной вехой в истории развития ИИ. |