Обратите внимание, что на рисунке эти три линии, участвующие в распознавании буквы А, – веса В2, В4 и В5 – более жирные, что призвано подчеркнуть их важность. В следующий раз, когда перцептрону покажут букву, он придаст сообщениям от этих детекторов больший вес.
Теперь предположим, что А-распознающему перцептрону показывают букву Б. В этом случае среагирует детектор вертикальных линий и детектор горизонтальных линий. Но из них двоих для перцептрона имеет значение только сигнал детектора горизонтальных линий. Поскольку два других значимых детектора 2 и 5 молчат, центр решений получает слишком слабый суммарный сигнал и поэтому делает вывод: «Это не буква А».
Следующий важный тест, помогающий понять, как устроено восприятие у машин или мозга, – изменить размер изображения. Мы снова показываем перцептрону букву А, но на этот раз меньшего размера. Как вы помните, машина на основе шаблонов не смогла справиться с этим тестом, потому что маленькая буква А не соответствовала оригинальному шаблону. Но нашему перцептрону достаточно задать всего одно условие: чтобы его детекторы реагировали на линию определенной ориентации независимо от ее размера и местоположения внутри рецептивного поля. В этом случае наш перцептрон получит сигналы, что в этом маленьком символе есть две наклонные линии (слева направо и справа налево) и одна горизонтальная, – и распознает его как букву А.
Как вы обратили внимание, ключевое условие, заданное детекторам в этом примере, полностью соответствует тому, что делают «сложные» клетки зрительной коры. Как и детекторы в нашем гипотетическом перцептроне, эти сложные клетки чувствительны к линиям определенной ориентации независимо от их местоположения в рецептивном поле. Таким образом, эта модель показывает, как со сложной клетки визуальной коры V1 – довольно простого детектора признака, находящегося на относительно ранней стадии визуальной обработки, – начинает выстраиваться распознавание визуальных объектов. Недаром Ян Лекун, один из гигантов в области искусственного интеллекта, сказал, что для него сложные клетки – важный источник вдохновения.
Перцептроны были интересной новинкой, но затем произошло нечто странное: интерес к этому типу искусственного интеллекта почти умер – и возродился лишь четверть века спустя. Впоследствии этот период примерно с 1965 по 1985 г. назвали зимой искусственного интеллекта. В эти годы идею обучающейся машины вроде перцептрона фактически признали бесперспективной. Теперь мы знаем, что это было ошибкой. Сегодня основанный на этих принципах искусственный интеллект догоняет человека. Но почему машинное обучение вызвало такое разочарование?
Во-первых, ИИ в основном являлся плодом эмпирического предположения, не имевшего солидного теоретического фундамента (то есть фундамента, изложенного на языке чистой математики). Это было серьезным недостатком. В те времена в области вычислительной науки работали преимущественно люди с математическим образованием, которые считали недостойным внимания все то, что нельзя было описать математически. На самом деле один ведущий теоретик посвятил целую книгу математическому доказательству того, что простая нейронная сеть такого типа неспособна научиться ничему важному.
Сегодня мы знаем, что он был неправ. Но мы узнали это не с помощью математической теории, а эмпирическим путем – создавая компьютеризированные нейронные сети, которые на деле доказали свою работоспособность.
Вторая причина отсутствия интереса к машинному обучению была чисто практической: в те времена компьютеры были невероятно медленными по сегодняшним меркам и работать с ними было невероятно сложно. Математическая теория оставалась доминирующим инструментом просто потому, что других инструментов как таковых не существовало. Но с появлением все более мощных компьютеров и развитием компьютерных наук растущую роль стал играть элемент эмпиризма, простого метода проб и ошибок. Отныне доказательством могли служить не только математические теории, но и полученные результаты: если нейронные сети работают, значит, они работают, а теория подоспеет, как бы она ни была важна.
Сегодня быстрые и мощные компьютеры и огромные учебные базы данных вывели базовую идею перцептрона на потрясающий новый уровень. На рисунке на следующей странице показана классическая схема современной нейронной сети. Как видите, она состоит из все тех же простых перцептронов, только организованных в несколько взаимосвязанных слоев. Входной слой снабжает входными данными группу из семи перцептронов, а эти семь перцептронов передают обработанные данные на второй слой перцептронов и т. д., вплоть до выхода.
Название «нейронные сети» говорит о том, что эти искусственные модели стремятся имитировать работу живого мозга. Хотя ученые иногда называют их случайными, мы-то знаем, что в действительности они не являются таковыми ни в машинах, ни в живом мозге – просто мы пока не знаем всех правил, по которым они работают. Нам известно, что между искусственными и живыми нейронными сетями есть много общего: те и другие состоят из множества слоев (перцептронов или нейронов). В биологических системах многократная стимуляция одинаковыми входными сигналами приводит к усилению синаптических связей между нейронами. Машинные сети также способны становиться умнее благодаря настройке связей (усилению одних и ослаблению других) между отдельными элементами в процессе обучения.
Как мы увидели, важнейшую роль в машинном обучении играет процесс обратного распространения. Получив ввод от учителя («Это буква А»), современная нейронная сеть производит вычисления в обратном направлении – от выходного слоя к входному, настраивая связи между десятками и даже сотнями скрытых нейронных слоев. (Их называют скрытыми, потому что они, в отличие от входного и выходного слоев, не контактируют напрямую с внешним миром.) Так что теперь перед нейробиологами стоит задача: узнать, делает ли мозг то же самое и, если да, как именно.
Надеюсь, мои друзья, работающие в сфере машинного обучения, простят меня за столь примитивный рассказ, потому что современные системы искусственного интеллекта гораздо, несравнимо сложнее, чем я вам здесь показал. Взять хотя бы тот факт, что синаптические связи между элементами искусственной сети невозможно усиливать до бесконечности: рано или поздно система достигает предела, выше которого повышение эффективности связей становится невозможным. В этом случае решение состоит в том, чтобы разрешить отрицательную настройку связей – использовать тормозные «анти-Хеббовские» синапсы.
Современные нейронные сети могут принимать любой ввод, выраженный в понятной компьютеру форме: изображения (двумерные матрицы пикселей), объемные объекты (трехмерные матрицы пикселей, называемых вокселями), звуки (последовательности волн давления, оцифрованные надлежащим образом) и даже малограмотную болтовню в социальных сетях. Одним из удивительных ранних примеров стала нейронная сеть, способная обнаруживать начинающиеся эпидемии гриппа. Входными данными для этой сети были написанные разговорным, зачастую неграмотным языком сообщения пользователей на страницах городских форумов в Facebook. В качестве «учителя» использовались отчеты об эпидемиологической обстановке, публикуемые Центрами по контролю и профилактике заболеваний (США). Пройдя обучение, нейронная сеть научилась определять, что в данном городе началась эпидемия гриппа, еще до того, как официальная статистика показывала всплеск заболеваемости. Я не знаю, как именно это делалось, но предполагаю, что среди огромного множества постов на Facebook увеличивалось количество сообщений, связанных со здоровьем, а также частота употребления конкретных слов, таких как «простудился», «провалялся», «разбитый» и т. п. Здесь нет никакой магии; в принципе, такие корреляции мог бы выявить и человек, если бы задался целью проанализировать содержание всех этих миллиардов постов. К счастью, для этого у нас есть компьютеры, а человеческий мозг может заняться более интересными делами.
Как и живой мозг, системы ИИ стремятся быть устойчивыми к повреждению. Если компьютерная нейронная сеть насчитывает мириады соединений, потеря небольшой их части, как правило, незначительно отражается на ее производительности, поскольку каждое соединение содержит лишь крошечную долю от всей совокупности «знаний» сети. Конечно, это неизбежно влечет за собой небольшую функциональную потерю в каком-либо месте, но машина продолжает работать. Как вы помните, такую же удивительную отказоустойчивость нейрохирург Пенфилд обнаружил и у человеческого мозга, который оказался способным функционировать практически нормально даже при удалении значительных участков.
Наконец, как это ни парадоксально, нам вовсе не обязательно знать, что делает каждый скрытый слой в многослойной нейронной сети. Насколько мне известно, никто точно не знает, как нейронная сеть Siri от Apple превращает устную речь в символы на экране айфона. В принципе, это можно узнать: весь секрет кроется в наборе весовых коэффициентов, определяемых для соединений сети. Но, поскольку в этой сети миллиарды соединений, отслеживание того, как именно она распознает фонемы (звуковые единицы), скажем, в произнесенном слове «собака», вряд ли стоит усилий. Если машина работает, значит, она работает.
Несмотря на «зиму искусственного интеллекта», небольшая группа ученых во главе с Джеффри Хинтоном из Торонто продолжала упрямо разрабатывать концепцию нейронных сетей. Одним из них был Терренс Сейновски, в то время работавший в Университете Джонса Хопкинса. По словам Терри, к счастью, он не читал работу того авторитетного автора, который доказал, что нейронные сети не могут научиться ничему важному. Поэтому он продолжал ими заниматься[27].
Терри Сейновски – выдающаяся и необычная личность. Научную деятельность он начал на знаменитом факультете физики в Принстонском университете, где опубликовал серию теоретико-математических работ о поведении нейронов в головном мозге. После чего неожиданно поступил в аспирантуру на кафедру Стивена Куффлера в Гарварде.
Это был серьезный поворот в научной карьере Терри. Вечный экспериментатор, Куффлер предпочитал изучать нервную систему, в буквальном смысле слова закатав рукава, и не очень любил теоретизировать. Тем не менее из орды соискателей докторской степени он почему-то выбрал Сейновски.
Возможно, Куффлер увидел в нем те же качества, ту же сущностную простоту, которая была присуща ему самому. Сейновски относится к разряду людей, которых сейчас принято называть убергиком (
Взять хотя бы его манеру одеваться: Терри предпочитает белые рубашки, темные костюмы и классические черные туфли. Большинство ученых жаждут подчеркнуть свою индивидуальность – носят джинсы с биркенштоками, футболки и свитера, водят малолитражки, и многие отращивают бороды. У этого клана свои жесткие нормы и обычаи. Постдок, который приходил на работу на кафедру Куффлера в строгом темно-синем костюме, совершенно явно следовал своим собственным путем. Однажды я пригласил его покататься на яхте, и он явился в элегантных шерстяных брюках и черных туфлях на кожаной подошве.