История искусственного интеллекта в современном понимании берет начало с Дартмутского семинара, на котором впервые и прозвучал сам термин «искусственный интеллект». Семинар проходил летом 1956 г. в Дартмутском колледже недалеко от Ганновера, штат Нью-Гэмпшир, и был организован двумя исследователями – Марвином Мински и Джоном МакКарти. Марвин Мински был увлечен концепцией самообучающейся машины. В 1951 г. он в компании еще одного студента из Принстона построил одну из первых подобных машин, SNARC, небольшую электронную нейронную сеть с 40 «синапсами», способную к элементарному обучению. Джон МакКарти, в свою очередь, изобрел LISP, язык программирования, широко используемый в разработке ИИ.
Джону МакКарти также приписывают применение графов для создания шахматных программ. В работе семинара приняло участие около 20 исследователей, в том числе Клод Шеннон, инженер-электротехник и математик из Bell Labs (лаборатории гигантской телефонной компании AT&T в Нью-Джерси), Натан Рочестер из IBM и Рэй Соломонофф – основоположник концепции машинного обучения.
Участники бурно обсуждали области, движимые зарождающимися автоматизированными вычислениями и кибернетикой: изучение правил в естественных и искусственных системах, сложная обработка информации, искусственные нейронные сети, теория автоматов… На этом небольшом семинаре были разработаны и декларированы основные принципы и подходы к созданию искусственного интеллекта. Сам термин предложил все тот же Джон МакКарти.
Логика превыше всего
В настоящее время часть ученых представляет себе интеллектуальные машины, работающие только на основе логики и использующие для этого деревья поиска и экспертные системы. Инженер вводит в систему данные и правила их обработки, а система извлекает из них результаты вычислений или анализа. Более широкая цель ученых заключается в создании машины, способной заменить человека в сложных рассуждениях. Аллан Ньюэлл и Герберт Саймон из Университета Карнеги-Меллона в Питтсбурге первыми разработали программу Logic Theorist («Логический теоретик»), которая умела доказывать простые математические теоремы, исследуя дерево поиска, составленное из преобразований математических формул. Это было прекрасное время.
Однако через некоторое время тематика ИИ надолго погрузилась в спячку. В 1970 г. Агентство Министерства обороны США ARPA[11] сократило бюджеты фундаментальных исследований в области ИИ. Три года спустя, после отчёта Лайтхилла, который дал крайне пессимистические прогнозы для будущих исследований в области искусственного интеллекта, Великобритания сделала то же самое. Нет денег – нет исследований…
Процесс сдвинулся с мертвой точки в начале 1980-х. В то время большие надежды подавали экспертные системы, и Япония запустила амбициозный проект по созданию «компьютера пятого поколения», который должен был интегрировать навыки логического мышления в саму его конструкцию. Он должен был уметь вести беседу, переводить тексты, интерпретировать изображения и, возможно, даже рассуждать, как человек. К сожалению, эта идея себя не оправдала. Разработка и коммерциализация экспертных систем, таких как MYCIN, о которой мы уже говорили, оказались намного сложнее, чем ожидалось.
Идея поставить рядом с врачами или инженерами когнитологов (специалистов по восприятию и познанию), пытавшихся записать ход их мыслей или рассуждений в процессе диагностики болезни или неисправности, не сработала. Это опять оказалось сложнее, дороже и вовсе не так надежно, как предполагалось вначале, и к тому же упрощало знания и опыт, накопленные специалистом, до примитивного набора правил.
С этим «классическим» интеллектом, который так трудно воспроизвести, связаны алгоритмы на графах, которые тоже имели в свое время оглушительный успех.
Игровой мир
В 1997 г. чемпиона мира по шахматам Гарри Каспарова пригласили в Нью-Йорк принять участие в матче из шести партий против Deep Blue, суперкомпьютера, созданного транснациональной корпорацией IBM, – монстра высотой почти 2 м и весом 1,4 т. В шестой, заключительной партии матча, которую предваряли три ничьи и по одной победе с каждой стороны, Гарри Каспаров сдался уже на двадцатом ходу. Он признался, что был поражен и побежден вычислительной мощью машины.
Давайте на минутку остановимся на устройстве Deep Blue. В компьютере было 30 процессоров, дополненных 480 схемами, специально разработанными для проверки позиций на шахматной доске. Обладая такой вычислительной мощностью, машина могла оценивать качество примерно 200 млн позиций на доске в секунду, используя классические алгоритмы деревьев поиска.
Несколько лет спустя, 14, 15 и 16 февраля 2011 г., после трех раундов игры компьютер IBM Watson одержал победу в американской игре-викторине – Jeopardy! Аватар компьютера, размещенный между двумя чемпионами, представлял собой земной шар, покрытый световыми лучами. Программа, написанная учеными-компьютерщиками, удаляла из вопроса ненужные слова (артикли, предлоги…), определяла значимые слова и искала эти слова в огромном количестве текстов, порядка 200 млн страниц, определяя там те предложения, в которых можно было найти ответ.
Эти тексты, а именно вся Википедия, энциклопедии, словари, тезаурусы, сообщения информационных агентств, литературные произведения, хранились в его оперативной памяти объемом 16 терабайт[12] (жесткие диски были бы слишком медленными для таких задач). Сотни тысяч объектов и имен собственных сформировали большой список записей, каждая из которых относилась к определенной статье Википедии, веб-странице или тексту, где она появилась… Система Watson проверяла, существует ли документ, в котором присутствует часть ключевых терминов вопроса. После этой проверки проблема сводилась к нахождению правильного ответа в статье.
Например, если бы вопрос звучал так: «Где родился Барак Обама?», система Watson знала, что ответом будет название места. В ее базе данных был список всех документов, в которых упоминался Барак Обама. Поэтому где-нибудь обязательно нашлась бы статья со словами «Обама», «родился» и «Гавайи». Затем машине просто нужно было выбрать слово «Гавайи», соответствующее ответу. Watson, по сути, состояла из системы быстрого поиска информации в сочетании с хорошей индексацией данных. Но эта система не понимала смысла вопроса. Она вела себя как школьник, выполняющий домашнее задание с открытой книгой (или открытой Википедией!). На заданный вопрос она может найти правильный ответ в учебнике и переписать его, ничего не понимая в том, что пишет.
В 2016 г. появляется еще одно достижение. В Сеуле южнокорейский чемпион по игре в го был побежден своим компьютерным противником AlphaGo, внушительной системой, разработанной DeepMind, дочерней компанией Google. Восемнадцатикратный чемпион мира Ли Седоль проиграл машине четыре игры из пяти. В отличие от Deep Blue, AlphaGo была «обучена». Она тренировалась, играя против самой себя, сочетая при этом несколько хорошо известных методов: сверточные сети, усиленное обучение и метод Монте-Карло для поиска в дереве, метод «рандомизированных деревьев поиска». Впрочем, не будем забегать вперед.
Нейробиология и перцептрон
В 1950-х гг., когда «великие магистры» классического искусственного интеллекта, основанного на логике и графах, раздвинули границы его применения, пионеры машинного обучения сформулировали альтернативные идеи. Они были уверены, что логики недостаточно, чтобы компьютерные системы были способны решать сложные задачи. Необходимо было приблизиться к функционированию мозга и тем самым сделать системы способными программировать самих себя, опираясь на механизмы обучения мозга. Это направление основано на так называемом «глубоком обучении» (deep learning) и искусственных нейронных сетях, – именно в этой области я и работаю. На подобных механизмах основана работа большинства продвинутых современных приложений, включая автономные автомобили.