# Тюнинг LLM: как методы PPO и DPO превращают нейросети из автодополнителей в полезных помощников

Источник: https://www.youtube.com/watch?v=PmW_TMQ3l0I
Канал: Stanford Online
Опубликовано: 14.11.2025

---

В пятой лекции курса CME295 Стэнфордского университета, посвященного трансформерам и большим языковым моделям (LLM), эксперты Афшин и Шервин подробно разбирают критически важный этап создания ИИ — выравнивание (alignment) с человеческими предпочтениями. После того как модель выучила язык (pre-training) и научилась следовать инструкциям (SFT), наступает стадия тонкой настройки, которая превращает «умный автодополнитель» в безопасного и полезного ассистента, способного понимать нюансы человеческого общения.

## 🛠️ Три этапа жизненного цикла LLM
[[JUMP:01:11]]

Процесс обучения современной языковой модели состоит из трех последовательных стадий [01:11]:

1.  **Pre-training (Предварительное обучение):** модель поглощает колоссальные объемы текста и кода, обучаясь предсказывать следующий токен. На выходе получается «эрудит», знающий структуру языка, но не умеющий помогать пользователю.
2.  **SFT (Supervised Fine-Tuning / Контролируемое дообучение):** обучение на высококачественных наборах данных (промпт + идеальный ответ). Здесь модель учится поведению ассистента [02:35].
3.  **Preference Tuning (Настройка предпочтений):** финальный этап, на котором модель обучают выбирать ответы, наиболее соответствующие человеческим ценностям, тону и правилам безопасности [04:02].

По словам Афшина, третья стадия необходима, потому что в рамках SFT сложно передать негативные сигналы — модель учится тому, *что* генерировать, но не тому, чего генерировать *не* следует [11:18]. Кроме того, человеку гораздо проще сравнить два готовых варианта текста, чем написать идеальный эталон с нуля [08:00].

## 📊 Сбор данных: от баллов к парам
[[JUMP:11:49]]

Для настройки предпочтений необходимо собрать данные о том, что нравится людям. Афшин выделяет три подхода к оценке ответов модели [12:02]:

*   **Pointwise (Поточечный):** присвоение баллов (например, от 0 до 1) каждому ответу. Это сложно для людей, так как шкала субъективна.
*   **Listwise (Списочный):** ранжирование целого списка ответов.
*   **Pairwise (Парный):** выбор лучшего из двух вариантов ответа.

Именно парное сравнение (pairwise) стало отраслевым стандартом благодаря своей простоте [13:32]. Процесс выглядит так: на один и тот же промпт модель генерирует два ответа (при положительной «температуре» генерации), а затем человек или другая LLM (в роли судьи) помечает, какой ответ лучше [14:27].

## 🧠 Создание модели вознаграждения (Reward Model)
[[JUMP:28:34]]

Чтобы автоматизировать процесс выравнивания, ученые обучают отдельную нейросеть — модель вознаграждения (Reward Model, RM). Её задача — принимать на вход промпт и ответ, а на выходе выдавать число (score), отражающее качество ответа [26:59].

В основе RM лежит математическая формулировка Брэдли-Терри (Bradley-Terry) [29:58]:

*   Вероятность того, что ответ **A** лучше ответа **B**, выражается через сигмоиду разности их баллов [30:53].
*   Цель обучения — максимизировать баллы для «выигрышных» ответов и минимизировать для «проигрышных» [31:47].

Афшин отмечает, что современные модели вознаграждения часто строятся на базе тех же архитектур (например, BERT или декодерные LLM), где вместо головы предсказания токенов устанавливается классификационная голова, выдающая скалярное значение [40:43].

## 🚀 PPO: обучение с подкреплением на практике
[[JUMP:46:07]]

Классический метод настройки предпочтений — RLHF (Reinforcement Learning from Human Feedback), где ключевым алгоритмом является PPO (Proximal Policy Optimization) [54:05].

Процесс RL-оптимизации включает в себя несколько важных нюансов:

1.  **Максимизация выгоды (Advantage):** модель учится генерировать ответы, которые получают баллы выше среднего ожидаемого уровня [58:13].
2.  **Борьба с «взломом вознаграждения» (Reward Hacking):** если модель будет слишком фанатично гнаться за высоким баллом от RM, она может начать выдавать странные ответы, которые нравятся «судье», но бесполезны для человека [50:46].
    *   *Пример от Афшина:* если лектор будет оценивать успех лекции только по громкости аплодисментов, он начнет только шутить, забыв об информативности [51:25].
3.  **KL-дивергенция:** чтобы модель не «сломалась» и не забыла всё, чему училась на стадии pre-training, в функцию потерь добавляется штраф за слишком сильное отклонение от базовой SFT-модели [55:29].

PPO — крайне ресурсоемкий алгоритм. Для его работы в памяти нужно держать одновременно четыре модели: обучаемую политику, референсную модель, модель вознаграждения и функцию ценности (Value Function) [1:14:15].

## ⚖️ Альтернатива: Best-of-N
[[JUMP:1:23:24]]

Если разработчик не хочет связываться со сложным обучением RL, он может использовать метод **Best-of-N**. Суть проста: при каждом запросе пользователя модель генерирует $N$ вариантов ответа, модель вознаграждения их оценивает, и пользователю отдается только лучший [1:23:51].

Главный минус этого подхода — огромные затраты на инференс. Генерация пяти ответов вместо одного увеличивает стоимость и задержку (latency) в разы [1:26:00].

## ⚡ DPO: «Секретная» модель вознаграждения
[[JUMP:1:30:03]]

Спикер Шервин представляет метод DPO (Direct Preference Optimization), который произвел революцию, избавив разработчиков от необходимости обучать отдельную модель вознаграждения [1:32:38].

Основные тезисы DPO:

*   **Ваша LLM — уже модель вознаграждения:** математически доказано, что оптимальную политику можно найти напрямую через лосс-функцию, сравнивающую вероятности выигрышного и проигрышного ответов [1:34:51].
*   **Простота:** вместо четырех моделей нужны только две (обучаемая и замороженная референсная) [1:40:12].
*   **Стабильность:** DPO — это, по сути, обычное обучение с учителем (supervised learning), которое гораздо легче «варить», чем капризный RL [1:39:58].

Однако, по мнению Шервина, PPO всё еще может показывать лучшие результаты при наличии опытных инженеров и больших вычислительных мощностей, в то время как DPO — отличный выбор для быстрого и эффективного старта [1:47:08].

## 🧸 Пример с плюшевым мишкой: зачем всё это нужно?
[[JUMP:1:44:38]]

В завершение лекции Шервин демонстрирует разницу между SFT и Preference Tuning на примере вопроса «Можно ли стирать моего плюшевого мишку в машинке?» [1:44:38].

*   **SFT-модель (инструкция):** «Нет, он может испортиться. Стирайте вручную». Ответ точный, но сухой.
*   **Aligned-модель (после тюнинга):** «Лучше не стоит. Ваш мишка может пострадать. Бережная ручная стирка будет безопаснее». Тон стал мягче и эмпатичнее, что больше соответствует ожиданиям человека [1:46:03].

Тюнинг предпочтений — это не про новые факты, а про форму, манеру общения и безопасность ИИ-систем.