Как учится машина. Революция в области нейронных сетей и глубокого обучения - Ян Лекун
После LAGR моя лаборатория приняла участие в проекте глубокого обучения, финансируемом DARPA. Впервые мы столкнулись с тем, что идеально соответствовало нашим интересам! Но это было начало 2009 г., администрация США сменилась, а руководство DARPA все ждало подходящего момента. Финансирование проекта то утверждалось, то откладывалось, а затем сократилось. В самом начале сотрудничества с нашей лабораторией уставший от неопределенности руководитель проекта подал в отставку. Его преемник пытался все остановить. Мы спорили с ним, но добивались успеха, только если работали над второстепенными для нас темами. Мы по-прежнему работали над системой семантической сегментации естественных изображений, которая уже била рекорды по точности и скорости.
Все еще скептически настроенное сообщество исследователей компьютерного зрения отвергло нашу статью на конференции CVPR 2012 г., несмотря на хорошие результаты. Рецензенты, оценивавшие наш текст, не понимали, как сверточные сети, о которых они никогда не слышали, могут работать так хорошо. Все происходящее напомнило мне старый анекдот: «Конечно, это хорошо работает на практике. Но работает ли это в теории?» Рецензенты не видели смысла в обучении сквозной системы технического зрения, имея в руках лишь такую небольшую разработку. Один из них, например, заметил, что если машина все распознает, научное сообщество не поймет проблему компьютерного зрения! К счастью, через несколько месяцев статья была принята на ICML, крупной конференции по машинному обучению.
Тем временем глубокое обучение начали признавать. Стали появляться новые базы данных изображений, размер которых увеличивался, что очень благоприятствовало обучения больших глубоких нейронных сетей.
Примерно в 2010 г. появились и первые результаты глубокого обучения распознаванию речи. Это были еще не сверточные сети, но их появление было не за горами. Тремя наиболее продвинутыми компаниями в этой области стали Google, Microsoft и IBM. У Джеффри Хинтона появилась блестящая идея: летом во время стажировки он послал трех своих докторантов в каждую из этих компаний с инструкциями по замене центрального модуля их системы глубокой нейронной сетью. Попытка оказалась успешной, производительность всюду значительно улучшилась. Менее чем через 18 месяцев сразу три компании внедрили новые системы распознавания речи, основанные на глубоком обучении. Теперь мы говорили с нашим виртуальным компьютерным помощником, и сверточная сеть сразу переводила нашу речь в текст. Прогресс был настолько стремительным, что позволил создавать новые потребительские товары, активируемые речью.
Усовершенствование компьютерного оборудования тоже вносило свой вклад. Развитие графических процессоров (GPU) увеличивало вычислительную мощность компьютеров. В 2006 г. мой друг и бывший коллега по Bell Labs Патрис Симард из Microsoft Research впервые решил провести эксперимент с использованием графических процессоров (GPU) для нейронных сетей. Другие исследователи из Стэнфордского университета, IDSIA[36] (Швейцарского исследовательского института ИИ), Монреаля и Торонто продолжили эту работу. В 2011 г. стало ясно, что будущее принадлежит тем, кто будет обучать большие нейронные сети на графических процессорах. Они должны были стать проводником новой революции глубокого обучения.
Следующий, 2012 г. ознаменовал собой решающий шаг[37]. Началась новая эра, время всеобщего признания эффективности сверточных сетей. Им будет посвящена отдельная глава этой книги.
Глава 3
Простые обучающие машины
Машину можно обучить выполнять простую задачу: например, настраивать угол поворота рулевого колеса или распознавать буквы. С точки зрения, находящейся примерно посередине между информатикой и математикой, обучение машины состоит в параметризации функции f(x) в ней таким образом, чтобы из входящей информации (изображение, звук, текст) получались ожидаемые выходы (идентификация изображения, звука или текста).
Мягкотелые как источник вдохновения
Долгое время любимцем нейробиологов был один вид моллюсков, называемый «аплизия». Дело в том, что благодаря своим элементарным реакциям на внешние раздражители это животное демонстрировало, как адаптируются синаптические связи, послужившие моделью для обучающихся машин.
Весьма просто устроенная нервная система аплизии управляет в том числе деятельностью наружных жабр, с помощью которых она дышит. Если коснуться жабр пальцем, моллюск их втянет и выпустит обратно лишь через некоторое время.
Если повторить касание, он снова их втянет и опять через некоторое время выпустит. Если повторить это действие еще раз, жабры снова втянутся, но уже немного меньше. В конечном итоге аплизия почти перестанет реагировать на прикосновение и будет выпускать жабры обратно сразу же после касания. Это значит, что моллюск привык к беспокойствам со стороны внешнего мира. Он как бы говорит себе, что в конце концов ситуация не слишком серьезна, поэтому ее можно проигнорировать.
Психиатр и нейробиолог Эрик Кандел исследовал нейронную сеть, которая управляет изменением поведения аплизии. Втягивание жабр происходит в результате изменений в эффективности синапсов, соединяющих те нейроны, которые воспринимают прикосновение, и те, что вызывают втягивание. Чем сильнее раздражитель, тем сильнее снижается эффективность синапсов и тем меньше втягиваются жабры. Кандел исследовал биохимические механизмы, которые заставляют эти синапсы менять эффективность, что, в конечном счете, влияет на поведение этого моллюска. Иначе говоря, он объяснил механизм адаптации аплизии к повторяющимся раздражителям. Эта работа принесла ему Нобелевскую премию по физиологии в 2000 г.
Этот механизм адаптации или обучения путем изменения синаптической эффективности присутствует почти у всех животных, имеющих настоящую нервную систему. Для справки: мозг – это сеть нейронов, соединенных синапсами, большинство из которых можно изменить путем обучения. Это определение применимо ко всей цепочке живых существ, от крошечного червя Caenorhabditis elegans длиной всего в 1 мм с 302 нейронами, до аплизии и ее 18 000 нейронов, до мухи-дрозофилы (250 000 нейронов и 10 млн синапсов), мыши (71 млн нейронов и около миллиарда синапсов), кролика и осьминога (полмиллиарда нейронов), кошки и сороки (800 млн нейронов), собаки и свиньи (2,2 млрд), орангутанга и гориллы (32 млрд нейронов) и, наконец, человека с его 86 млрд нейронов и примерно 150 000 млрд синапсов. Перед нами одна из