Введение

Самая последняя языковая модель от OpenAI, ChatGPT, демонстрирует значительный прогресс по сравнению практически с любой другой моделью, которая доступна в открытом доступе. ChatGPT может генерировать текст в различных стилях и для различных целей, как и многие модели больших языков, но с гораздо большей точностью, детализацией и согласованностью. Это последняя версия больших языковых моделей OpenAI, которая в первую очередь ориентирована на интерактивные обсуждения.
Хотя для совершенствования ChatGPT использовались как контролируемое обучение, так и обучение с подкреплением, именно элемент обучения с подкреплением отличает ChatGPT от других. Чтобы уменьшить вредные, неправдивые и / или предвзятые результаты, разработчики применяют особый подход, называемый обучением с подкреплением на основе обратной связи с человеком (RLHF).

Возможности против согласования: почему старые модели не так хороши

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

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

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

Что вызывает несоосность? «Старые» методы создания моделей

Существует 2 основных метода обучения языковых моделей: предсказание следующего токена и моделирование языка в маске.

  1. Предсказание следующего токена: вводится предложение, и модель должна предсказать следующее слово.
  2. Специальный токен, такой как [MASK], используется вместо части слов во входной фразе в следующем методе прогнозирования токенов, известном как «моделирование маскированного языка». Следующий шаг — попросить модель спрогнозировать соответствующий термин, который следует заменить маской.

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

Однако у этих методов есть несколько существенных недостатков: модель не может отличить важные слова от неважных. Например, маска в «Цезарь был [МАСКОЙ] его народом». Маска может быть либо «убита», либо «любима» с равной вероятностью, но и то, и другое дает разные значения.

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

Процесс

Шаг 1: СФТ

Сбор демонстрационных данных — это начальный этап обучения контролируемой модели политик, часто известной как модель SFT.

  1. Сбор данных. Группе маркировщиков предлагается записать ожидаемый выходной ответ на набор подсказок. Для ChatGPT использовались два источника подсказок: некоторые были созданы непосредственно маркировщиками или разработчиками, а другие были образцами, взятыми из запросов API OpenAI (то есть от их клиентов GPT-3). В результате получается относительно скромный, высококачественный набор данных (около 12–15 тысяч точек данных), который будет использоваться для точной настройки предварительно обученной языковой модели, поскольку вся процедура является дорогостоящей и дорогостоящей.
  2. Выбор модели: создатели ChatGPT выбрали предварительно обученную модель из так называемой серии GPT-3.5, а не оптимизировали исходную модель GPT-3. Самая последняя модель GPT-3, text-davinci-003, которая была улучшена в основном за счет изменений в коде, вероятно, является базовой моделью, которая использовалась.

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

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

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

Шаг 2: Модель вознаграждения

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

  1. Модель SFT создает несколько выходных данных (от 4 до 9) для каждой подсказки из списка параметров.
  2. Результаты ранжируются маркировщиками от лучшего к худшему. Результатом является свежий набор данных, который был помечен с использованием рейтингов в качестве меток. Этот набор данных примерно в десять раз больше, чем тщательно подобранный набор данных, который использовался для создания модели SFT.
  3. Модель вознаграждения обучается с использованием новых данных (RM). Используя пару результатов модели SFT в качестве входных данных, эта модель ранжирует их в соответствии с предпочтениями.

Для маркировщиков ранжирование выходных данных значительно проще, чем создание их с нуля, потому что это намного эффективнее масштабируется. Настраиваемое количество созданных выходных данных (для каждой подсказки) отображается каждому маркировщику на этапе ранжирования. На практике этот набор данных был сгенерирован из 30–40 000 подсказок.

Шаг 3: ППО

Теперь политика SFT улучшена с помощью обучения с подкреплением, что позволяет оптимизировать модель вознаграждения. Проксимальная оптимизация политик (PPO) — это название конкретного применяемого алгоритма, а уточненная модель известна как модель PPO.
Вот как работает PPO:

  1. Алгоритм PPO используется для обучения агентов обучения с подкреплением. Поскольку он немедленно изменяет текущую политику, а не учится на предыдущем опыте, как в алгоритмах «вне политики», таких как DQN, он известен как алгоритм «в соответствии с политикой» (глубокая Q-сеть). В результате PPO постоянно изменяет существующую политику в свете деятельности агента и получаемых им стимулов.
  2. PPO обучает политику с помощью метода оптимизации области доверия, который требует, чтобы все изменения политики производились в пределах определенного диапазона исходной политики для поддержания стабильности. Это контрастирует с другими подходами градиента политики, которые иногда значительно изменяют политику и могут привести к тому, что обучение станет нестабильным.
  3. Ожидаемый доход от определенного состояния или действия оценивается PPO с использованием функции ценности. Функция преимущества, указывающая на разницу между ожидаемой доходностью и существующей доходностью, рассчитывается с использованием функции стоимости. Противопоставляя действие, предпринятое в соответствии с текущей политикой, с действием, которое было бы предпринято в соответствии с предыдущей политикой, функция преимущества затем используется для обновления политики. В свете ожидаемой ценности выполняемых действий это позволяет УГЗ обновлять политику более информированным образом.

На этом этапе функция ценности инициализируется из модели вознаграждения, а модель PPO инициализируется из модели SFT. Сеттинг представляет собой бандитский сценарий, в котором представлена ​​случайно сгенерированная подсказка и ожидается ответ. Эпизод завершается после того, как подсказка и ответ дали вознаграждение (согласно оценке модели вознаграждения). Чтобы предотвратить чрезмерную оптимизацию модели вознаграждения, в модели SFT для каждого токена вводится штраф KL для каждого токена.

Заключение

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

В этой статье описан основной процесс его создания. Подробнее см. в этой статье: https://arxiv.org/pdf/2203.02155.pdf