MILABOT: создание чат-бота на основе глубокого обучения с подкреплением

машинное обучение искусственный интеллект алгоритм робот

С распространением мобильных смарт-устройств растет потребность в чат-ботах и ​​интеллектуальных личных помощниках. Согласно мнению отрасли, чат-боты, основанные на технологии искусственного интеллекта, станут будущим мобильным интерфейсом, коренным образом изменив опыт взаимодействия человека с компьютером. Мы видели такие продукты, как Amazon Echo и Google Home, которые имеют широкий спектр приложений в повседневной жизни, электронной коммерции, сборе информации и многом другом. Тем не менее, реализация настоящего интеллектуального чат-бота с открытым доменом (Socialbot, также известного как Chatbot или Chitchat bot) все еще остается нерешенной проблемой в области исследований искусственного интеллекта, и для ее решения по-прежнему нужны промышленность и области исследований. Упорно трудитесь, чтобы решить множество задач.

Развитие глубокого обучения за последние несколько лет, особенно продвижение глубокого обучения с подкреплением (DRL) в прошлом году, обеспечивает возможный технический способ решения взаимодействия человека и компьютера в открытой области. Отличительной особенностью обучения с подкреплением является то, что агент (агент) получает обратную связь от пользователя и дает пользователю вознаграждение (вознаграждение), обучаясь давать ответ, который помогает достичь цели максимизации общего вознаграждения. Успех Alphago позволил людям увидеть значительный прогресс обучения с подкреплением в последовательном принятии решений, что, в свою очередь, способствовало исследованиям DRL в области автоматической речи и понимания естественного языка, а также изучению и решению проблем диалога в понимание и ответ на естественном языке. Боты, основанные на глубоком обучении с подкреплением, могут расширяться в области, которые в настоящее время недоступны, и подходят для сценариев чат-ботов с открытым доменом.

В этой статье представлены модель, эксперимент и окончательная система MILABOT, предложенная исследовательской группой Йошуа Бенжио из Университета Монреаля, Канада. Документ был включен в демонстрацию NIPS 2017. MILABOT сочетает в себе несколько моделей NLP с использованием глубокого обучения и добился хороших результатов в конкурсе социальных ботов с открытым доменом, организованном Amazon в 2016 году, превзойдя любые некомбинированные модели. Уникальность MILABOT заключается в том, что, во-первых, он использует алгоритмы обучения с подкреплением для задачи выражения (высказывания) ответов, объединяя в больших масштабах все успешные модели и алгоритмы НЛП за последнее десятилетие, сводя к минимуму потребность в ручной настройке. правила и состояния. Во-вторых, при обучении параметризованной модели мы использовали возможность, предоставленную конкурсом Amazon, для обучения и тестирования текущего современного алгоритма машинного обучения на реальных пользователях. Обученная система достигает значительно улучшенных результатов в A/B-тестировании.

Ниже мы представляем основные идеи и нововведения статьи.

Системный Обзор

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

MILABOT использует подход, полностью основанный на статистическом машинном обучении, делая как можно меньше предположений при обработке и создании естественного человеческого диалога. Дизайн каждого компонента в модели оптимизирован с использованием методов машинного обучения, а выходные данные каждого компонента оптимизированы с помощью обучения с подкреплением. Он вдохновлен комбинаторными системами машинного обучения, то есть лучшими системами обучения, состоящими из нескольких независимых статистических моделей. Например, система, выигравшая Гран-при Netflix в 2009 году, использовала комбинацию сотен моделей, чтобы очень точно предсказать склонность пользователя к фильмам. Другим примером является победа IBM Watson в викторине Jeopardy в 2011 году! . Эти примеры иллюстрируют преимущества комбинаторного обучения.

В MILABOT Dialogue Manger (DM) объединяет ряд моделей реагирования, а DM выступает в качестве агента в обучении с подкреплением, а его структура управления показана на рисунке 1. DM объединяет ответы всех моделей с определенной стратегией. В дизайне MILABOT модель ответа использует множество стратегий для генерации ответов на различные темы.В этой статье подробно представлены соображения дизайна различных моделей стратегий.

Рисунок 1Структура управления DM

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

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

модель ответа

Каждая модель ответа вводит диалог и генерирует ответ на естественном языке. Кроме того, модель ответа выводит один или несколько скаляров, которые определяют уверенность в том, что ответ дан. MILABOT использует комбинацию из 22 моделей реагирования, в которых используются одни из самых выдающихся результатов исследований в области НЛП за последнее десятилетие. Модели можно разделить на:

  • Шаблонные модели, в том числеAlicebot,ElizabotиStorybot.
  • Система ответов на вопросы, основанная на базе знаний, в том числеEvibot,BoWMovies.
  • Поисковые нейронные сети, в том числеVHRED models, Модели вектора пропуска мысли, Модель двойного кодировщика, Модели поиска мешка слов.
  • Логистическая регрессия на основе поиска, включая BoWEscapePlan и т. д.
  • Нейронные сети на базе поисковых систем, в том числе LSTMClassifierMSMarco и др.
  • На основе генеративных нейронных сетей, в том числе GRUQuestionGenerator и др.

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

стратегия выбора модели

После того, как модели с несколькими ответами сгенерируют набор возможных ответов, DM использует модель политики для определения стратегии выбора и определяет ответ, который должен быть возвращен пользователю из набора возможных ответов. DM должен иметь возможность выбрать ответ, который повышает общую удовлетворенность пользователя, что требует компромисса между ответом в реальном времени и общей удовлетворенностью пользователя. Кроме того, при выборе ответа следует также учитывать компромисс между немедленным удовлетворением пользователя и общим удовлетворением. В документе используется классическая структура обучения с подкреплением, предложенная Ричардом Саттоном и Эндрю Барто, и рассматривается проблема как проблема последовательного принятия решений, формально определяемая как: заданный временной рядt=1,...,T, диалог в момент времени th_t, агент должен ответить из набора Ka_t^1,...,a_t^Kсделать выбор и получить вознаграждениеr_t. когда система переходит в следующее состояниеh_{t+1}, ответa_{t+1}^1,...,a_{t+1}^K, вознаграждение, полученное после выбора ответа, равноr_{t+1}. Конечная цель обучения с подкреплением состоит в том, чтобы свести к минимумуR = \sum_{t=1}^{T}\gamma ^tr^t. вr\in (0,1]является коэффициентом дисконтирования. Факторы, учитываемые при построении моделей обучения с подкреплением, включают:

  • Параметризация поведенческих функций ценности: Функция действия-значения определяется параметром\thetaопределение,Q_\theta (h_t,a_t^k)\in \mathbb{R},k = 1,...,K. Полученное ожидаемое возвращаемое значение максимизирует параметр\pi _\theta (h_t) = \underset{k}{arg max}Q_\theta (h_t,a_t^k).
  • Параметризация стохастических стратегий: Если предположить, что политика является случайной, то случайное распределение подчиняется параметрическому распределению действий.. в,f_\theta (h_t,a_t^k)да\thetaФункция подсчета очков для параметров. Можно использовать жадную стратегию\pi _\theta ^{greedy}(h_t) = \underset{k}{arg max}\pi _\theta (a_t^k|h_t), выберите действие с наибольшей вероятностью.

фигура 2Расчетный график модели оценки политики выбора модели. Расчет основан на поведенческой функции ценности и стохастической параметризации политики.

В документе параметризована функция оценки и функция поведенческой ценности, а также построена пятислойная нейронная сеть со структурой, показанной на рисунке 2. Первый слой нейронной сети — это входной слой, который использует функции, извлеченные из истории диалога и сгенерированные ответы, для представления истории диалога и ответов-кандидатов. Функции учитывали комбинации, основанные на встраивании слов, диалогах, тегах POS, перекрытии слов Unigram, перекрытии слов Bigrapm и некоторых характерных для модели функциях, всего 1458 (см.подробный отчет). Второй слой содержит 500 скрытых единиц, вычисленных путем применения линейного преобразования и функции активации ReLU к функциям входного слоя. Третий слой содержит 20 скрытых слоев, вычисленных путем применения линейного преобразования к предыдущим слоям. Четвертый слой содержит 5 единиц выходных вероятностей, рассчитанных путем применения линейного преобразования к предыдущему слою с последующим преобразованием softmax и соответствующих Amazon. Этикетки предоставлены компанией Mechanical Turk (AMT). Пятый слой является окончательным выходным слоем, дающим одно скалярное значение. Этот слой вычисляется путем линейного преобразования единиц измерения в третьем и четвертом слоях. Чтобы узнать параметры каждого слоя, в статье рассматриваются пять различных методов машинного обучения.

  • Контролируемое обучение с использованием краудсорсинговых ярлыков. Этот метод (называемый «контролируемая AMT») является первым шагом в изучении скоринговой модели, и результирующие параметры модели можно использовать в качестве начальных параметров для других методов. В методе используется обучение с учителем на размеченных данных из краудсорсинга, что дает функцию ценности для поведения.Q_\thetaоценка. Наборы данных, необходимые для обучения, были собраны AMT, и ответы были оценены (от 1 до 5) с использованием людей. Исследовательская группа собрала 199 678 меток из реальных сеансов пользователей Alexa и разделила их на обучающие наборы данных (137 549), наборы данных для разработки (23 298) и наборы тестовых данных (38 831). При обучении модели команда использовала логарифмическое правдоподобие для оптимизации параметров оценочной модели.\hat{\theta } = \underset{\theta}{arg max}\sum_{x,y}^{ }logP_\theta (y|x), оценивая четвертый слой нейронной сети, представляющий метки AMT. Оптимизация параметров модели использует метод SGD первого порядка. На рис. 3 представлено сравнение эффективности нескольких разных стратегий для пяти разных классов меток (то есть оценка ответов от лучшего к худшему). Как видно из результатов на рисунке, AMT с учителем обеспечивает лучшую производительность, чем другие методы сравнения (random, Alicebit, Evibot+Alicebot).

изображение 3Частота отклика на классы тегов AMT при использовании разных стратегий.

  • Обучение с вознаграждением под наблюдением. Используйте изученную функцию вознаграждения, чтобы узнать параметры модели. Учитывая историю диалога в определенный момент и соответствующий набор ответов, вознаграждение в определенный момент можно смоделировать как модель линейной регрессии для прогнозирования оценки ответа. Цель обучения состоит в том, чтобы максимизировать значение оценки. Оптимизация параметров модели использует мини-пакетный SGD. Для повышения эффективности в обучении комбинаторной модели используется метод Бэгинга. Чтобы избежать переобучения при обучении модели, модель использует параметры контролируемой модели оценки AMT во время инициализации и дополнительно оптимизирует ее с целью минимизации квадрата ошибки.
  • Обучение с подкреплением вне политики. Один из подходов к параметризации политики состоит в том, чтобы предположить дискретное распределение вероятностей для действий, чтобы случайные политики можно было изучить непосредственно, используя записи разговоров между системой и реальными пользователями. MILABOT использует перевзвешенный алгоритм обучения с подкреплением для обучения, а параметры инициализации модели также используют параметры модели, обученные контролируемой AMT. Набор данных, используемый в обучении, представляет собой 5000 записей разговоров между тестовой системой и реальными пользователями за определенный период времени.Параметры политики оптимизируются на обучающем наборе с использованием SGD, а гиперпараметры и ранняя остановка модели определяются с использованием набора для разработки. .
  • Проводите обучение с подкреплением вне политики, используя изученную функцию вознаграждения.. Подход аналогичен обучению с вознаграждением под наблюдением, с использованием алгоритма обучения с подкреплением вне политики в модели вознаграждения, используемой для обучения. Во-первых, метод использует хорошо настроенную функцию поведенческой ценности, чтобы давать более точные прогнозы рейтинга разговора в определенный момент. Затем регрессионная модель объединяется в обучении с подкреплением вне политики, а параметры модели обучаются с использованием мини-пакетного SGD. Набор данных, используемый в обучении, также является набором данных, используемым в обучении с подкреплением вне политики.
  • Q-обучение с использованием Марковского процесса принятия решений (MDP). Все вышеперечисленные методы являются компромиссом между дисперсией и смещением. В контролируемых методах AMT используется большая обучающая выборка, и они могут давать наименьшую дисперсию, но вносят большую погрешность. С другой стороны, внеполитическое RL использует только баллы, полученные из тысяч разговоров на тренинге, и поэтому имеет высокую дисперсию. Но поскольку он напрямую оптимизирует целевую функцию, он дает очень небольшое отклонение. Столкнувшись с этой проблемой, команда MILABOT предложила новый метод под названием «Абстрактный дискурс» MDP. Абстрактный дискурс MDP изучает политики, аппроксимируя марковский процесс принятия решений (MDP), который направлен на уменьшение дисперсии при обеспечении разумной предвзятости.

Рисунок 4Направленная вероятностная графическая модель для MDP абстрактного дискурса.

Направленная вероятностная графическая модель абстрактного дискурса MDP представлена ​​на рисунке 4. В течение определенного времени т,z_k— дискретная переменная, представляющая абстрактное состояние диалога,h_tпредставляет историю диалога,a_tпредставляет действие, предпринятое системой (т. е. выбранный ответ),y_tпредставляет выбранную метку AMT,r_tпредставляет вознаграждение за выборку. в,z_tСостояние определяется как тройка дискретных значений, включающая состояние диалогового поведения (принятие, отклонение, просьба, вопрос и т. д.), аффективное состояние (положительное, отрицательное, нейтральное) и экспрессивное состояние (истина, ложь). Обучение модели может напрямую использовать смоделированные данные, метод обучения использует Q-обучение с воспроизведением опыта, а политика параметризована как функция поведенческого значения. Оценка различных стратегий АМТ показана в таблице 1.

Таблица 1Оценка среднего значения и стандартного отклонения оценки стратегии по AMT с доверительным интервалом 90%.

Экспериментальная оценка

Команда использовала A/B-тестирование, чтобы проверить эффективность DM при выборе модели стратегии. Тесты проводились в среде соревнований Amazon, где, когда пользователь Alexa разговаривал с системой, автоматически назначалась случайная стратегия, после чего разговор записывался и оценивался. A/B-тестирование может проверять сравнение различных стратегий в одной и той же системной среде, которая учитывает разные ситуации пользователей в разные периоды времени. Тестирование команды проходило в три этапа.

На первом этапе тестируются пять различных методов создания политик и сравниваются их с эвристическим базовым методом Evibot+Alicebot. Второй этап тестирования фокусируется на методах обучения с подкреплением вне политики и Q-learning. На третьем этапе тестирования дополнительно проверяется нестандартное и Q-обучение с использованием модели и обучающего набора с оптимизированными параметрами. Результаты испытаний представлены в таблице 2.

Таблица 2Результаты A/B-тестирования с доверительным интервалом 95%. «*» обозначает статистическую значимость 95%.

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

в заключении

В документе предлагается новая крупномасштабная диалоговая система MILABOT, основанная на комбинаторном обучении, которая прошла валидацию в Гран-при Amazon Alexa. MILABOT использует большое количество методов машинного обучения, включая глубокое обучение и обучение с подкреплением. Среди них команда предложила новый метод обучения с подкреплением. Используя A / B-тестирование для сравнения с существующими методами обучения с подкреплением, достигаются лучшие результаты диалога на реальных пользовательских данных Alexa.

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

Посмотреть исходный английский текст: A Deep Reinforcement Learning Chatbot

благодарныйЦай ФанфанОбзор этой статьи.