LLM Course, глава 12 (часть 1): RL для LLM и статья DeepSeek-R1
Перевод разделов 12.1–12.3 курса Hugging Face: что такое обучение с подкреплением для языковых моделей, RLHF, зачем нужен GRPO и как устроено обучение DeepSeek-R1.
Это перевод первых трёх разделов главы 12 курса LLM Course — «Строим рассуждающие модели». Продолжение: часть 2 — математика GRPO и часть 3 — GRPO в TRL и практика. Карта всего курса — в путеводителе.
12.1. Open R1 для студентов
Заголовок раздела «12.1. Open R1 для студентов»Добро пожаловать в увлекательное путешествие в мир открытого ИИ и обучения с подкреплением! Эта глава поможет студентам понять обучение с подкреплением и его роль в LLM.
Мы также познакомимся с Open R1 — новаторским проектом сообщества, который делает продвинутый ИИ доступным каждому. Цель этой части курса — помочь студентам и всем, кто учится, пользоваться Open R1 и вносить в него вклад.
Чему вы научитесь
Заголовок раздела «Чему вы научитесь»В этой главе мы разберём сложные понятия на простые части и покажем, как стать участником этого проекта, который учит LLM рассуждать над сложными задачами.
LLM отлично справляются со многими генеративными задачами. Но до недавнего времени им плохо давались сложные задачи, требующие рассуждений: например, головоломки или математические задачи в несколько шагов.
Open R1 — проект, цель которого — научить LLM рассуждать над сложными задачами. Для этого он использует обучение с подкреплением, которое побуждает LLM «думать» и рассуждать.
Проще говоря, модель учат выдавать не только ответ, но и мысли, причём оформлять мысли и ответ так, чтобы пользователь мог обработать их по отдельности.
Посмотрим на пример. Решая такую задачу, мы могли бы рассуждать так:
Задача: «У меня 3 яблока и 2 апельсина. Сколько всего у меня фруктов?»
Мысль: «Нужно сложить число яблок и апельсинов, чтобы получить общее число фруктов».
Ответ: «5»Эти мысль и ответ можно оформить так, чтобы пользователь обрабатывал их по отдельности. В задачах на рассуждение LLM можно научить выдавать мысли и ответ в таком формате:
<think>Нужно сложить число яблок и апельсинов, чтобы получить общее число фруктов.</think>5Пользователь может извлечь из ответа модели мысль и ответ и использовать их для решения задачи.
Почему это важно студентам
Заголовок раздела «Почему это важно студентам»Студенту полезно разобраться в Open R1 и роли обучения с подкреплением в LLM, потому что это:
- показывает, как разрабатывают передовой ИИ;
- даёт возможность учиться на практике и вносить вклад;
- помогает понять, куда движутся технологии ИИ;
- открывает двери к будущей карьере в ИИ.
Обзор главы
Заголовок раздела «Обзор главы»Глава разделена на четыре части, каждая посвящена своей стороне Open R1.
1️⃣ Обучение с подкреплением и его роль в LLM. Разберём основы обучения с подкреплением (RL) и его роль в обучении LLM:
- что такое RL;
- как RL применяют в LLM;
- что такое DeepSeek R1;
- в чём ключевые новшества DeepSeek R1.
2️⃣ Разбираем статью DeepSeek R1. Разберём исследовательскую статью, которая вдохновила Open R1:
- ключевые новшества и прорывы;
- процесс обучения и архитектура;
- результаты и их значение.
3️⃣ GRPO в TRL. Перейдём к практике с примерами кода:
- как пользоваться библиотекой TRL (Transformer Reinforcement Learning);
- как настроить обучение GRPO.
4️⃣ Практический пример выравнивания модели. Разберём практический пример выравнивания модели с Open R1:
- как обучить модель методом GRPO в TRL;
- как поделиться моделью на Hugging Face Hub.
Что нужно знать заранее
Заголовок раздела «Что нужно знать заранее»Чтобы извлечь из главы максимум, полезно:
- уверенно программировать на Python;
- знать основные понятия машинного обучения;
- интересоваться ИИ и языковыми моделями.
Не переживайте, если чего-то из этого не хватает: ключевые понятия мы объясним по ходу! 🚀
Как работать с этой главой
Заголовок раздела «Как работать с этой главой»- Читайте по порядку: разделы опираются друг на друга, поэтому лучше идти последовательно.
- Делитесь заметками: записывайте ключевые понятия и вопросы и обсуждайте их с сообществом в Discord.
- Пробуйте код: когда дойдём до практических примеров, запускайте их сами.
- Присоединяйтесь к сообществу: пользуйтесь нашими ресурсами, чтобы общаться с другими учащимися.
Начнём знакомство с Open R1 и узнаем, как вы можете помочь сделать ИИ доступнее для всех! 🚀
12.2. Обучение с подкреплением и его роль в LLM
Заголовок раздела «12.2. Обучение с подкреплением и его роль в LLM»Добро пожаловать на первую страницу!
Мы начинаем путешествие в увлекательный мир обучения с подкреплением (RL) и узнаем, как оно меняет обучение языковых моделей вроде тех, которыми вы, возможно, пользуетесь каждый день.
Эта страница — дружелюбное и понятное введение в RL, даже если вы никогда с ним не сталкивались. Мы разберём основные идеи и увидим, почему RL так важен для больших языковых моделей (LLM).
Что такое обучение с подкреплением (RL)?
Заголовок раздела «Что такое обучение с подкреплением (RL)?»Представьте, что вы дрессируете собаку. Вы хотите научить её садиться. Вы говорите «Сидеть!», и если собака садится, даёте ей лакомство и хвалите. Если не садится — мягко подсказываете или пробуете ещё раз. Со временем собака связывает «сесть» с приятным вознаграждением (лакомством и похвалой) и охотнее садится, когда вы снова говорите «Сидеть!». В обучении с подкреплением такую обратную связь называют наградой (reward).
В двух словах, это и есть основная идея обучения с подкреплением! Вместо собаки у нас языковая модель (в RL её называют агентом), а вместо вас — среда (environment), которая даёт обратную связь.
(В оригинале — схема: агент выполняет действие в среде, среда возвращает новое состояние и награду.)
Разберём основные элементы RL.
Это ученик. В примере с собакой агент — собака. В случае LLM агентом становится сама LLM, которую мы хотим обучить. Агент принимает решения и учится на среде и её наградах.
Это мир, в котором живёт агент и с которым он взаимодействует. Для собаки среда — ваш дом и вы. Для LLM среда абстрактнее: это могут быть пользователи, с которыми она общается, или смоделированный сценарий, который мы для неё создали. Среда даёт агенту обратную связь.
Действие
Заголовок раздела «Действие»Это варианты выбора, доступные агенту в среде. Действия собаки — «сесть», «встать», «гавкнуть» и т. д. Для LLM действиями могут быть генерация слов в предложении, выбор ответа на вопрос или решение, как ответить в диалоге.
Награда
Заголовок раздела «Награда»Это обратная связь, которую среда даёт агенту после действия. Обычно награды — числа.
Положительные награды — как лакомство и похвала: они говорят агенту «молодец, ты сделал правильно!».
Отрицательные награды (штрафы) — как мягкое «нет»: они говорят агенту «не совсем то, попробуй иначе». Для собаки наградой служит лакомство.
Для LLM награды придумывают так, чтобы они отражали, насколько хорошо LLM справляется с задачей, — например, насколько её ответ полезен, правдив или безвреден.
Политика
Заголовок раздела «Политика»Это стратегия, по которой агент выбирает действия. Как понимание собаки, что делать, когда вы говорите «Сидеть!». В RL политику (policy) мы и стремимся выучить и улучшить. Это набор правил или функция, которая говорит агенту, какое действие выбрать в разных ситуациях. Поначалу политика может быть случайной, но по мере обучения она всё лучше выбирает действия, ведущие к большим наградам.
Процесс RL: метод проб и ошибок
Заголовок раздела «Процесс RL: метод проб и ошибок»(В оригинале — схема цикла «наблюдение → действие → награда → обновление политики».)
Обучение с подкреплением идёт методом проб и ошибок:
| Шаг | Процесс | Описание |
|---|---|---|
| 1. Наблюдение | Агент наблюдает среду | Агент получает информацию о своём текущем состоянии и окружении |
| 2. Действие | Агент действует по текущей политике | Пользуясь выученной стратегией (политикой), агент решает, что делать дальше |
| 3. Обратная связь | Среда даёт агенту награду | Агент узнаёт, насколько хорошим или плохим было его действие |
| 4. Обучение | Агент обновляет политику по награде | Агент корректирует стратегию: закрепляет действия, давшие высокую награду, и избегает тех, что дали низкую |
| 5. Повтор | Процесс повторяется | Цикл продолжается, и агент постоянно улучшает свои решения |
Вспомните, как вы учились кататься на велосипеде. Сначала вы шатались и падали (отрицательная награда!). Но когда удавалось держать равновесие и ровно крутить педали, было приятно (положительная награда!). Вы подстраивали действия под эту обратную связь — чуть наклонялись, крутили быстрее — пока не научились ездить хорошо. RL похоже на это: обучение через взаимодействие и обратную связь.
Роль RL в больших языковых моделях
Заголовок раздела «Роль RL в больших языковых моделях»Почему же RL так важно для больших языковых моделей?
Обучить по-настоящему хорошую LLM непросто. Можно обучить её на огромном количестве текста из интернета, и она станет очень хорошо предсказывать следующее слово в предложении. Так модель учится выдавать гладкий и грамматически верный текст, как мы узнали в главе 2.
Но одной гладкости мало. Мы хотим, чтобы LLM не просто умело нанизывали слова. Мы хотим, чтобы они были:
- полезными — давали нужную и относящуюся к делу информацию;
- безвредными — не порождали токсичный, предвзятый или вредный контент;
- согласованными с предпочтениями людей — отвечали так, как людям кажется естественным, полезным и интересным.
Методы предобучения, которые в основном опираются на предсказание следующего слова, порой не справляются с этими требованиями.
Обучение с учителем отлично даёт структурированные ответы, но хуже справляется с тем, чтобы ответы были полезными, безвредными и согласованными с людьми. Обучение с учителем мы разбирали в главе 11.
Дообученная модель может выдавать гладкий и структурированный текст, который всё равно фактически неверен, предвзят или на самом деле не помогает ответить на вопрос пользователя.
И тут на сцену выходит обучение с подкреплением! RL позволяет дообучить предобученную LLM так, чтобы она лучше обладала нужными качествами. Это как дополнительная дрессировка нашей собаки-LLM, чтобы она стала воспитанным и полезным компаньоном, а не просто собакой, которая гладко лает!
Обучение с подкреплением на отзывах людей (RLHF)
Заголовок раздела «Обучение с подкреплением на отзывах людей (RLHF)»Очень популярная техника выравнивания (alignment) языковых моделей — обучение с подкреплением на отзывах людей (Reinforcement Learning from Human Feedback, RLHF). В RLHF отзывы людей служат заменой сигнала «награды» в RL. Вот как это работает:
-
Собираем предпочтения людей. Например, просим людей сравнить разные ответы LLM на один и тот же промпт и сказать, какой им больше нравится. Скажем, показываем человеку два ответа на вопрос «Какая столица Франции?» и спрашиваем: «Какой ответ лучше?».
-
Обучаем модель награды. На этих данных о предпочтениях обучаем отдельную модель — модель награды (reward model). Она учится предсказывать, какие ответы понравятся людям, и оценивать ответы по полезности, безвредности и согласованности с предпочтениями людей.
-
Дообучаем LLM с помощью RL. Теперь модель награды служит средой для нашего агента-LLM. LLM генерирует ответы (действия), а модель награды их оценивает (выдаёт награды). По сути, мы учим LLM выдавать текст, который наша модель награды (выучившая предпочтения людей) считает хорошим.
(В оригинале — схема RLHF: промпт → LLM → ответ → модель награды → награда → обновление LLM.)
flowchart LR P["Промпт"] --> L["LLM-агент<br/>(политика)"] L -->|"ответ = действие"| R["Модель награды"] R -->|"число = награда"| U["Обновление политики<br/>(PPO, GRPO…)"] U --> L H["Пары ответов,<br/>размеченные людьми"] -.->|"обучение"| R
В целом польза RL для LLM такова:
| Польза | Описание |
|---|---|
| Лучший контроль | RL даёт больше контроля над тем, какой текст генерируют LLM. Их можно направить к тексту, лучше отвечающему конкретным целям: быть полезным, творческим или кратким. |
| Лучшее согласование с ценностями людей | Особенно RLHF помогает согласовать LLM со сложными и часто субъективными предпочтениями людей. Записать правила «что такое хороший ответ» трудно, а вот сравнивать и оценивать ответы людям легко. RLHF позволяет модели учиться на этих оценках. |
| Меньше нежелательного поведения | RL помогает сократить нежелательное поведение LLM: токсичную речь, распространение дезинформации, предвзятость. Если назначать за такое поведение штрафы, модель можно подтолкнуть избегать его. |
RLHF использовали для обучения многих самых популярных LLM: GPT-4 от OpenAI, Gemini от Google и R1 от DeepSeek. Техник RLHF много, и они разной сложности. В этой главе мы сосредоточимся на групповой относительной оптимизации политики (Group Relative Policy Optimization, GRPO) — технике RLHF, которая хорошо показала себя при обучении LLM, полезных, безвредных и согласованных с предпочтениями людей.
Почему стоит обратить внимание на GRPO
Заголовок раздела «Почему стоит обратить внимание на GRPO»Техник RLHF много, но этот курс посвящён GRPO, потому что это значительный шаг вперёд в обучении языковых моделей с подкреплением.
Коротко вспомним две другие популярные техники RLHF:
- проксимальная оптимизация политики (Proximal Policy Optimization, PPO);
- прямая оптимизация предпочтений (Direct Preference Optimization, DPO).
PPO стала одной из первых по-настоящему эффективных техник RLHF. Это метод градиента политики: он обновляет политику по награде от отдельной модели награды.
DPO появилась позже как более простая техника: она обходится без отдельной модели награды и напрямую использует данные о предпочтениях. По сути, задача сводится к классификации между выбранным (chosen) и отвергнутым (rejected) ответом.
В отличие от DPO и PPO, GRPO объединяет похожие примеры в группы и сравнивает их внутри группы. Групповой подход даёт более стабильные градиенты и лучшую сходимость по сравнению с другими методами.
GRPO не использует данные о предпочтениях, как DPO, а сравнивает группы похожих примеров с помощью сигнала награды от модели или функции.
GRPO гибок в том, откуда брать сигнал награды: он может работать с моделью награды (как PPO), но строго говоря, она ему не нужна. GRPO может принимать сигнал награды от любой функции или модели, способной оценить качество ответа.
Например, можно использовать функцию длины, чтобы награждать короткие ответы, математический решатель, чтобы проверять правильность решения, или функцию проверки фактов, чтобы награждать более точные ответы. Эта гибкость делает GRPO особенно универсальным для разных задач выравнивания.
Поздравляем с окончанием модуля 1! Теперь у вас есть хорошее введение в обучение с подкреплением и его ключевую роль в будущем больших языковых моделей. Вы понимаете основные понятия RL, зачем его применяют к LLM, и познакомились с GRPO — ключевым алгоритмом в этой области.
В следующем модуле мы засучим рукава и погрузимся в статью DeepSeek R1, чтобы увидеть эти понятия в деле!
12.3. Разбираем статью DeepSeek R1
Заголовок раздела «12.3. Разбираем статью DeepSeek R1»Эта глава — экспресс-курс чтения статьи. Мы пройдём по статье простыми словами, а затем разберём ключевые понятия и выводы.
DeepSeek R1 — значительный шаг вперёд в обучении языковых моделей, особенно в развитии способности рассуждать с помощью обучения с подкреплением. В статье представлен новый алгоритм обучения с подкреплением — групповая относительная оптимизация политики (Group Relative Policy Optimization, GRPO).
(В оригинале — обзорная схема обучения DeepSeek R1.)
В следующей главе мы опираемся на это знание и реализуем GRPO на практике.
Изначальная цель статьи — выяснить, может ли чистое обучение с подкреплением развить способность рассуждать без обучения с учителем.
Прорыв: «момент озарения»
Заголовок раздела «Прорыв: «момент озарения»»(В оригинале — фрагмент из статьи: модель посреди решения пишет «Wait, wait. Wait. That’s an aha moment I can flag here» и пересматривает свой подход.)
Одним из самых удивительных открытий при обучении R1-Zero стало появление феномена, известного как «момент озарения» (Aha Moment). Он чем-то похож на внезапные догадки, которые случаются у людей при решении задач. Вот как это выглядит:
- Первая попытка: модель пробует решить задачу.
- Распознавание: она замечает возможные ошибки или противоречия.
- Самокоррекция: она меняет подход с учётом замеченного.
- Объяснение: она может объяснить, почему новый подход лучше.
Этот прорыв находит отклик у учащихся и ощущается как «эврика». Он демонстрирует обучение, а не простое запоминание. Давайте представим, каково это — пережить момент озарения.
Например, вы собираете пазл:
- первая попытка: «по цвету этот кусочек должен быть здесь»;
- распознавание: «но подожди, форма не совсем подходит»;
- коррекция: «ага, на самом деле его место вон там»;
- объяснение: «потому что в этом месте совпадают и цвет, и форма».
Эта способность возникла сама собой в ходе обучения с подкреплением, без явного программирования. Это демонстрирует обучение, а не простое запоминание процесса из обучающих данных.
Проще всего понять момент озарения, увидев его в действии. (В оригинале здесь встроен чат с моделью DeepSeek-R1-Distill: вы задаёте задачу, а интерфейс показывает ход мыслей модели.)
Если хотите попробовать R1 от DeepSeek, загляните также в Hugging Chat.
Процесс обучения
Заголовок раздела «Процесс обучения»Обучение R1 шло в несколько фаз. Разберём фазы и ключевые новшества каждой из них.
В итоге получились две модели:
- DeepSeek-R1-Zero: модель, обученная только обучением с подкреплением;
- DeepSeek-R1: модель, которая строится на основе DeepSeek-R1-Zero и добавляет обучение с учителем.
| Характеристика | DeepSeek-R1-Zero | DeepSeek-R1 |
|---|---|---|
| Подход к обучению | Чистое RL | Многофазный (SFT + RL) |
| Дообучение с учителем | Нет | Есть |
| Способность рассуждать | Возникает сама | Усилена |
| Результат на AIME | 71,0% | 79,8% |
| Главные черты | Сильные рассуждения, но проблемы с читаемостью | Последовательнее в языке и лучше читается |
DeepSeek-R1-Zero показывает потенциал чистого обучения с подкреплением для развития рассуждений, а DeepSeek-R1 опирается на этот фундамент и применяет более сбалансированный подход, где важны и качество рассуждений, и удобство.
Обучение состоит из четырёх фаз:
- фаза холодного старта (Cold Start);
- фаза RL для рассуждений (Reasoning RL);
- фаза отбраковочной выборки (Rejection Sampling);
- фаза разностороннего RL (Diverse RL).
flowchart LR B["DeepSeek-V3-Base"] --> C["1. Холодный старт:<br/>SFT на тысячах<br/>отборных примеров"] C --> R["2. RL для рассуждений:<br/>награды по правилам"] R --> S["3. Отбраковочная выборка:<br/>генерация, отбор, SFT"] S --> D["4. Разностороннее RL:<br/>правила + отзывы LLM"] D --> F["DeepSeek-R1"]
Разберём каждую фазу.
Фаза холодного старта (основа качества)
Заголовок раздела «Фаза холодного старта (основа качества)»(В оригинале — схема фазы.)
Эта фаза закладывает прочную основу читаемости и качества ответов. Небольшим датасетом высококачественных примеров от R1-Zero дообучают модель V3-Base. Команда взяла DeepSeek-V3-Base и тысячи проверенных высококачественных примеров от R1-Zero для обучения с учителем. Этот новаторский подход использует маленький, но качественный датасет, чтобы задать хороший базовый уровень читаемости и качества ответов.
Фаза RL для рассуждений (наращивание способностей)
Заголовок раздела «Фаза RL для рассуждений (наращивание способностей)»(В оригинале — схема фазы.)
Фаза RL для рассуждений развивает основные способности к рассуждению в разных областях: математике, программировании, естественных науках и логике. Здесь применяется обучение с подкреплением на правилах: награды напрямую привязаны к правильности решения.
Важно, что все задачи в этой фазе проверяемые: можно проверить, верен ли ответ модели. Например, в математике правильность ответа можно проверить математическим решателем.
Новаторство этой фазы — в прямой оптимизации, которой не нужна отдельная модель награды. Это упрощает обучение.
Фаза отбраковочной выборки (контроль качества)
Заголовок раздела «Фаза отбраковочной выборки (контроль качества)»(В оригинале — схема фазы.)
В фазе отбраковочной выборки (rejection sampling) модель генерирует примеры, которые затем проходят контроль качества. Судьёй качества выступает DeepSeek-V3: он оценивает ответы в широком диапазоне задач, не только чисто на рассуждение. Отобранные данные затем используют для обучения с учителем. Новаторство фазы — в сочетании нескольких сигналов качества, чтобы ответы были на высоком уровне.
Фаза разностороннего RL (широкое выравнивание)
Заголовок раздела «Фаза разностороннего RL (широкое выравнивание)»(В оригинале — схема фазы.)
Заключительная фаза разностороннего RL охватывает задачи разных типов с помощью продуманного гибридного подхода. Для детерминированных задач используются награды на правилах, а субъективные задачи оцениваются отзывами LLM. Цель фазы — согласовать модель с предпочтениями людей за счёт гибридных наград, которые сочетают точность систем на правилах с гибкостью оценки языковой моделью.
Алгоритм: групповая относительная оптимизация политики (GRPO)
Заголовок раздела «Алгоритм: групповая относительная оптимизация политики (GRPO)»Теперь, когда мы понимаем процесс обучения, посмотрим на алгоритм, которым обучали модель.
Авторы описывают GRPO как прорыв в дообучении моделей. (В оригинале — схема GRPO из статьи: для одного вопроса политика генерирует группу ответов, каждый получает награду, награды нормируются внутри группы.)
Новизна GRPO — в способности «напрямую оптимизировать исправление предпочтений» (directly optimize for preference rectification). Это более прямой и эффективный путь согласовать модель с желаемыми ответами по сравнению с традиционными алгоритмами обучения с подкреплением вроде PPO. Разберём работу GRPO по трём основным компонентам.
Формирование группы: несколько решений
Заголовок раздела «Формирование группы: несколько решений»Первый шаг GRPO удивительно интуитивен — он похож на то, как студент решает трудную задачу, пробуя несколько подходов. Получив промпт, модель генерирует не один ответ, а несколько попыток решить одну и ту же задачу (обычно 4, 8 или 16).
Представьте, что вы учите модель решать математические задачи. Для задачи про подсчёт кур на ферме модель может выдать несколько решений:
- одно разбирает задачу по шагам: сначала считает всех кур, потом вычитает петухов, наконец учитывает кур-несушек, которые не несутся;
- другое использует иной, но столь же правильный подход;
- в каких-то попытках есть ошибки или неэффективные решения.
Все эти попытки хранятся вместе как группа — как если бы у нас было несколько решений разных студентов, которые можно сравнить и на которых можно учиться.
(В оригинале — иллюстрация группы ответов на один вопрос.)
Обучение на предпочтениях: что делает решение хорошим
Заголовок раздела «Обучение на предпочтениях: что делает решение хорошим»Здесь GRPO особенно хорош своей простотой. В отличие от других методов RLHF, которым всегда нужна отдельная модель награды, чтобы предсказать качество решения, GRPO может оценивать качество любой функцией или моделью. Например, можно использовать функцию длины, чтобы награждать короткие ответы, или математический решатель, чтобы награждать точные решения.
Оценка смотрит на разные стороны каждого решения:
- верен ли итоговый ответ?
- соблюдён ли формат (например, правильные XML-теги)?
- соответствует ли рассуждение данному ответу?
Особенно изящно то, как устроена оценка. Вместо абсолютных оценок GRPO нормирует награды внутри каждой группы. Для оценки группового относительного преимущества (advantage) используется простая, но эффективная формула:
Advantage = (reward - mean(group_rewards)) / std(group_rewards)То есть преимущество ответа = (его награда − средняя награда группы) / стандартное отклонение наград группы.
(В оригинале — иллюстрация нормировки наград в группе.)
Эта нормировка — как оценка «по кривой», только для ИИ. Она помогает модели понять, какие решения в группе были лучше или хуже остальных, а не смотреть на абсолютные баллы.
Оптимизация: учимся на опыте
Заголовок раздела «Оптимизация: учимся на опыте»На последнем шаге GRPO учит модель становиться лучше, опираясь на оценку группы решений. Этот процесс одновременно мощный и устойчивый и держится на двух принципах:
- он побуждает модель выдавать больше решений, похожих на удачные, и уходить от менее удачных подходов;
- в нём есть страховка — штраф на KL-дивергенцию (KL divergence penalty), который не даёт модели меняться слишком резко за один раз.
Этот подход устойчивее традиционных методов, потому что:
- он смотрит на несколько решений сразу, а не сравнивает по два;
- групповая нормировка защищает от проблем с масштабом наград;
- штраф KL работает как страховочная сетка: модель не забывает то, что уже знает, пока учится новому.
Этот разбор непростой, но главный вывод в том, что GRPO — более эффективный и устойчивый способ научить модель рассуждать.
Алгоритм GRPO в псевдокоде
Заголовок раздела «Алгоритм GRPO в псевдокоде»Теперь, когда мы понимаем ключевые компоненты GRPO, посмотрим на алгоритм в псевдокоде. Это упрощённая версия, но она передаёт главные идеи.
Вход:- initial_policy: исходная модель, которую обучаем- reward_function: функция, оценивающая ответы- training_prompts: набор обучающих примеров- group_size: число ответов на промпт (обычно 4–16)
Алгоритм GRPO:1. Для каждой итерации обучения: a. reference_policy = initial_policy (снимок текущей политики) b. Для каждого промпта в батче: i. Сгенерировать group_size разных ответов политикой initial_policy ii. Посчитать награду каждого ответа функцией reward_function iii. Нормировать награды внутри группы: normalized_advantage = (reward - mean(rewards)) / std(rewards) iv. Обновить политику, максимизируя обрезанное отношение: min(prob_ratio * normalized_advantage, clip(prob_ratio, 1-epsilon, 1+epsilon) * normalized_advantage) - kl_weight * KL(initial_policy || reference_policy)
где prob_ratio = current_prob / reference_prob
Выход: оптимизированная модель-политикаАлгоритм показывает, как GRPO сочетает групповую оценку преимущества с оптимизацией политики, сохраняя устойчивость за счёт обрезки (clipping) и ограничения на KL-дивергенцию.
Результаты и влияние
Заголовок раздела «Результаты и влияние»Разобравшись с алгоритмом, посмотрим на результаты. DeepSeek R1 достигает лучших на тот момент результатов в нескольких областях:
| Область | Ключевые результаты |
|---|---|
| Математика | 79,8% на AIME 2024; 97,3% на MATH-500 |
| Программирование | рейтинг Codeforces 2029; LiveCodeBench 65,9% |
| Общие знания | MMLU 90,8%; GPQA Diamond 71,5% |
| Языковые задачи | AlpacaEval 2.0: 87,6% побед; FRAMES 82,5% |
Практическое влияние модели выходит за рамки бенчмарков: это и выгодная цена API (0,14 долл. за миллион входных токенов), и успешная дистилляция модели в разные размеры (от 1,5B до 70B параметров). Примечательно, что даже модель 7B набирает 55,5% на AIME 2024, а дистиллированная 70B приближается к o1-mini на MATH-500 (94,5%) — способности хорошо сохраняются на разных масштабах.
Ограничения и трудности GRPO
Заголовок раздела «Ограничения и трудности GRPO»GRPO — значительный шаг вперёд в обучении языковых моделей с подкреплением, но важно понимать его ограничения и трудности.
- Стоимость генерации: генерация нескольких ответов (4–16) на каждый промпт требует больше вычислений, чем методы, которые генерируют один-два ответа.
- Ограничения на размер батча: группы ответов нужно обрабатывать вместе, и это может ограничивать эффективный размер батча, усложнять обучение и замедлять его.
- Проектирование функции награды: качество обучения сильно зависит от хорошо продуманных функций награды. Плохо спроектированные награды приводят к нежелательному поведению или оптимизации не той цели.
- Выбор размера группы: оптимальный размер группы — компромисс между разнообразием решений и вычислительной стоимостью. Слишком мало примеров — мало разнообразия, слишком много — дольше и дороже обучение.
- Настройка KL-дивергенции: найти правильный баланс штрафа KL требует аккуратной настройки: слишком большой — модель плохо учится, слишком маленький — может слишком далеко уйти от исходных способностей.
Заключение
Заголовок раздела «Заключение»Статья DeepSeek R1 — важная веха в развитии языковых моделей. Алгоритм GRPO показал, что чистое обучение с подкреплением действительно способно развить сильные способности к рассуждению, и поставил под сомнение прежние представления о необходимости обучения с учителем.
Пожалуй, важнее всего, что DeepSeek R1 показал: высокое качество можно совместить с практичностью — экономичностью и доступностью. Успешная дистилляция способностей модели в разные размеры, от 1,5B до 70B параметров, показывает путь к тому, чтобы сделать продвинутые возможности ИИ доступнее.
В следующем разделе мы разберём практическую реализацию этих идей и то, как использовать GRPO и RFTrans в ваших собственных проектах с языковыми моделями.
(Примечание переводчика: «RFTrans» в оригинале — по всей видимости, опечатка; дальше речь идёт о библиотеке TRL.)
Словарик
Заголовок раздела «Словарик»| English | Русский |
|---|---|
| reinforcement learning (RL) | обучение с подкреплением |
| agent / environment / action | агент / среда / действие |
| reward / penalty | награда / штраф |
| policy | политика |
| reward model | модель награды |
| RLHF | обучение с подкреплением на отзывах людей |
| verifiable reward (RLVR) | проверяемая награда |
| alignment | выравнивание (согласование с предпочтениями людей) |
| advantage | преимущество |
| clipping | обрезка отношения вероятностей |
| KL divergence penalty | штраф на KL-дивергенцию |
| cold start / rejection sampling | холодный старт / отбраковочная выборка |
| aha moment | «момент озарения» |
| distillation | дистилляция |