Денис Соломатин – Искусственный интеллект от А до Б (страница 36)
Остерегайтесь двусмысленности терминологии. Некоторые люди используют термин «тонкая настройка инструкций» для обозначения контролируемой тонкой настройки, в то время как другие используют этот термин для обозначения как контролируемой тонкой настройки, так и тонкой настройки предпочтений. Так как посттренинг потребляет небольшую часть ресурсов по сравнению с предтренингом (InstructGPT использовал только 2% вычислительных ресурсов для пост-тренинга и 98% для предтренинга), пост-обучение можно рассматривать как раскрытие возможностей, которые уже есть в предварительно обученной модели, но к которым пользователям трудно получить доступ только с помощью запросов.
Самоконтролируемое предварительное обучение приводит к созданию мошеннической модели, которую можно считать неукротимым монстром, потому что она использует беспорядочные данные из Интернета. Затем этот монстр контролируется и настраивается на основе данных более высокого качества – Stack Overflow, Quora или человеческих аннотаций, – что делает его более социально приемлемым. Эта тонко настроенная модель дополнительно полируется с помощью тонкой настройки предпочтений, чтобы сделать ее подходящей для клиента, что похоже на смайлик. Обратите внимание, что комбинация предварительного обучения, SFT и тонкой настройки предпочтений является популярным решением для построения моделей фундаментов на сегодняшний день, но это не единственное решение. Вы можете пропустить любой из шагов, как вы вскоре увидите.
Предварительно обученная модель, скорее всего, оптимизирована для завершения, а не для обсуждения. Если вы введете в модель «Как приготовить пиццу», модель продолжит дополнять это предложение, так как модель не имеет представления о том, что это должен быть разговор. Любой из следующих трех вариантов может быть допустимым завершением:
1. Добавляем больше контекста к вопросу: «для семьи из шести человек?»
2. Добавление дополнительных вопросов: «Какие ингредиенты мне нужны? Сколько времени это займет?»
3. Даем инструкцию по приготовлению пиццы.
Если цель состоит в том, чтобы адекватно реагировать на запросы пользователей, правильным вариантом является 3.
Мы знаем, что модель имитирует свои обучающие данные. Чтобы побудить модель генерировать соответствующие ответы, можно показать примеры подходящих ответов. Такие примеры имеют формат (prompt, response) и называются демонстрационными данными. Некоторые люди называют этот процесс клонированием поведения: вы демонстрируете, как должна вести себя модель, а модель клонирует это поведение. Поскольку для разных типов запросов требуются разные типы ответов, демонстрационные данные должны содержать диапазон запросов, которые должна обрабатывать модель, такие как ответы на вопросы, обобщение и перевод.
Хорошие учителя важны для того, чтобы люди учились. Точно так же хорошие маркировщики важны для ИИ, чтобы научиться вести интеллектуальные разговоры. В отличие от традиционной маркировки данных, которая часто может быть выполнена с небольшим опытом или без него, демонстрационные данные могут содержать сложные подсказки, ответы на которые требуют критического мышления, сбора информации и суждения о целесообразности запросов пользователя.
Интуиция означает возникновение и развитие событий случайным образом в счастливом или выгодном ключе, но используйте это слово лишь в предложении: «Встреча с Маргарет и знакомство с Томом было счастливой случайностью».
Поэтому компании часто используют высококвалифицированных маркировщиков для создания демонстрационных данных. Среди тех, кто пометил демонстрационные данные для InstructGPT, ~90% имеют как минимум высшее образование и более трети имеют степень магистра. Если маркировка объектов на изображении может занять всего несколько секунд, то создание одной пары (подсказки, ответа) может занять до 30 минут, особенно для задач, связанных с длительными контекстами, такими как суммаризация. Если это стоит $10 за одну пару (prompt, response), то 13 000 пар, которые OpenAI использовал для InstructGPT, будут стоить $130 000. Это еще не включает в себя затраты на разработку данных (какие задачи и подсказки включать), подбор маркировщиков и контроль качества данных.
Не каждый может позволить себе следовать качественному подходу к аннотированию человека. Некоммерческая организация LAION мобилизовала 13 500 добровольцев по всему миру для создания 10 000 бесед, которые состоят из 161 443 сообщений на 35 различных языках с комментариями и 461 292 оценками качества. Поскольку данные были получены добровольцами, не было особого контроля над предвзятостью. Теоретически маркировщики, которые обучают моделей человеческим предпочтениям, должны быть репрезентативными для человеческой популяции. Демография маркировщиков для LAION неравномерна. Например, в опросе, о котором сообщили сами пациенты, 90% добровольцев идентифицировали себя как мужчины.
DeepMind использовала простые эвристики для фильтрации разговоров из интернет-данных для обучения своей модели Gopher. Они утверждали, что их эвристики надежно дают высококачественные диалоги. В частности, они искали тексты, которые выглядят примерно в следующем формате:
[A]: [Короткий абзац]
[B]: [Короткий абзац]
[A]: [Короткий абзац]
[B]: [Короткий абзац]
…
Чтобы снизить свою зависимость от высококачественных аннотированных данных, многие команды обращаются к данным, созданным искусственным интеллектом. Технически вы можете обучить модель с нуля на демонстрационных данных вместо тонкой настройки предварительно обученной модели, что фактически исключит этап предварительного обучения под контролем пользователя. Тем не менее, предтренировочный подход часто дает превосходные результаты.
С большой властью приходит большая ответственность. Модель, которая может помочь пользователям в достижении великих целей, может также помочь пользователям в достижении ужасных вещей. Демонстрационные данные учат модель вести диалог, но не учат модель, какие разговоры она должна вести. Например, если пользователь просит модель написать эссе о том, почему одна раса уступает или как угнать самолет, должна ли модель подчиниться?
В обоих предыдущих примерах большинству людей понятно, что должна делать модель. Однако многие сценарии не так однозначны. Люди с разным культурным, политическим, социально-экономическим, гендерным и религиозным происхождением постоянно не согласны друг с другом. Как AI должна отвечать на вопросы об абортах, контроле над оружием, многовековом израильско-палестинском конфликте, воспитании детей, законности марихуаны, всеобщем базовом доходе или иммиграции? Как мы определяем и выявляем потенциально спорные вопросы? Если ваша модель реагирует на спорный вопрос, какими бы ни были ответы, вы в конечном итоге расстроите некоторых из своих пользователей. Если модель подвергается чрезмерной цензуре, ваша модель может стать скучной, отпугивая пользователей.
Страх перед моделями ИИ, генерирующими неадекватные ответы, может помешать компаниям выпустить свои приложения для пользователей. Цель тонкой настройки предпочтений состоит в том, чтобы заставить модели ИИ вести себя в соответствии с предпочтениями человека. Это амбициозная, если не сказать невыполнимая, цель. Это не только предполагает, что универсальные человеческие предпочтения существуют, но и предполагает, что их можно встроить в ИИ.
Если бы цель была простой, решение могло бы быть элегантным. Однако, учитывая амбициозный характер цели, решение, которое мы имеем сегодня, является сложным. Самым ранним успешным алгоритмом тонкой настройки предпочтений, который популярен до сих пор, является RLHF. RLHF состоит из двух частей:
1. Обучите модель вознаграждения, которая оценивает выходные данные базовой модели.
2. Оптимизируйте базовую модель для генерации ответов, за которые модель вознаграждения будет давать максимальные баллы.
В то время как RLHF все еще используется сегодня, новые подходы, такие как DPO, набирают обороты. Например, Meta переключилась с RLHF для Llama 2 на DPO для Llama 3, чтобы снизить сложность. Невозможно охватить все различные подходы, будем использовать RLHF вместо DPO, потому что RLHF, хотя и более сложный, чем DPO, обеспечивает большую гибкость для настройки модели. Авторы Llama 2 утверждают, что «превосходные писательские способности LLM, проявляющиеся в превосходстве над людьми-аннотаторами в определенных задачах, в основном обусловлены RLHF».
RLHF опирается на модель вознаграждения. При наличии пары (подсказка, ответ) модель вознаграждения выводит оценку того, насколько хорош ответ. Обучение модели для оценки заданных входных данных – это распространенная задача машинного обучения. Задача, как и в случае с SFT, заключается в получении достоверных данных. Если мы попросим маркировщиков оценить каждый ответ напрямую, оценки будут различаться. Для одной и той же выборки по 10-балльной шкале один маркировщик может дать 5, а другой 7. Даже один и тот же маркировщик, которому дважды дана одна и та же пара (prompt, response), может дать разные оценки. Независимая оценка каждой выборки также называется точечной оценкой.
Более простая задача – попросить маркировщиков сравнить два ответа и решить, какой из них лучше. Для каждого запроса люди или искусственный интеллект генерируют несколько ответов. Результирующие помеченные данные являются данными сравнения, которые следуют формату (prompt, winning_response, losing_response): «Как получить удовольствие от своей собаки? – не уверен, что вы имеете в виду; не знаю, стоит ли нам получать собаку под удовольствие; для собаки важно воспринимать мир в трезвом состоянии ума».