Следующий, 2012 г. ознаменовал собой решающий шаг[37]. Началась новая эра, время всеобщего признания эффективности сверточных сетей. Им будет посвящена отдельная глава этой книги.
Глава 3
Простые обучающие машины
Машину можно обучить выполнять простую задачу: например, настраивать угол поворота рулевого колеса или распознавать буквы. С точки зрения, находящейся примерно посередине между информатикой и математикой, обучение машины состоит в параметризации функции f(x) в ней таким образом, чтобы из входящей информации (изображение, звук, текст) получались ожидаемые выходы (идентификация изображения, звука или текста).
Мягкотелые как источник вдохновения
Долгое время любимцем нейробиологов был один вид моллюсков, называемый «аплизия». Дело в том, что благодаря своим элементарным реакциям на внешние раздражители это животное демонстрировало, как адаптируются синаптические связи, послужившие моделью для обучающихся машин.
Весьма просто устроенная нервная система аплизии управляет в том числе деятельностью наружных жабр, с помощью которых она дышит. Если коснуться жабр пальцем, моллюск их втянет и выпустит обратно лишь через некоторое время.
Если повторить касание, он снова их втянет и опять через некоторое время выпустит. Если повторить это действие еще раз, жабры снова втянутся, но уже немного меньше. В конечном итоге аплизия почти перестанет реагировать на прикосновение и будет выпускать жабры обратно сразу же после касания. Это значит, что моллюск привык к беспокойствам со стороны внешнего мира. Он как бы говорит себе, что в конце концов ситуация не слишком серьезна, поэтому ее можно проигнорировать.
Психиатр и нейробиолог Эрик Кандел исследовал нейронную сеть, которая управляет изменением поведения аплизии. Втягивание жабр происходит в результате изменений в эффективности синапсов, соединяющих те нейроны, которые воспринимают прикосновение, и те, что вызывают втягивание. Чем сильнее раздражитель, тем сильнее снижается эффективность синапсов и тем меньше втягиваются жабры. Кандел исследовал биохимические механизмы, которые заставляют эти синапсы менять эффективность, что, в конечном счете, влияет на поведение этого моллюска. Иначе говоря, он объяснил механизм адаптации аплизии к повторяющимся раздражителям. Эта работа принесла ему Нобелевскую премию по физиологии в 2000 г.
Этот механизм адаптации или обучения путем изменения синаптической эффективности присутствует почти у всех животных, имеющих настоящую нервную систему. Для справки: мозг – это сеть нейронов, соединенных синапсами, большинство из которых можно изменить путем обучения. Это определение применимо ко всей цепочке живых существ, от крошечного червя Caenorhabditis elegans длиной всего в 1 мм с 302 нейронами, до аплизии и ее 18 000 нейронов, до мухи-дрозофилы (250 000 нейронов и 10 млн синапсов), мыши (71 млн нейронов и около миллиарда синапсов), кролика и осьминога (полмиллиарда нейронов), кошки и сороки (800 млн нейронов), собаки и свиньи (2,2 млрд), орангутанга и гориллы (32 млрд нейронов) и, наконец, человека с его 86 млрд нейронов и примерно 150 000 млрд синапсов. Перед нами одна из величайших загадок интеллекта: как разумное поведение возникает из сети очень простых взаимодействующих единиц, меняя связи между ними.
Воспроизведение мышления – цель исследования машинного обучения на основе искусственных нейронных сетей. Обучение путем корректировки эффективности синапсов является примером того, что статистики с середины XX в. называют «идентификацией параметров модели».
Изучение и минимизация ошибок: пример
Допустим, вы хотите построить автомобиль, который управляет своим движением, имитируя водителя-человека. Что нужно делать?
Первый шаг – собрать данные, полученные от опытного водителя, то есть записать положение автомобиля на трассе и то, как водитель корректирует это положение, поворачивая рулевое колесо, чтобы удерживать автомобиль по центру дорожной полосы.
Можно представить себе измерение положения автомобиля в полосе движения, анализируя изображение камеры, которая фиксирует белые линии. Каждую десятую долю секунды регистрируется положение автомобиля относительно дорожной разметки и угол поворота рулевого колеса. В результате получается большой объем данных. За один час это составляет 36 000 положений автомобиля и углов поворота руля!
Давайте перенесем эту модель на график: положение автомобиля представляет переменную x (ось абсцисс), мы называем это «входом в систему». Если ширина полосы 4 м, то x будет равно 0, когда автомобиль находится посередине, 2 м, когда автомобиль пересекает дорожную разметку справа, и –2 м, если она пересекает разметку слева. Таким же образом, угол поворота рулевого колеса является переменной y (ось ординат на графике). Это называется «выход системы». Он выдает угол поворота рулевого колеса в градусах, например, 5°, чтобы повернуть немного влево, 0°, чтобы держать рулевое колесо прямо, и –5°, чтобы повернуть немного вправо.
37
Yann LeCun, Yoshua Bengio, Geoffrey Hinton, «Deep learning», Nature, 2015, 521, p. 436–444.