Экспертные системы, основывающиеся на определенных правилах, были популярны в 1970–1980-х годах. Их цель – решение таких проблем, как постановка медицинского диагноза, с помощью набора правил. Одна из первых экспертная систем MYCIN, например, была специально разработана для анализа на бактерии, вызывающие различные инфекции, в том числе менингит. Первый шаг – сбор правил и фактов, которыми руководствуются врачи-инфекционисты. Далее были добавлены истории болезни и диагнозы пациентов, и на их основе сделаны соответствующие логические выводы. Слабым местом такого подхода был сбор экспертной информации, особенно если речь шла о сложных проблемах. Лучшие диагносты не используют правила, они полагаются на свой опыт, а его трудно кодифицировать. Более того, экспертная система должна постоянно обновляться: нужно вносить в базу данных новые факты и убирать оттуда устаревшие. На практике MYCIN никогда не использовалась врачами, потому что все вопросы, которые система задает пациенту, требовалось вносить в компьютер, а занятой врач не может тратить на это по полчаса каждый раз. Однако многие экспертные системы были написаны для других целей, например для управления разливом токсичных веществ, планирования маршрута для беспилотных транспортных средств и распознавания речи. Некоторые из них используются до сих пор.
В первые десятилетия существования ИИ были изучены многие направления, но дальнейшая их разработка оказалась более трудоемкой, нежели действительно полезной. Недооценивали не только сложность проблем реального мира, но и масштаб возможных решений. В комплексных областях, когда число различных правил может быть огромным, а новые факты и поправки добавляются вручную, отслеживание исключений и взаимодействия с другими правилами становится нецелесообразным. Например, в 1984 году Дуглас Ленат запустил проект CYC с целью систематизировать здравый смысл. Поначалу идея казалась хорошей, но впоследствии она обернулась катастрофой. Мы воспринимаем как данность огромное количество фактов об окружающем нас мире. Множество из них основываются на опыте. Например, кот, упавший с высоты в 7,5 метра, скорее всего, избежит травм, в то время как человек – нет.
Еще одна причина, почему ИИ развивался медленно, заключалась в том, что цифровые компьютеры были примитивными, а накопители данных – непростительно дорогими по нынешним меркам. Тем не менее ЭВМ очень эффективны при выполнении логических операций, манипулировании символами и применении правил, поэтому неудивительно, что в XX веке они стали популярны. Например, Аллен Ньюэлл и Герберт Саймон, программисты из Университета Карнеги – Меллона, в 1955 году написали программу Logic Theorist, которая могла доказывать теоремы из сборника Бертрана Рассела «Начала математики» – одной из первых попыток систематизировать всю математику. На заре развития ИИ люди надеялись, что появление «умных» компьютеров уже не за горами.
Пионеры в области ИИ старались писать программы, обладающие возможностями человеческого интеллекта, однако не задумывались о том, как мозг приходит к разумному поведению. Однажды я спросил Аллена Ньюэлла, почему они игнорировали это. Он ответил, что хотел исследовать мозг, однако в то время о нем было известно слишком мало, чтобы знания удалось применить. Основные принципы работы мозга были открыты только в 1950-х годах в классической работе Алана Ходжкина и Эндрю Хаксли, в которой объясняется, как благодаря колебаниям нервов передаются сигналы в мозг. Также свой вклад в изучение функционирования мозга внес Бернард Кац, открывший, как электрические сигналы конвертируются в химические сигналы в синапсе, осуществляющем связь между нейронами.
К 1980-м годам мозг исследовали более подробно, а полученные знания выходили далеко за пределы биологии. Но к тому времени мозг как образец стал неактуален для следующего поколения разработчиков ИИ, а их целью было написать программу, которая функционировала бы схожим образом. Это было хорошим поводом игнорировать неясные детали в биологии. Тем не менее небольшая группа ученых, не подвергшихся влиянию новых взглядов на ИИ, верила, что путь к развитию ИИ лежит через познание биологических основ мозга, называемый нейронными сетями, с прямой связью и параллельной обработкой, и что именно он поможет решить проблемы, с которыми не справились ИИ на базе логических схем.
Я был одним из них.
В 1989 году глава компьютерной научной лаборатории МТИ Михалис Дертузос пригласил меня прочитать лекцию в МТИ (рис. 2.5). Я был одним из первых, кто изучал новый подход к развитию ИИ, основанному на нейронных сетях, и меня удостоили чести побывать в святая святых ИИ. Я прибыл в МТИ до полудня и был тепло встречен Дертузосом. Он написал книгу о будущем компьютерных технологий, что дало нам почву для беседы. Когда мы ехали в лифте, чтобы пообедать, он сказал мне, что на их факультете есть особая традиция: за обедом студенты разговаривают с лектором, и у меня будет пять минут, чтобы начать беседу. «И кстати, – добавил он, – они ненавидят то, что вы делаете».
Столовая была битком набита народом, что даже удивило Дертузоса. Ученые стояли в три ряда: в первом – старшие преподаватели, во втором – младшие, а за ними, в третьем ряду, студенты. Я, конечно, не считал, но там было человек сто. Я стоял в центре, перед буфетом, как главное блюдо. Что интересного я мог сказать за пять минут людям, которые ненавидят мою работу?
Тогда я решил импровизировать. «Мозг мухи состоит всего из ста тысяч нейронов; он весит миллиграмм и потребляет милливатт энергии, – сказал я, сочиняя свою речь буквально на ходу. – Муха может видеть, летать, ориентироваться в пространстве и находить еду. Но что более примечательно, у нее есть репродуктивная функция. В МТИ есть суперкомпьютер стоимостью в десять миллионов долларов, он потребляет мегаватт энергии и охлаждается огромным кондиционером. Но самое дорогое в нем – жертвы в лице программистов, жаждущих утолить свой ненасытный голод к составлению программ. Этот суперкомпьютер, хоть и умеет контактировать с другими компьютерами, не может видеть, летать, спариваться и размножаться. Почему же?»
Рис. 2.5. Автор во время посещения МТИ в 1988 году. Монитор на заднем плане напоминает о статическом электричестве, которое заставляло мои волосы вставать дыбом
После долгой паузы один из старших преподавателей ответил: «Потому что мы еще не написали программу зрительного восприятия». Министерство обороны США недавно вложило 600 миллионов долларов в десятилетний проект «Стратегической компьютерной инициативы», который продвинулся лишь на шаг в вопросе компьютерного зрения, что позволило создать самозаправляющийся танк. «Удачи!» – таков был мой ответ им.
Присутствовавший там Джеральд Сассман, сделавший несколько важных открытий, которые приблизили ИИ к реальному миру (в числе его изобретений – система высокоточной интеграции для орбитальной механики), начал отстаивать подход МТИ к ИИ, ссылаясь на работу Алана Тьюринга, доказавшего, что изобретенная им машина может вычислить любую вычислимую функцию.
«И сколько времени это займет? Вам нужно работать быстрее, иначе вас съедят!» – сказав это, я пошел наливать себе кофе. Мой диалог с представителями факультета был закончен.
На этот вопрос может ответить каждый студент из моей лаборатории. После того как разошлись первые два ряда зрителей, студент из третьего ряда предложил свой вариант: «Цифровой компьютер – устройство общего назначения, который можно запрограммировать на вычисление всего, что угодно, однако не всегда удачно. Муха – компьютер специального назначения, который может видеть и летать, но не может проверить баланс моего счета». Это был верный ответ. Глаза мухи эволюционировали сотни миллионов лет, и зрительные алгоритмы встроены в эту систему. Именно поэтому мы можем воссоздать зрение мухи, разработав схему подключения к потоку информации и продвижения по нему через нейронные сети, и не можем сделать это для цифрового компьютера, который требует программного обеспечения, указывающего, какая задача сейчас решается.
Я узнал младшего преподавателя, улыбавшегося в задних рядах. Однажды я пригласил его на семинар по компьютерной нейробиологии в Вудсхоулской лаборатория биологии моря на полуострове Кейп-Код. Родни Брукс родом из Австралии, в 1980-х годах он работал в Лаборатории искусственного интеллекта в МТИ и создавал шагающих роботов-насекомых, используя код, не зависящий от цифровой логики. В конечном итоге он стал главой этой лаборатории и основал компанию iRobot, производящую роботы-пылесосы Roomba.
Большой зал, где я читал свою лекцию, был заполнен студентами старших курсов, устремленными в будущее, а не обращающимися к прошлому. Я говорил о нейронной сети, научившейся играть в нарды, – проекте Джеральда Тезауро, физика из Центра исследования сложных систем в Иллинойсском университете в Урбане-Шампейне. В нардах два игрока стремятся привести к финишу свои фишки, по очереди бросая кости. Эта игра очень популярна на Ближнем Востоке, и некоторые даже зарабатывают ею себе на жизнь.
Это еще один подход к созданию ИИ. Написать программу, основанную на логике и эвристических алгоритмах, для обработки всех вероятных позиций на доске – невыполнимая задача, учитывая, что есть 1020 возможных положений. Вместо этого сеть научилась играть с помощью распознавания образов, наблюдая за игрой учителя. Джеральд Тезауро создал первую программу для игры в нарды, освоившую ее на уровне мировых чемпионатов за счет особой нейросети. Об этом будет рассказано в главе 10.
После лекции я узнал, что утром на первой полосе New York Times была опубликована статья о сокращении государственного финансирования исследования ИИ. Это было началом «зимы ИИ», но коснулось меня, так как начался расцвет нейронных сетей.
Оглядываясь назад, я удивляюсь, как смог пережить тот вечер. У нас была новая траектория развития ИИ, но понадобилось двадцать пять лет, чтобы создать работающие приложения для компьютерного зрения, речи и языка. Я должен был предположить, что это займет столько времени. В 1978 году, будучи аспирантом в Принстонском университете, я применил закон Мура, который гласит, что компьютерные мощности растут по экспоненте и удваиваются каждые 18 месяцев, чтобы посмотреть, сколько времени займет достижение компьютерами мощности человеческого мозга. Я пришел к выводу, что это случится в 2015 году. К счастью, это не остановило меня, и я продолжил двигаться вперед. Моя вера в нейронные сети была основана на интуитивной уверенности, что раз природа справилась, то мы должны перенять у нее способ решения данной проблемы. Те тридцать пять лет, которые я ждал, – всего лишь миг по сравнению с сотнями миллионов лет, потребовавшихся природе.
Внутри зрительной коры мозга нейроны расположены иерархичными слоями. По мере того как информация трансформируется слой за слоем, представление о мире становится все более абстрактным. Десятилетия, по мере увеличения числа слоев в искусственных нейронных сетях, их производительность продолжала расти, пока наконец не был достигнут критический порог, который позволил решить задачи, казавшиеся невозможными в 1980-х годах. Глубокое обучение автоматизировало поиск отличительных черт, позволяющих опознавать объекты на изображении. Вот почему компьютерное зрение сейчас гораздо лучше, чем пять лет назад.
К 2016 году компьютеры стали в миллион раз быстрее, а компьютерная память увеличилась в миллиарды раз, исчисляясь уже не мегабайтами, а терабайтами. Стало возможным создать нейронную сеть с миллионами компонентов и миллиардами связей. Для сравнения: в нейронных сетях 1980-х годов было всего несколько сотен компонентов и несколько тысяч связей. Современные нейронные сети все еще крошечные по сравнению с человеческим мозгом, в котором сто миллиардов нейронов и квадрильон синаптических связей. Тем не менее современные нейронные сети достаточно велики, чтобы продемонстрировать доказательства принципа в узких областях.
Глубокое обучение стало применяться в глубоких нейронных сетях. Но прежде чем начать работать с глубокими сетями, нам нужно было натренироваться на мелких.