Понимает ли ИИ человеческий язык и как ученые пытаются ответить на этот вопрос

Искусственный интеллект активно проникает в нашу повседневность. При этом он становится всё более умным, а сферы его применения — всё более широкими. Сегодня от него может зависеть даже человеческая жизнь. Но как определить, машины действительно научились нас понимать — или же ловко имитировать понимание? Журнал Quanta — о том, как ученые ищут ответ на этот далеко не праздный вопрос.

IBM Watson — суперкомпьютер, победивший лучших игроков американской телевикторины Jeopardy. В посвященном ему рекламном ролике 2010 года утверждалось, что «Watson понимает естественный язык со всей его сложностью и неоднозначностью». Несмотря на это, компьютер не смог «произвести революцию в медицине с помощью искусственно интеллекта». Стало очевидно: если на первый взгляд кажется, что компьютер понимает язык, не факт, что так оно и есть.

Понимание обыденного языка — одна из главных задач ИИ. Изначально ученые пытались вручную запрограммировать машины для понимания новостей, литературы и других текстов. Как показал пример Watson, это был тупик: все правила, необходимые для понимания текста, записать невозможно. Поэтому был разработан иной поход и теперь вместо программирования конкретных правил ученые позволяют компьютерам учиться самостоятельно, обрабатывая огромное количество текстов и угадывая слова. Так создается языковая модель. С помощью нейросетей вроде OpenAI GPT-3 подобные модели способны генерировать на удивление убедительные тексты, демонстрировать продвинутое языковое мышление и даже писать стихи.

Но удалось ли GPT-3, обученной на тысячах сайтов, книг и энциклопедий, превзойти Watson? Понимает ли модель генерируемый ей язык? Инженеры пока не могут прийти к однозначному выводу. Раньше ответить на этот вопрос пытались философы, однако за последние десять лет ИИ покинул стены лабораторий и вышел в реальный мир, где недостаток понимания может иметь катастрофические последствия.

Например, оказалось, что IBM Watson предлагал «многочисленные неправильные и небезопасные методы лечения», а гугл-переводчик совершает существенные ошибки в переводе медицинских рекомендаций для неанглоязычных пациентов.

Как определить, что машина понимает? В 1950 году Алан Тьюринг, один из отцов современной кибернетики, попытался ответить на этот вопрос и создал свою знаменитую игру, известную сегодня как «тест Тьюринга». В рамках этого теста человек взаимодействует с компьютером и с другим человеком: отвечая на вопросы, он должен определить, с кем разговаривает. Согласно Тьюрингу, если человек не в состоянии отличить компьютер от человека, можно сделать вывод, что компьютер способен мыслить, а значит — и понимать.

К сожалению, Тьюринг недооценил способность компьютера обманывать. Даже примитивным чатботам, вроде созданной Йозефом Вайценбаумом в 1966 году программы Элиза, не раз удавалось убедить людей, что те имеют дело с одушевленным существом.

В статье 2012 года три специалиста в области информатики, Эктор Левеск, Эрнест Дэвис и Леора Моргенштерн, предложили более объективный тест, который они назвали «схемой Винограда». Позже этот тест был признан исследователями ИИ как лучший, хоть и не совершенный, способ оценки способности компьютера к пониманию. Схема Винограда, названная в честь исследователя Терри Винограда, состоит из пар сопровождающихся вопросами предложений, которые отличаются друг от друга всего одним словом.

Вот несколько примеров:

Предложение 1: Я наливал воду из бутылки в чашку, пока она не стала полной.
Вопрос: Что было полным, бутылка или чашка?

Предложение 2: Я наливал воду из бутылки в чашку, пока она не стала пустой.
Вопрос: Что стало пустым, бутылка или чашка?


Предложение 1: Дядя по-прежнему играет в теннис лучше Джо, несмотря на то, что он на тридцать лет старше.
Вопрос: Кто старше, Джо или его дядя?

Предложение 2: Дядя по-прежнему играет в теннис лучше Джо, несмотря на то, что он на тридцать лет младше.
Вопрос: Кто младше, Джо или его дядя?

В каждой из этих пар предложений изменение одного слова меняет то, о ком или о чем идет речь. Чтобы ответить на эти вопросы, нужно обладать здравым смыслом. Схемы Винограда были разработаны для оценки именно такого рода понимания и должны были исправить недостатки теста Тьюринга.

Авторы разработали несколько сотен схем, которые, по их словам, являются «гугл-стойкими». Это значит, что компьютер не может подобрать ответы на тестовые вопросы с помощью запросов в гугле.

В 2016 году на основе схем Винограда было проведено соревнование, в котором победила программа, давшая лишь 58% правильных ответов, то есть результат, не слишком отличающийся от простого угадывания. Орен Этциони, один из ведущих исследователей ИИ наших дней, по этому поводу пошутил: «Как ИИ может захватит мир, если он даже не в состоянии определить, к чему относится то или иное слово в предложении?»

Однако благодаря появлению крупных нейросетевых языковых моделей способность ИИ решать схемы Винограда значительно улучшилась. В ходе исследования, проведенного в 2020 году лабораторией OpenAI, модель GPT-3 ответила правильно почти на 90% вопросов. Другие языковые модели, после обучения на тех же вопросах, показали еще более впечатляющие результаты, лучшего из которых добились ИИ-модель SuperGLU, выдав 97% точных ответов. Это довольно близко к человеческому пониманию. Но так ли это на самом деле?

Не совсем. Несмотря на все усилия ученых, схемы Винограда не являются гугл-стойкими. Как и многие другие тесты на понимание языка, они содержат лазейки, позволяющие нейросетям давать правильные ответы, не понимая их смысла. Взять, к примеру следующую пару предложений: «спортивный автомобиль обогнал почтовый грузовик, так как он ехал быстрее» и «спортивный автомобиль обогнал почтовый грузовик, так как он ехал медленнее».

Языковая модель, обученная на большом корпусе англоязычных текстов, знает о взаимосвязи между словами «спортивный автомобиль» и «быстрый» с одной стороны, и «почтовый грузовик» и «медленный» с другой, а следовательно, может дать правильный ответ на основании данной взаимосвязи. Схемы Винограда содержат множество подобных лазеек.

Исследователи из Алленовского института искусственного интеллекта решили исправить недочеты схем Винограда. В 2019 году они создали улучшенную версию схем Винограда — WinoGrande, которая состоит уже не из сотен, а из сорока четырех тысяч предложений. Чтобы получить такое количество примеров, исследователи обратились к услугам пользователей краудсорсинговой платформы Amazon Mechanical Turk. Каждый пользователь получил задание придумать несколько пар предложений, которые могли отличаться уже более чем одним словом.

Затем исследователи с помощью простого алгоритма устранили предложения, содержащие статистические лазейки. Как и ожидалось, оставшиеся предложения оказались для компьютеров намного труднее, чем оригинальные схемы Винограда. Люди, как и раньше, отлично справлялись с ответами на вопросы, в то время как ИИ, который до этого показывал хорошие результаты на оригинальных схемах Винограда, теперь справлялся куда хуже. В определенном смысле испытание на гугл-стойкость лишь закрепило схемы Винограда как самый адекватный способ оценки здравого смысла.

Но исследователей ждал еще один сюрприз. Спустя более чем два года после создания WinoGrande языковые модели стали еще крупнее. А чем крупнее они становятся, тем лучшие результаты показывают. На сегодняшний день программы, обученные на терабайтах текста и на тысячах примеров из WinoGrande, дают примерно 90% правильных ответов (в то время как люди около 94%).

Улучшение результатов достигается благодаря увеличению языковых моделей, а также благодаря росту объемов данных для их обучения.

Удалось ли более крупным нейросетям достичь понимания наравне с человеком? Опять же, не совсем. Говоря о новых результатах, нужно сделать несколько оговорок. Во-первых, поскольку новые предложения были придуманы пользователями Amazon Mechanical Turk, их качество разнится. Кроме того, возможно, что алгоритм, использовавшийся для отсеивания не гугл-стойких предложений, был слишком простым и не заметил всех лазеек.

Какой вывод можно сделать из всей этой истории? Очевидно, на основании результатов тестов до сих пор трудно определить, понимают ли ИИ обрабатываемый им текст или нет. Нейросети в самом деле благодаря лазейкам часто добиваются высоких результатов по схемам Винограда и другим популярным способам оценки общего понимания языка.

На мой взгляд, суть проблемы в том, что понимание языка невозможно без понимания мира, а компьютер, который имеет дело только с языком, пониманием мира не обладает. Что нужно для того, чтобы понять предложение «спортивный автомобиль обогнал почтовый грузовик, так как он ехал медленнее»? Нужно знать, что такое спортивный автомобиль и что такое почтовый грузовик, что машины могут обгонять друг друга и что машины — это объекты материального мира, которыми управляют люди, у которых есть собственные цели.

Для нас, людей, всё это самоочевидно. Но не для компьютеров. Эту самоочевидность нельзя конвертировать в текст, чтобы затем обучить на нем модель. Некоторые ученые-когнитивисты утверждают, что люди используют врожденные базовые знания о пространстве, времени и других ключевых характеристиках мира в процессе изучения и понимания языка.

Если мы хотим, чтобы компьютеры овладели человеческим языком, мы сначала должны запрограммировать в них базовые знания, которыми человек обладает от рождения. Соответственно, оценивая уровень понимания компьютеров, мы прежде всего должны оценивать понимание этих принципов.

Обучение компьютеров «детским» знаниям выглядит огромным шагом назад в свете достижений таких ИИ-систем, как Watson и GPT-3. Но если наша цель — достичь подлинного понимания, вполне может быть, что это единственный путь.