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

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

Данные, знания и проблема научиться разговаривать

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

Методы больших данных не особенно хорошо подходят для понимания человеческого языка в пошаговой настройке диалоговых ИИ просто потому, что данные - это не знания. Знание чего-либо требует человеческого понимания; необработанные данные - это просто сигнал, который обычно предназначен для того, чтобы вызвать определенное понимание у определенной аудитории.

Методы больших данных не особенно хорошо подходят для понимания человеческого языка в пошаговой настройке диалоговых ИИ просто потому, что данные - это не знания.

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

К сожалению, необработанные данные обычно не подходят для отражения сложных рассуждений, которые люди используют в процессе понимания естественного языка. Некоторые из этих рассуждений могут относиться к общим знаниям о мире. Например, если 9 ноября 2016 г. вы услышали, как кто-то сказал другу: Она проиграла, но почти наверняка выиграет всенародное голосование с большим отрывом, вы, вероятно, предположите, что этот человек указал поскольку она в этом обмене была Хиллари Клинтон, кандидатом на президентских выборах в США. Иногда люди приходят к выводам, основываясь на своих знаниях о том, как классы вещей в мире ведут себя в целом: мало кто предположит, что компактный автомобиль способен перевозить рояль.

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

Кто здесь главный?

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

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

Когда большой недостаточно

Еще одна проблема, с которой сталкиваются подходы к большим данным при понимании человеческого языка и, в частности, диалога, - это разреженность. Весьма вероятно, что каждый в какой-то момент своей жизни произнес ряд слов на своем языке, которые раньше никогда не произносились. Это один интересный факт о языке: его рекурсивная структура означает, что конечное количество слов может быть объединено для создания бесконечных конструкций. Эта бесконечная продуктивность - одна из причин, по которым неконтролируемые подходы к пониманию языка с большими данными работают лучше всего, когда применяются к очень большим объемам данных.

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

Вы видели ту странную розовую штуку, которую она ему подарила?

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

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

Больше не всегда лучше

Вместо того, чтобы преследовать чисто стратегию больших данных для понимания языка и диалога, в Ozlo мы вместо этого строим гибридную систему, которая использует как большие данные, так и подходы, которые я называю малыми данными. . Небольшие данные явно моделируют человеческое понимание языка в контексте, а не пытаются извлечь артефакты этого понимания из множества примеров. Он нацелен на улавливание глубоких и сложных процессов понимания и рассуждений, которые происходят за высказываниями пользователя (и системы) на естественном языке. Эти процессы часто выходят за рамки приближений, которые можно почерпнуть из самих высказываний.

Небольшие данные явно моделируют человеческое понимание языка в контексте, а не пытаются извлечь артефакты этого понимания из множества примеров.

Чтобы достичь этого, небольшие данные используют обучение экспертов внутренней работе диалога, основанное на лингвистической теории, нашем понимании того, как люди выполняют логический вывод, и моделях человеческого знания о мире. Это требует разработки как обширного графика человеческих знаний о концепциях и взаимосвязях между ними, так и базы данных глубоких фоновых знаний о реальных объектах. Это также требует построения понимания отображения языка и значения в контексте, которое смотрит не только на скрытую семантическую структуру высказываний, но и на то, что еще было сказано в текущем разговоре. И для этого требуется модель того, как люди исходят из фактов, предположений и гипотез и переходят к получению из них других, возможно, случайных фактов.

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

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

Решаем, что считать ИИ: Тьюринг против Винограда

Знаменитый тест Алана Тьюринга на предмет того, подходит ли машина для демонстрации ИИ, по сути сводится к способности производить результаты, которые большую часть времени вводят в заблуждение человека. Предложение Тьюринга утверждает, что внутреннее понимание машиной ее разговоров с людьми не имеет значения, что все, что имеет значение, - это то, генерирует ли она достаточно хорошие высказывания. Такой образ мышления во многом соответствует подходам к большим данным и отражает всепроникающую скрытую подоплеку эмпиризма во многих областях науки в конце 1940-х - начале 1950-х годов, когда Тьюринг разработал свой тест. Есть по крайней мере два примера компьютерных программ, которые могут пройти тест Тьюринга, используя комбинацию мимикрии и умных стратегий формулирования вопросов путем повторения задних частей высказываний пользователя. Один из них - ELIZA Джозефа Вайценбаума, разработанный в 1960-х годах и, вероятно, первая попытка создания чат-бота с ИИ; совсем недавно чат-бот Юджин Густман был построен с использованием аналогичной тактики.

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

Трофей не поместился бы в коричневый чемодан, потому что он был слишком большим.

где задача состоит в том, чтобы правильно ответить на вопрос Что было слишком большим? Без мировых знаний об относительных размерах чемоданов и трофеев, а также о том, что это значит, что что-то помещается внутри другого, компьютеру было бы очень трудно правильно отвечать. Небольшие данные подтверждают, что ИИ человеческого уровня должен будет иметь возможность проходить тесты на интеллект, которые больше напоминают схемы Винограда, чем тест Тьюринга. На сегодняшний день самые успешные попытки построить системы, которые проходят тесты на основе схемы Винограда, использовали сочетание малых и больших данных.

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

Спасибо Крису Брюу, Майку Хэнсону, Рону Каплану, Робину Мартину, Адвайту Ратнапархи и Хайди Янг за критику более раннего проекта.