Actor-critic: обзор

Урок даёт обзор actor-critic — гибрида, объединяющего политику и функцию ценности.

Actor-critic — это семейство методов с двумя компонентами: актёр (actor) учит политику и выбирает действия, а критик (critic) оценивает их через функцию ценности и подсказывает актёру, насколько действие было хорошим.

Зачем объединять два подхода

В прошлом уроке мы увидели проблему REINFORCE: чтобы оценить, хорошим ли было действие, он ждёт конца эпизода и использует шумный возврат G. Это медленно и нестабильно. Value-методы (TD) умеют оценивать на каждом шаге, но напрямую не дают стохастической политики для непрерывных действий. Actor-critic берёт лучшее: актёр — это policy gradient, критик — это TD-оценка ценности, которая заменяет шумный возврат стабильной оценкой.

Разделение ролей

КомпонентЧто делаетИз какого мира
Актёр (actor)выбирает действия по политике pipolicy gradient
Критик (critic)оценивает действия через V или QTD-обучение

Как они учатся вместе

На каждом шаге происходит маленький диалог. Актёр предлагает действие. Среда даёт награду и новое состояние. Критик считает TD-ошибку (как в уроке про TD): был ли результат лучше ожидаемого. Эта TD-ошибка играет роль «преимущества» (advantage) — она говорит актёру: «это действие оказалось лучше среднего, повышай его вероятность» или наоборот. Одновременно критик уточняет собственную оценку ценности. Так обе сети улучшаются на каждом шаге, без ожидания конца эпизода.

Один шаг actor-critic:
  действие a ~ pi(actor)         (актёр предложил)
  r, s' = среда                  (награда и новое состояние)
  delta = r + gamma*V(s') - V(s) (критик считает TD-ошибку = преимущество)
  обновить актёра: повысить pi(a|s) пропорционально delta
  обновить критика: V(s) += alpha * delta

Знакомая TD-ошибка delta здесь выполняет двойную работу: учит критика (как в TD-обучении) и направляет актёра (как baseline-преимущество в policy gradient).

Как работает под капотом

Современные алгоритмы (A2C, A3C, PPO, SAC) — это развитые actor-critic методы. Они добавляют параллельный сбор опыта, ограничение на размер шага политики (чтобы не «сломать» её одним обновлением) и энтропийные бонусы для исследования. Именно семейство actor-critic, особенно PPO, стало рабочей лошадкой современного RL — от робототехники до RLHF в языковых моделях. Реализация требует нейросетевых библиотек и здесь не запускается.

Частые ошибки

  • Рассинхрон актёра и критика. Если критик плохо обучен, он даёт неверные подсказки, и актёр учится не тому. Их скорости обучения нужно балансировать.
  • Слишком большой шаг политики. Резкое обновление актёра может разрушить уже найденное поведение; PPO специально это ограничивает.
  • Считать actor-critic «просто REINFORCE». Ключевое отличие — критик заменяет шумный возврат на стабильную TD-оценку, резко снижая дисперсию.

Итоги

  • Actor-critic объединяет policy gradient (актёр) и TD-оценку ценности (критик).
  • TD-ошибка критика служит сигналом преимущества для обновления актёра, снижая дисперсию.
  • Развитые версии (PPO, SAC, A3C) — основа современного практического RL.
Проверьте себя
1. Какие две роли в actor-critic?
AУчитель и ученик
BАктёр выбирает действия (политика), критик оценивает их (функция ценности)
CСервер и клиент
DСреда и награда
2. Что критик передаёт актёру как сигнал обучения?
AПолный список состояний
BTD-ошибку (преимущество): насколько действие оказалось лучше ожидаемого
CСлучайное число
DРазмер награды за весь эпизод в конце
3. Чем actor-critic выигрывает у чистого REINFORCE?
AНе требует наград
BКритик заменяет шумный полный возврат стабильной TD-оценкой, снижая дисперсию и обучаясь по шагам
CРаботает без политики
DНе нуждается в исследовании