Evolved Policy Gradients: когда RL сам придумывает функцию потерь
OpenAI показала метод, где алгоритм обучения с подкреплением не задаётся вручную, а эволюционирует. Агент учится по функции потерь, которую подобрал внешний цикл — и переносит навык на задачи, которых не видел.

В 2018 году исследователи OpenAI опубликовали работу Evolved Policy Gradients (EPG) — попытку убрать из обучения с подкреплением ту часть, которую обычно пишет человек. В классическом policy gradient инженер сам выбирает форму функции потерь: как считать преимущество (advantage), как штрафовать за энтропию, какие сигналы усиливать. EPG предлагает вместо этого запустить эволюционный поиск, который сам подбирает функцию потерь — представленную нейросетью. Внутренний цикл обучает агента по этой потере, внешний цикл эволюции отбирает те потери, при которых агент учится быстрее и лучше.
Практический интерес не в том, что метод бьёт рекорды на конкретной среде. Интерес в переносе: агент, обученный найденной функцией потерь, справлялся с задачами, которых не было в обучении эволюционного цикла. Это ближе к идее «алгоритма, который учится учиться», чем к очередному тюнингу гиперпараметров.
Что именно эволюционирует
Обычный градиент политики оптимизирует ожидаемую награду напрямую: вы берёте траектории, считаете отдачу, двигаете параметры политики в сторону действий, которые дали больше награды. Функция потерь здесь фиксирована и выведена аналитически.
EPG ломает это разделение. Функция потерь становится обучаемой нейросетью со своими параметрами — их называют мета-параметрами. Она получает на вход историю взаимодействия агента со средой (наблюдения, действия, награды, контекст) и выдаёт скалярную величину потерь, по которой агент делает шаги обычного стохастического градиентного спуска.
- Внутренний цикл — агент учится в конкретной среде, минимизируя выданную функцию потерь обычным SGD в течение фиксированного числа шагов.
- Внешний цикл — эволюционная стратегия (ES1) оценивает, насколько хорошо получившийся агент решает задачу, и корректирует мета-параметры функции потерь.
Ключевая деталь: внешний цикл не использует градиенты по внутреннему обучению. Он относится к результату внутреннего цикла как к чёрному ящику и оптимизирует функцию потерь методом эволюционных стратегий — случайными возмущениями мета-параметров с последующим взвешиванием по итоговому качеству.
Инженер перестаёт писать функцию потерь и начинает писать распределение задач, на которых она должна вырасти. Ответственность за «как учить» сдвигается с формулы на дизайн среды.
Почему эволюция, а не градиент второго порядка
Мета-обучение через градиенты (как в MAML) требует дифференцировать процесс обучения насквозь, что при длинных внутренних циклах становится неустойчивым и дорогим по памяти. Эволюционные стратегии этого не требуют: им нужен только финальный скор. Плата — высокая дисперсия оценки и потребность в массовом параллелизме. EPG опирается на то, что ES хорошо масштабируется на сотни воркеров одновременно.
Что показал перенос
Самый интересный результат работы — обобщение за пределы обучающего распределения. Функцию потерь эволюционировали на семействе близких задач, а затем применяли к новой. В отдельных случаях агент, обученный этой найденной потерей, осваивал среду, где стандартные заданные вручную методы обучались медленнее или не выходили на тот же уровень за то же число шагов.
Важно не переоценивать: EPG не универсальный оптимизатор. Найденная функция потерь несёт в себе структуру того распределения задач, на котором её вырастили. Перенос работает, пока новая задача достаточно похожа. Это скорее «выученный индуктивный сдвиг», чем магия.
Где сравнивать с соседями
| Подход | Что задаёт человек | Что оптимизируется |
|---|---|---|
| Обычный policy gradient | Функцию потерь целиком | Параметры политики |
| MAML (мета-обучение) | Функцию потерь, алгоритм | Начальные веса для быстрой адаптации |
| Evolved Policy Gradients | Распределение задач | Саму функцию потерь (мета-параметры) |
Таблица упрощает картину, но показывает главное: EPG сдвигает границу между «задано» и «выучено» дальше, чем большинство методов того периода.
Цена вопроса
Метод недёшев. Эволюционные стратегии во внешнем цикле требуют многократного прогона внутреннего обучения — по сути, вы обучаете агента с нуля десятки и сотни раз, чтобы оценить одну версию функции потерь. Это оправдано в исследовании, но для прикладной задачи с ограниченным бюджетом вычислений почти всегда дешевле взять готовый PPO и настроить его руками.
- Плюс: потенциально лучший перенос и меньше ручного тюнинга функции потерь.
- Минус: дорогой внешний цикл, высокая дисперсия ES, чувствительность к тому, как составлено распределение обучающих задач.
- Риск: выученная потеря переобучается под узкое семейство сред и ломается на действительно новых задачах.
Если вы прикидываете, стоит ли трогать EPG в своём проекте, честный ориентир такой: это инструмент для тех, кто исследует мета-обучение и располагает большим параллельным кластером, а не для продуктовой команды, которой нужно обучить одного агента под одну среду.
1 Эволюционные стратегии (Evolution Strategies) — метод оптимизации без градиентов: параметры возмущаются случайным шумом, каждая версия оценивается, а итоговое обновление — взвешенное по качеству среднее возмущений. Хорошо параллелится, но требует много прогонов.
Prompt-инженер: Идеальные запросы для Midjourney, ChatGPT и других моделей.
Спросить за 15 ₽Источники: OpenAI — Evolved Policy Gradients (research blog), Houthooft et al., Evolved Policy Gradients (arXiv:1802.04821)
Частые вопросы
Чем EPG отличается от обычного обучения с подкреплением?
Почему используются эволюционные стратегии, а не градиентный спуск во внешнем цикле?
EPG действительно обобщается на новые задачи?
Можно ли применить EPG в продакшене?
Заменяет ли EPG ручную настройку гиперпараметров?
Материал носит информационный характер и подготовлен редакцией «Агентуры». Он не является офертой, рекламой или индивидуальной консультацией. Упомянутые продукты, компании и торговые знаки принадлежат их правообладателям. Перед принятием решений, влекущих юридические или финансовые последствия, обратитесь к профильному специалисту.