Искусственный интеллект
Генерация парафраз с помощью глубокого обучения с подкреплением – лидеры мнений

Когда мы пишем или говорим, мы все иногда задумываемся, есть ли лучший способ передать идею другим. Какие слова мне следует использовать? Как я должен структурировать мысль? Как они, скорее всего, отреагируют? В Phrasee мы много времени тратим на размышления о языке – что работает, а что нет.
Представьте, что вы пишете тему для электронной кампании, которая будет отправлена 10 миллионам человек в вашем списке, рекламируя скидку 20% на новый ноутбук.
Какую строку вы бы выбрали:
- Теперь вы можете получить дополнительную скидку 20% на ваш следующий заказ
- Готовьтесь – дополнительная скидка 20%
Хотя они передают одну и ту же информацию, одна из них достигла почти на 15% более высокого показателя открытия, чем другая (и я ставлю, что вы не сможете побить нашу модель в предсказании, какая из них ?). Хотя язык можно часто проверить с помощью A/B-тестирования или многоруких бандитов, автоматическая генерация парафраз остается очень сложной исследовательской проблемой.
Две предложения считаются парафразами друг друга, если они имеют одинаковый смысл и могут быть использованы взаимозаменяемо. Другой важный момент, который часто принимается как должное, – это то, является ли предложение, сгенерированное машиной, плавным.
В отличие от обучения с учителем, агенты обучения с подкреплением (RL) учатся, взаимодействуя со своей средой и наблюдая за наградами, которые они получают в результате. Это несколько тонкое различие имеет огромные последствия для того, как работают алгоритмы и как модели обучаются. Глубокое обучение с подкреплением использует нейронные сети в качестве приближенного оценщика, чтобы позволить агенту учиться, как превосходить людей в сложных средах, таких как Го, Atari и StarCraft II.
Несмотря на этот успех, обучение с подкреплением не было широко применено к реальным проблемам, включая обработку естественного языка (NLP).
В рамках моей магистерской диссертации по 데이터-наукам мы демонстрируем, как глубокое обучение с подкреплением может быть использовано для превосходства методов обучения с учителем в автоматической генерации парафраз входного текста. Задача генерации лучшего парафраза может быть рассмотрена как нахождение серии слов, которые максимизируют семантическое сходство между предложениями, сохраняя при этом плавность вывода. Агенты RL хорошо подходят для нахождения лучшего набора действий для достижения максимально ожидаемой награды в средах управления.
В отличие от большинства проблем в машинном обучении, самая большая проблема в большинстве приложений генерации естественного языка (NLG) не заключается в моделировании, а rather в оценке. Хотя оценка человека в настоящее время считается золотым стандартом в оценке NLG, она страдает от значительных недостатков, включая высокую стоимость, длительность, сложность настройки и отсутствие воспроизводимости в экспериментах и наборах данных (Han, 2016). В результате исследователи давно ищут автоматические метрики, которые просты, общедоступны и отражают суждение человека (Papineni et al., 2002).
Самые распространенные автоматические методы оценки при оценке сгенерированных подписей к изображениям суммированы ниже с их плюсами и минусами:

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

Датасет
Существует несколько наборов данных парафраз, доступных для исследований, включая: корпус парафраз Microsoft, конкурс по семантическому сходству текста ACL, дублирующие вопросы Quora и общие ссылки Twitter. Мы выбрали MS-COCO из-за его размера, чистоты и использования в качестве эталонного набора данных для двух заметных работ по генерации парафраз. MS-COCO содержит 120 тысяч изображений обычных сцен с 5 подписями к изображениям, предоставленными 5 разными человеческими аннотаторами.
Хотя он в основном предназначен для исследований в области компьютерного зрения, подписи к изображениям имеют высокое семантическое сходство и являются интересными парафразами. Поскольку подписи к изображениям предоставляются разными людьми, они имеют незначительные вариации в деталях, предоставленных в сцене, поэтому сгенерированные предложения имеют тенденцию к галлюцинациям деталей.

Модель обучения с учителем
Хотя обучение с подкреплением значительно улучшилось в плане эффективности выборки, времени обучения и общих лучших практик, обучение моделей RL с нуля все еще относительно медленное и нестабильное (Arulkumaran et al., 2017). Следовательно, вместо того, чтобы обучать с нуля, мы сначала обучаем модель обучения с учителем, а затем дообучаем ее с помощью RL.
Мы используем рамку кодировщик-декодировщик и оцениваем производительность нескольких базовых моделей обучения с учителем. При дообучении модели с помощью RL мы дообучаем только сеть декодировщика и рассматриваем сеть кодировщика как статическую. Таким образом, мы рассматриваем два основных подхода:
- Обучение модели обучения с учителем с нуля с помощью стандартной/обычной рамки кодировщик-декодировщик с GRU
- Использование предварительно обученных моделей вложения предложений для кодировщика, включая: пуловые вложения слов (GloVe), InferSent и BERT
Модели обучения с учителем имеют тенденцию работать довольно схоже между моделями, причем BERT и рамка кодировщик-декодировщик достигают лучшей производительности.

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

Модель обучения с подкреплением
Реализация алгоритмов RL очень сложна, особенно когда вы не знаете, можно ли решить проблему. Может быть проблема в реализации вашей среды, вашего агента, ваших гиперпараметров, вашей функции награды или комбинации всех вышеперечисленного! Эти проблемы усугубляются, когда вы делаете глубокое обучение с подкреплением, поскольку вы получаете удовольствие от добавленной сложности отладки нейронных сетей.
Как и при любой отладке, важно начинать просто. Мы реализовали вариации двух хорошо понятых игровых сред RL (CartPole и FrozenLake), чтобы протестировать алгоритмы RL и найти повторяемую стратегию для передачи знаний из модели обучения с учителем.
Мы обнаружили, что использование алгоритма Actor-Critic превосходит REINFORCE в этих средах. В плане передачи знаний к модели Actor-Critic мы обнаружили, что инициализация весов актера с помощью обученной модели обучения с учителем и предварительное обучение критика достигли лучшей производительности. Мы обнаружили, что обобщение сложных подходов к дистилляции политики на новые среды очень сложно, поскольку они вводят многие новые гиперпараметры, которые требуют настройки для работы.
Поддержанные этими идеями, мы затем приступаем к разработке подхода для задачи генерации парафраз. Сначала нам нужно создать среду.

Среда позволяет нам легко проверить влияние использования различных метрик оценки в качестве функций награды.
Затем мы определяем агента, учитывая его многочисленные преимущества, мы используем архитектуру Actor-Critic. Актер используется для выбора следующего слова в последовательности и имеет веса, инициализированные с помощью модели обучения с учителем. Критик предоставляет оценку ожидаемой награды, которую состояние, скорее всего, получит, чтобы помочь актеру учиться.
Проектирование правильной функции награды
Самый важный компонент проектирования системы RL – это функция награды, поскольку это то, что агент RL пытается оптимизировать. Если функция награды неверна, то результаты пострадают, даже если каждая другая часть системы работает!
Классическим примером этого является CoastRunners, где исследователи OpenAI задали функцию награды как максимизацию общего счета, а не выигрыш гонки. Результатом этого является то, что агент обнаружил петлю, где он мог получить самый высокий счет, попадая в турбо, не завершая гонку.
https://www.youtube.com/watch?time_continue=2&v=tlOIHko8ySg&feature=emb_title
Учитывая, что оценка качества парафраз сама по себе является нерешенной проблемой, проектирование функции награды, которая автоматически отражает эту цель, еще сложнее. Большинство аспектов языка не разлагаются хорошо на линейные метрики и зависят от задачи (Novikova et al., 2017).
Агент RL часто обнаруживает интересную стратегию для максимизации наград, которая эксплуатирует слабости в метрике оценки, а не генерирует текст высокого качества. Это, как правило, приводит к плохой производительности на метриках, которые агент не оптимизирует напрямую.
Мы рассматриваем три основных подхода:
- Метрики перекрытия слов
Общие метрики оценки NLP учитывают долю перекрытия слов между сгенерированным парафразом и предложением оценки. Чем больше перекрытие, тем больше награда. Проблема с подходами на уровне слов заключается в том, что агент включает слишком много соединительных слов, таких как “а” или “на”, и нет меры плавности. Это приводит к очень низкокачественным парафразам.

- Метрики сходства и плавности на уровне предложения
Основные свойства сгенерированного парафраза заключаются в том, что он должен быть плавным и семантически похожим на входное предложение. Следовательно, мы пытаемся явно оценить эти показатели, а затем объединить метрики. Для семантического сходства мы используем косинусное сходство между вложениями предложений из предварительно обученных моделей, включая BERT. Для плавности мы используем оценку, основанную на перплексии предложения из GPT-2. Чем больше косинусное сходство и оценка плавности, тем больше награда.
Мы попробовали много разных комбинаций моделей вложения предложений и моделей плавности, и хотя производительность была разумной, основной проблемой, с которой столкнулся агент, было то, что он не смог достаточно сбалансировать семантическое сходство с плавностью. Для большинства конфигураций агент отдал приоритет плавности, что привело к удалению деталей и большинству сущностей, которые были помещены “в середину” чего-то или перемещены “на стол” или “на сторону дороги”.
Многоцелевое обучение с подкреплением – это открытый исследовательский вопрос и очень сложно в этом случае.

- Использование модели-антагониста в качестве функции награды
Учитывая, что люди считаются золотым стандартом в оценке, мы обучаем отдельную модель, называемую дискриминатором, для прогнозирования того, являются ли два предложения парафразами друг друга (podobно тому, как человек оценивает). Цель модели RL заключается в том, чтобы убедить эту модель в том, что сгенерированное предложение является парафразом входного. Дискриминатор генерирует оценку того, насколько вероятно, что два предложения являются парафразами друг друга, которая используется в качестве награды для обучения агента.
Каждые 5 000 попыток дискриминатору сообщают, какой парафраз пришел из набора данных, а какой был сгенерирован, чтобы он мог улучшить свои будущие попытки. Процесс продолжается в течение нескольких раундов, при этом агент пытается обмануть дискриминатор, а дискриминатор пытается различать сгенерированные парафразы и парафразы из набора данных.
После нескольких раундов обучения агент генерирует парафразы, которые превосходят модели обучения с учителем и другие функции награды.

Вывод и ограничения
Антагонистические подходы (включая самоигру для игр) предоставляют очень перспективный подход для обучения алгоритмов RL превосходить человеческий уровень производительности на определенных задачах без определения явной функции награды.
Хотя RL смог превзойти обучение с учителем в этом случае, количество дополнительных накладных расходов в плане кода, вычислений и сложности не стоит производительности, которую оно дает, для большинства приложений. RL лучше всего оставить для ситуаций, когда обучение с учителем нельзя легко применить, и функция награды легко определяется (например, игры Atari). Подходы и алгоритмы намного более зрелые в обучении с учителем, и сигнал ошибки намного сильнее, что приводит к более быстрому и стабильному обучению.
Еще одним фактором является то, что, как и в других нейронных подходах, агент может потерпеть неудачу очень драматично в случаях, когда входные данные отличаются от входных данных, которые он ранее видел, что требует дополнительного слоя проверок для производственных приложений.
Взрыв интереса к подходам RL и достижения в вычислительной инфраструктуре в последние годы откроют огромные возможности для применения RL в промышленности, особенно в области NLP.












