В рамках курса Стэнфордского университета AA228/CS238 «Принятие решений в условиях неопределенности» магистрантка Амелия провела лекцию, посвященную методам оценки градиента стратегии (Policy Gradient Estimation). Это критически важный этап в обучении с подкреплением (Reinforcement Learning), позволяющий оптимизировать поведение агентов в сложных средах — от управления микроклиматом в зданиях до управления беспилотниками.
🌡️ Основы параметризации стратегий и полезности 1:06
Стратегия ($\pi$) определяет, какое действие следует предпринять в зависимости от текущего состояния среды . В качестве примера Амелия приводит систему контроля температуры в здании: в зависимости от показаний термометра агент должен решить, включить ли обогрев или кондиционер .
Однако хранить стратегию в виде таблицы соответствий «состояние — действие» невозможно, если пространство состояний непрерывно или слишком велико . Решением становится параметризация стратегии с помощью вектора параметров $\theta$. В примере с термостатом параметрами могут выступать пороговые значения температуры $\theta_1$ и $\theta_2$: ниже одного включается нагрев, выше другого — охлаждение .
Ключевые понятия оптимизации:
- Полезность ($U(\theta)$): Общий ожидаемый доход при использовании стратегии с параметрами $\theta$ .
- Градиент полезности ($\nabla U(\theta)$): Вектор частных производных, указывающий направление наиболее эффективного изменения параметров для максимизации полезности .
- Симуляции (Rollouts): Процесс проигрывания сценариев для оценки того, насколько хороша текущая стратегия .
📉 Метод конечных разностей (Finite Differences) 4:56
Первый и самый простой метод оценки градиента — конечные разности, знакомые из базового курса исчисления . Суть заключается в том, чтобы немного изменить один из параметров и посмотреть, как изменится полезность.
Процесс выглядит следующим образом:
- Берется текущий вектор параметров $\theta$.
- К одному из параметров добавляется малое значение $\Delta$ .
- Вычисляется разница между новой и старой полезностью, деленная на $\Delta$.
- Операция повторяется для каждого из $n$ параметров, формируя вектор градиента .
Амелия отмечает, что этот метод требует проведения симуляций (роллаутов) для каждого изменения. По её мнению, точность метода сильно зависит от дисперсии функции полезности: если результаты симуляций сильно варьируются, для получения качественной оценки потребуется огромное количество итераций . Также лектор предупреждает о проблемах масштабируемости: если параметры имеют разные порядки величин, применение одного и того же $\Delta$ ко всем может привести к некорректным результатам .
📊 Регрессионный градиент (Regression Gradient) 9:00
Более надежным подходом является метод регрессии, который часто встречается в курсах по машинному обучению . Вместо изменения одного параметра за раз, этот метод предполагает одновременное внесение случайных возмущений во все параметры.
Алгоритм работы метода:
- Сбор данных: Создается матрица возмущений $\Delta \theta$. Амелия рекомендует использовать количество возмущений ($m$), вдвое превышающее количество параметров ($n$) .
- Сэмплирование: Возмущения обычно выбираются случайным образом из нормального распределения и нормализуются. Визуально это можно представить как выбор точек на поверхности гиперсферы вокруг текущего значения $\theta$ .
- Оценка изменений: Для каждого возмущения проводится симуляция и вычисляется изменение полезности $\Delta U$ .
- Аппроксимация: Градиент находится путем решения задачи линейной регрессии между изменениями параметров и изменениями полезности.
Для вычисления используется псевдообратная матрица (pseudoinverse), так как матрица возмущений обычно не является квадратной и напрямую необратима . По словам Амелии, этот метод более устойчив в высокомерных пространствах, так как он усредняет информацию из множества случайных направлений.
🎲 Отношение правдоподобия (Likelihood Ratio) 19:33
Третий и самый математически сложный метод — это использование отношения правдоподобия, который лежит в основе современных алгоритмов Policy Gradient . Этот метод позволяет аналитически выразить градиент полезности через математическое ожидание.
Основные компоненты формулы:
- Траектория ($\tau$): Последовательность состояний и действий агента .
- Доход ($R(\tau)$): Суммарная награда за всю траекторию, часто рассчитываемая с учетом дисконтирования .
- Правдоподобие траектории ($P_\theta(\tau)$): Вероятность того, что данная траектория произойдет при текущей стратегии .
Амелия демонстрирует вывод формулы через «трюк с логарифмической производной» (log derivative trick) . Главное преимущество этого метода в том, что он позволяет оценивать градиент, используя только опыт (траектории), полученный текущей стратегией, без необходимости знать динамику среды (вероятности переходов между состояниями).
В ходе вывода Амелия доказывает, что при взятии градиента логарифма правдоподобия траектории все члены, не зависящие от параметров $\theta$ (например, начальное распределение состояний и физика среды), обнуляются . Это оставляет нам чистую формулу, зависящую только от градиента логарифма самой стратегии.
Стохастические против детерминированных стратегий 29:33
Амелия подчеркивает различие между двумя типами стратегий:
- Детерминированные: Всегда выдают одно и то же действие для конкретного состояния (например, «при 30 градусах всегда включать нагрев») .
- Стохастические: Выдают распределение вероятностей действий (например, «90% — нагрев, 5% — кондиционер, 5% — ничего») .
Интересный вывод лекции заключается в том, что стохастические стратегии вычислительно проще для оценки градиента . Это связано с тем, что они позволяют плавно менять вероятности действий, что делает функцию полезности дифференцируемой и удобной для оптимизации. В реальной практике, как утверждает Амелия, из-за невозможности перебрать все возможные траектории, инженеры используют сэмплирование — выборку наиболее вероятных или критически важных сценариев для обучения .