Отказ от RLHF в пользу DPO
Традиционный подход к тонкой настройке больших языковых моделей (LLM) с учетом человеческих предпочтений опирался на обучение с подкреплением от людей (RLHF). Этот процесс требовал создания отдельной модели вознаграждения (reward model) и использования алгоритмов вроде PPO, что было вычислительно затратным и нестабильным. Новый подход — Direct Preference Optimization (DPO) — устраняет необходимость в модели вознаграждения и обучении с подкреплением, напрямую оптимизируя политику модели на основе предпочтительных ответов.
Почему это важно для разработчиков
Основная проблема RLHF заключалась в сложности настройки гиперпараметров и высокой стоимости вычислений. DPO переформулирует задачу как задачу классификации, где модель учится различать предпочтительные и нежелательные ответы. Это делает процесс:
- Проще в реализации: Не нужно поддерживать две модели (LLM и Reward Model).
- Быстрее в обучении: Отсутствие шагов RL сокращает время тренировки.
- Стабильнее: Меньше риск расхождения модели (model collapse) из-за нестабильности алгоритмов RL.
Сравнение подходов
Для наглядности разницы между традиционным методом и новым подходом:
| Критерий | RLHF (Традиционный) | DPO (Прямая оптимизация) |
|---|---|---|
| Необходимость Reward Model | Да (отдельное обучение) | Нет (исключена из пайплайна) |
| Алгоритм оптимизации | PPO (Reinforcement Learning) | Supervised Fine-Tuning (SFT) + Loss Function |
| Вычислительная сложность | Высокая | Средняя/Низкая |
| Стабильность обучения | Низкая (сложная настройка) | Высокая |
Практическая реализация на Python
Статья предлагает пошаговое руководство по реализации DPO с нуля на Python. Это позволяет разработчикам не только использовать готовые библиотеки, но и понимать математическую основу метода. Ключевой момент — использование функции потерь, которая максимизирует вероятность предпочтительного ответа относительно нежелательного при фиксированной вероятности нежелательного ответа. Такой подход делает DPO доступным инструментом для улучшения качества ответов LLM без глубокого погружения в теорию игр и RL.
Источник: Towards AI pub ↗