Поговори с ИИ: Как искусственный интеллект пытается выучить язык людей
И почему ему бывает сложно поддерживать непринужденную беседу
В издательстве «Альпина нон-фикшн» вышла книга «Язык как инстинкт» Стивена Пинкера — исследователя и эксперта в области языка и мышления. Автор рассматривает огромный круг вопросов: для чего людям понадобился язык, как язык и мышление взаимно влияют друг на друга, могут ли разрушить язык постоянно попадающие в него новые слова (спойлер: через 10 тысяч лет любой современный язык может полностью обновиться). Это издание книги — обновленная версия с информацией о новых достижениях науки и проблемах. «Большой Город» публикует отрывок о том, как искусственный интеллект учит язык людей и почему пока он не может общаться так же, как человек.
Говорящие головы
Люди всегда боялись, что созданные ими системы или программы станут умнее их, сильнее и лишат работы. Этот страх обыгрывался в фантастических произведениях, начиная со средневековой еврейской легенды про Голема, человекоподобного создания из глины, ожившего после того, как в его рот положили надпись с именем Бога, и заканчивая компьютером HAL из романа «2001: Космическая одиссея». Однако, когда в 1950-х годах появилось новое направление инженерии под названием «искусственный интеллект», казалось, что вымысел совсем скоро превратится в пугающую реальность. Было легко принять, что компьютеры умеют определять число 兀 до миллионного знака после запятой или вести учет заработной платы в компании. Но компьютеры вдруг стали доказывать логические теоремы и играть на хорошем уровне в шахматы. За следующие несколько лет появились компьютеры, которые теперь обыгрывали всех, кроме разве что гроссмейстеров. Компьютерные программы могли превзойти большинство экспертов, назначая лечение от бактериальных инфекций или планируя инвестирование пенсионных накоплений. Когда компьютеры начали справляться с такими сложными заданиями, казалось, что появление в товарных каталогах C-3PO или Терминатора только дело времени. Единственное, что оставалось, — это запрограммировать компьютеры на выполнение простых задач. Согласно легенде, в 1970-х годах Марвин Минский, один из пионеров ИИ, назначил своему аспиранту в качестве летнего проекта создать программу визуализации.
Однако домашние роботы по-прежнему остаются лишь персонажами научной фантастики. Главный вывод, полученный за 35 лет исследований в области ИИ, состоит в том, что сложные проблемы на самом деле весьма просты, а самые простые — это самое сложное. Умственные способности четырехлетнего ребенка, которые мы воспринимаем как должное, — распознавание лица, поднятие карандаша, прогулка по комнате, ответ на вопрос — на самом деле являются самыми сложными задачами, стоящими перед инженерами. Пусть вас не сбивают с толку промышленные роботы на сборочных конвейерах в рекламе автомобилей: они лишь занимаются сваркой и распыляют краску из баллончиков. Для этого не требуются неуклюжие мистеры Магу, которые бы за чем-то следили, или что-то держали, или куда-то выкладывали. А вот если вы хотите поставить в тупик систему ИИ, то спросите ее, что больше — Чикаго или хлебница; носят ли зебры нижнее белье; может ли пол начать подниматься и укусить тебя; идет ли голова Сьюзан вместе с ней, если та идет в магазин. Большинство страхов, связанных с автоматизацией, необоснованны. Когда появится новое поколение устройств с ИИ, риск остаться без работы будет самым большим для биржевых аналитиков, петрохимических инженеров и членов совета по условно-досрочному освобождению. Садовникам, администраторам и поварам еще многие десятилетия будет гарантирована работа.
Понимание смысла предложения — еще одна из таких трудных задач. Чтобы взаимодействовать с компьютерами, нам по-прежнему надо учить их языки, поскольку они недостаточно умны, чтобы освоить наши. На самом деле мы слишком часто восхищаемся тем, как компьютер распознает речь — гораздо чаще, чем он того заслуживает.
Недавно был учрежден ежегодный конкурс по разработке компьютерной программы, которая лучше других сможет убедить пользователей, что они разговаривают с человеком, а не с компьютером. В соревновании на премию Лебнера проверялось предположение, высказанное Аланом Тьюрингом в знаменитой статье 1950 года. Он считал, что ответ на философский вопрос, могут ли машины думать, можно получить с помощью игры в имитацию, в которой эксперт общается с человеком на одном устройстве и с компьютером, имитирующим человека, — на другом. Если эксперт не может понять, где компьютер, а где человек, то, по мнению Тьюринга, нет оснований отрицать, что компьютер умеет думать. Если оставить в стороне философские вопросы, для жюри соревнования было очевидно, что ни одна программа не сможет и близко подойти к призу в 100 000 долларов, поэтому они учредили премию в 1 500 долларов для программы, которая справляется лучше всех на данный момент. Каждый эксперт должен был придерживаться одной темы разговора, выбранной программистом или обычным человеком, кто бы это ни был, а эксперту не разрешалось применять различные хитрости и другие ловкие приемы, такие как повторение одного и того же вопроса десять раз или вопросы о том, носит ли зебра нижнее белье, — разговор должен быть естественным. После общения с несколькими программами и их соперниками — людьми в течение примерно семи минут с каждым эксперты оценили всех людей более похожими на людей, чем компьютеры. Однако примерно половина экспертов ошибочно приняла победившую программу за человека.
Однако это достижение кажется более значительным, чем есть на самом деле. Правила конкурса связали экспертам руки: неестественные «хитрости и ловкие приемы» служат способом определить, с кем вы общаетесь: с человеком или с машиной, — а ведь в этом и есть смысл всего теста! Кроме того, победивший программист дальновидно воспользовался возможностью предложить тему разговора для своей программы. Он выбрал то, что можно было бы назвать «причудливым разговором» и весьма проблематично — «темой». Это обсуждение заведомо было лишено логики.
Эксперт: Какой же длинный день! Теперь, кажется, я готов повеселиться. Погода сегодня не очень хорошая. Может, у тебя есть шутки, которые помогли бы разогнать тучи?
Компьютер: Все говорят о погоде, но никто ничего не хочет с ней делать. Почему тебе нужно сообщать мне, что теперь ты готов повеселиться? Оооооооох...
Эксперт: Ты пытаешься все усложнить? Я же просто сказал, что готов повеселиться!
Компьютер: А ты бы предпочел, чтобы это было неправдой, что я пытаюсь все усложнить, да? Я только что объяснил, что готов веселиться! Следовательно, я считаю... Что побуждает тебя думать, что я пытаюсь все усложнить?
Эксперт: Не уверен, что я понимаю вопрос... Однако прихоти поэта — это одно, а прихоти большинства из нас — другое.
Компьютер: Откуда ты знаешь, что не уверен, что понимаешь вопрос? Однако прихоть поэта — это одно, а прихоть большинства из нас — другое.
На самом деле программист просто доработал технологию, изобретенную в 1965 году ученым Джозефом Вейценбаумом. Вейценбаум написал небольшую и не очень умную программу под названием ЭЛИЗА, названную в честь героини Бернарда Шоу. Программа выделяла ключевые слова во фразе собеседника, выбирала ответ из заранее созданного списка и вставляла фрагменты речи собеседника в этот ответ (с небольшими заменами, например «ты» вместо «я»). Таким образом программа очень приблизительно имитировала разговор. Одна из версий программы, названная «Доктор», изображала психотерапевта, работавшего в стиле философии Карла Роджерса, то есть терапевт должен отвечать пациентам их же словами, вызывая у пациентов размышления на эту тему. Еще одна из версий программы была продана позднее в качестве компьютерной игры в магазины Radio Shack, а другая шла в комплекте с моим текстовым редактором GNU Emacs. В инструкции к ней говорилось: «Если с использованием Emacs возникнут проблемы и ни одно из указанных средств для их устранения не сработает, Emacs все равно может вам помочь. Наберите M-x doctor RET». Типичный диалог выглядит следующим образом:
Пользователь: В последнее время я расстроен.
Компьютер: Вы часто расстраиваетесь?
Пользователь: Да, почти все время.
Компьютер: Почему ты постоянно говоришь «да»?
Пользователь: Прямо сейчас мне кажется, что я заплачу.
Компьютер: Это из-за того, что прямо сейчас тебе кажется, что ты заплачешь, ты пришел ко мне?
К ужасу Вейценбаума, однажды он увидел, как его секретарша застыла у компьютера и изливает ему свою душу.
У большинства программистов премия Лебнера вызывает раздражение. Они считают это бессмысленной игрой на публику, поскольку во время соревнования проверяются способности обмануть непрофессионала, а не попытки научить компьютер понимать язык. Исследователи ИИ и другие профессионалы, имеющие представления об устройстве языка, не могут принимать участие в качестве экспертов и не желают соревноваться — все заявки поступили от любителей. Это соревнование имеет такой же смысл, как биологическое исследование, предлагающее премию за создание цветка из шелковой ткани, или космическая программа, предполагающая съемку «высадки на Луну» на голливудской площадке. Разработки компьютерной системы, понимающей речь, ведутся активно, однако ни один серьезный инженер не посмеет сказать, что в скором времени появятся программы, воспроизводящие способности человека.
В самом деле, с точки зрения ученого, люди не имеют никакого права так хорошо справляться с пониманием предложения, как они это делают сейчас. Они могут не только в принципе решить ужасно сложную задачу, но и выполнить это быстро. Обычно процесс понимания происходит в «реальном времени». Слушатели работают одновременно с говорящими: им не нужно ждать конца речевого отрывка, а затем переводить его с отсрочкой, пропорциональной размеру отрывка, как происходит, когда критик рецензирует книгу. Время, необходимое для преодоления расстояния между ртом говорящего и разумом слушающего, невероятно коротко: около слога или двух, примерно полсекунды. Некоторые люди могут понять и повторить предложения, словно эхо, следуя за говорящим, пока он его произносит, с отставанием в четверть секунды!
Восприятие процесса понимания может иметь практическое применение не только при создании машин, с которыми мы можем разговаривать.
Процесс понимания смысла предложения человеком происходит быстро и продуктивно, но не идеально. Он осуществляется, когда разговор или текст, который мы воспринимаем, структурирован определенным образом. Но если это не так, процесс может замедлиться, застопориться и привести к непониманию. В этой главе мы будем изучать процесс понимания речи. Мы увидим, какие типы предложений хорошо понимаются человеком. Особенно полезны будут инструкции по написанию ясной прозы, руководства по научному стилю — прямо как в книге Джозефа Уильямса «Стиль: Десять уроков для начинающих авторов», в основу которой легли многие открытия, обсуждаемые в этой главе.
Другое практическое применение лежит в области права. Судьи часто сталкиваются с такой ситуацией: им нужно догадаться, что может понять среднестатистический человек в некотором неоднозначном тексте, например что может понять клиент, читающий контракт, или суд присяжных, когда ему зачитывают инструкции, или представитель общественности, читающий потенциально клеветническую характеристику. Многие привычки людей, связанные с пониманием текстов, были изучены в исследовательских лабораториях, а лингвист и юрист Лоренс Солан описал связи языка и права в своей увлекательной книге «Язык судей», к которой мы еще вернемся.
Как мы понимаем предложение? На первом этапе мы должны определить его синтаксическую структуру (парсинг). Это никак не связано с упражнениями, которые вы так неохотно выполняли в школе. В книге Дейва Барри «Спроси у Мистера Языка» это описывается так:
Q. Пожалуйста, расскажи, как нарисовать схему предложения.
A. Сначала поместите предложение на чистую ровную поверхность, например на гладильную доску. Затем, используя острый карандаш или нож X-Acto, определите место сказуемого, означающего, как правило, где происходило действие. Сказуемое обычно можно найти сразу за жабрами. В предложении «LaMont never would of bit a forest ranger» («Ла Монт никогда бы немного лесником»), например, действие, вероятно, происходит в лесу. Поэтому ваша схема будет иметь форму небольшого деревца, с отходящими от него ветками, указывающими на расположение частиц речи: герундия, глаголиц, приложений и так далее.
Однако парсинг связан с выделением подлежащего, сказуемого, дополнения и тому подобного, что происходит на подсознательном уровне. Если вы не Вуди Аллен, читающий «Войну и мир» с высокой скоростью, вы будете объединять слова в фразовые составляющие и определять, какая фраза является подлежащим, при каком сказуемом и так далее. Например, для того, чтобы понять предложение «The cat in the hat came back» («Кот в шляпе вернулся»), вам нужно определить, что слова «the cat in the hat» входят в одну составляющую, чтобы понять, что вернулся кот, а не просто шляпа. Чтобы различить «Dog bites man» («Собака кусает человека») и «Man bites dog» «(Человек кусает собаку»), вам нужно определить, что является подлежащим, а что — дополнением. Чтобы отличить «Man bites dog» от «Man is bitten by dog» («Человек укушен собакой») или от «Man suffers dog bite» («Человек подвергся укусу собаки»), вам нужно посмотреть на репрезентацию глаголов в ментальном словаре, чтобы понять, что делает подлежащее man или что с ним происходит.
Грамматика сама по себе — это просто код или протокол, база данных, определяющая, как соотносятся звуки и значения в определенном языке. Это не готовое средство или программа, с помощью которой мы говорим и понимаем. Для говорения и понимания используется одна грамматическая база данных (язык, на котором мы говорим, — это тот же язык, который мы понимаем), однако для осуществления этих процессов необходимы алгоритмы, указывающие, что должен делать разум шаг за шагом, когда мы начинаем слышать слова или когда намереваемся что-то сказать. Ментальная программа, анализирующая структуру языка во время его восприятия, называется парсером.
Обложка: ООО «Альпина Паблишер»