Проксимальная оптимизация политики
Часть серии о |
Машинное обучение и интеллектуальный анализ данных |
---|
Эта статья нуждается в дополнительных цитатах для проверки . ( октябрь 2022 г. ) |
Оптимизация проксимальной политики (PPO) — это алгоритм в области обучения с подкреплением , который тренирует функцию принятия решения компьютерного агента для выполнения сложных задач. PPO был разработан Джоном Шульманом в 2017 году. [1] и стал алгоритмом обучения с подкреплением по умолчанию в американской компании OpenAI , занимающейся искусственным интеллектом . [2] В 2018 году PPO добилась множества успехов, таких как управление роботизированной рукой, победа над профессиональными игроками в Dota 2 и превосходство в играх Atari. [3] Многие эксперты назвали PPO новейшим достижением, поскольку кажется, что он обеспечивает баланс между производительностью и пониманием. [ нужна ссылка ] По сравнению с другими алгоритмами тремя основными преимуществами PPO являются простота, стабильность и эффективность выборки. [4]
PPO классифицируется как метод градиента политики для обучения сети политик агента. Сеть политики — это функция, которую агент использует для принятия решений. По сути, для обучения правильной сети политик PPO выполняет небольшое обновление политики (размер шага), чтобы агент мог надежно найти оптимальное решение. Слишком большой шаг может направить политику в ложном направлении, что приведет к малой вероятности восстановления; слишком маленький шаг снижает общую эффективность. Следовательно, PPO реализует функцию ограничения, которая не позволяет обновлению политики агента быть слишком большим или слишком маленьким. [4]
Разработка
[ редактировать ]Обучение с подкреплением (RL), к которому относится PPO, имеет корни в психологии и нейробиологии. По сравнению с другими областями машинного обучения обучение с подкреплением близко имитирует обучение, которое проводят люди и другие животные. Многие из основных алгоритмов, включая PPO, изначально были вдохновлены системами биологического обучения, такими как психолога Эдварда Торндайка (1913). обучение методом проб и ошибок [5] [6]
В 2015 году Джон Шульман представил оптимизацию политики доверительного региона (TRPO) как более раннюю версию PPO. TRPO решил проблему нестабильности, обнаруженную в предыдущем алгоритме, глубокой q-сети (DQN), используя ограничение области доверия для регулирования расхождения KL между старой и новой политикой. Однако TRPO сложен в вычислительном отношении и неэффективен из-за его оптимизации второго порядка, что приводит к дорогостоящей и сложной реализации для крупномасштабных задач. [7] [8]
В 2017 году Джон Шульман решил проблему сложности TRPO, приняв оптимизацию первого порядка в PPO. Шульман и его команда разработали механизм ограничения, который запрещает новой политике значительно отклоняться от старой, когда отношение правдоподобия между ними выходит за пределы диапазона ограничения. [1] [8] Другими словами, PPO модифицирует целевую функцию TRPO, наказывая за слишком большие обновления политики. Кроме того, PPO удаляет сложные ограничения доверительной области и вместо этого использует функцию отсечения. В результате PPO улучшает производительность и реализацию на основе TRPO.
Теория
[ редактировать ]В этом разделе сначала будут рассмотрены ключевые компоненты основного алгоритма PPO, а затем углублённо рассмотрена основная целевая функция PPO.
Основные понятия
[ редактировать ]Чтобы начать процесс обучения PPO, агент помещается в среду для выполнения действий на основе текущих входных данных. На раннем этапе обучения агент может свободно исследовать решения и отслеживать результат. Позже, получив определенное количество наборов данных и обновлений политики, агент выберет действие, которое необходимо предпринять, путем случайной выборки из распределения вероятностей. генерируется сетью политик. [9] Действия, которые с наибольшей вероятностью принесут пользу, будут иметь наибольшую вероятность быть выбранными из случайной выборки. После того, как агент, действуя, достигает другого сценария, известного как состояние , он вознаграждается положительным или отрицательным вознаграждением. Цель агента — максимизировать общее вознаграждение в ряде состояний, также называемых эпизодами. Ученые подкрепляют агента, чтобы он научился выполнять лучшие действия на основе опыта, и эта функция принятия решения называется политикой. [10]
Градиентные законы политики: функция преимущества A
[ редактировать ]Как существенная часть PPO, функция преимущества пытается ответить на вопрос, является ли конкретное действие агента лучше, чем другое возможное действие в данном состоянии, или хуже, чем другое действие. По определению, функция преимущества — это оценка относительной ценности выбранного действия. Положительный результат функции преимущества означает, что выбранное действие лучше, чем средний доход, поэтому возможности этого конкретного действия увеличатся, и наоборот. [8]
Расчет функции преимущества: A = дисконтированная сумма (Q) – базовая оценка (V). Первая часть, сумма со скидкой, представляет собой общую взвешенную награду за завершение текущего эпизода. Больше веса будет придаваться конкретному действию, которое приносит легкое и быстрое вознаграждение. С другой стороны, меньший вес будет придаваться действиям, которые требуют значительных усилий, но предлагают непропорциональное вознаграждение. [11] [8] Поскольку функция преимущества рассчитывается после завершения эпизода, программа записывает результат эпизода. Следовательно, вычисление преимущества — это, по сути, задача обучения без присмотра . Вторая часть, базовая оценка, представляет собой функцию значения, которая выводит ожидаемую дисконтированную сумму эпизода, начиная с текущего состояния. В алгоритме PPO базовая оценка будет зашумлена (с некоторыми отклонениями ), поскольку в нем используется нейронная сеть . После расчета двух частей функция преимущества рассчитывается путем вычитания базовой оценки из фактической прибыли (дисконтированной суммы). [12] А > 0 означает, насколько лучше фактическая отдача от действия основана на ожидаемой отдаче из опыта; Значение <0 означает, насколько плоха фактическая доходность по сравнению с ожидаемой доходностью.
Функция отношения
[ редактировать ]В PPO функция отношения вычисляет вероятность выполнения действия a в состоянии s в текущей сети политики, деленную на предыдущую старую версию политики.
В этой функции rt ( θ ) обозначает отношение вероятностей между текущей и старой политикой:
- Если rt ( θ )>1, действие a в состоянии s с большей вероятностью основано на текущей политике, чем на старой политике.
- Если rt ( θ ) находится между 0 и 1, действие a в состоянии s менее вероятно на основе текущей политики, чем старая политика.
Эта функция отношения может легко оценить расхождение между старой и текущей политикой. [13] [4]
Целевая функция PPO
[ редактировать ]Центральная целевая функция PPO принимает оператор ожидания (обозначенный как E), что означает, что эта функция будет вычисляться по количеству траекторий. Оператор ожидания принимает минимум два члена:
1. R-тета * Функция преимущества: это произведение функции соотношения и функции преимущества, которая была введена в TRPO, также известная как цель нормального политического градиента. [14]
2. Ограничение (R-тета) * Функция преимущества: соотношение политики сначала ограничивается между 1-эпсилон и 1 + эпсилон; обычно эпсилон определяется как 0,20. Затем умножьте обрезанную версию на преимущество.
Фундаментальная идея PPO та же, что и TRPO: консерватизм. Отсечение применяется для того, чтобы сделать «оценку преимуществ» новой политики консервативной. Причина консерватизма заключается в том, что если агенты внесут существенные изменения из-за высоких оценок преимуществ, обновление политики будет масштабным и нестабильным и может «упасть со скалы» (малая вероятность восстановления). [15] Существует два распространенных применения функции отсечения. Когда действие в соответствии с новой политикой оказывается действительно хорошим действием, основанным на функции преимущества, функция отсечения ограничивает, сколько баллов можно присвоить новой политике за повышенный вес хороших действий. С другой стороны, когда действие в соответствии со старой политикой оценивается как плохое действие, функция отсечения ограничивает, насколько агент может сократить слабину новой политики для снижения веса плохих действий. [16] Следовательно, механизм ограничения предназначен для того, чтобы препятствовать выходу за пределы определенного диапазона путем ограничения в обоих направлениях. Преимущество этого метода в том, что его можно оптимизировать непосредственно с помощью градиентного спуска , в отличие от строгого ограничения расходимости KL TRPO, что делает реализацию более быстрой и чистой.
После вычисления усеченной суррогатной целевой функции программа имеет два отношения вероятностей: одно неусеченное и одно усеченное; затем, взяв минимум из двух целей, конечная цель становится нижней границей (пессимистической границей) того, что, как знает агент, возможно. [16] Другими словами, минимальный метод гарантирует, что агент выполняет максимально безопасное обновление.
Преимущества
[ редактировать ]Простота
[ редактировать ]PPO аппроксимирует то, что сделал TRPO, без выполнения слишком больших вычислений. Он использует оптимизацию первого порядка (функция ограничения) для ограничения обновления политики, в то время как TRPO использует ограничения дивергенции KL вне целевой функции (оптимизация второго порядка). По сравнению с TRPO метод PPO относительно прост в реализации и требует меньше времени вычислений. Поэтому дешевле и эффективнее использовать PPO в масштабных задачах. [17]
Стабильность
[ редактировать ]В то время как другие алгоритмы обучения с подкреплением требуют настройки гиперпараметров , PPO не обязательно требует настройки гиперпараметров (в большинстве случаев можно использовать 0,2 для эпсилона). [18] Кроме того, PPO не требует сложных методов оптимизации. Его можно легко применить на практике с помощью стандартных структур глубокого обучения и обобщить для широкого круга задач.
Эффективность выборки
[ редактировать ]Эффективность выборки показывает, требуется ли алгоритмам больший или меньший объем данных для обучения хорошей политике. Алгоритмы, соответствующие политике, включая PPO и TRPO, обычно имеют низкий уровень эффективности выборки. [19] Однако PPO добился эффективности выборки благодаря использованию суррогатных целей. Суррогатные цели позволяют PPO избежать слишком сильного изменения новой политики по сравнению со старой; функция клипа упорядочивает обновление политики и повторно использует данные обучения. Эффективность выборки особенно полезна для сложных и объемных задач, где сбор данных и вычисления могут быть дорогостоящими. [20]
См. также
[ редактировать ]Ссылки
[ редактировать ]- ^ Jump up to: а б Дж. Шульман, Ф. Вольски, П. Дхаривал, А. Рэдфорд и О. Климов, «Алгоритмы оптимизации проксимальной политики», arXiv.org, https://arxiv.org/abs/1707.06347 , arXiv:1707.06347 [cs. ЛГ].
- ^ OpenAI, « Оптимизация проксимальной политики». Доступно по адресу: https://openai.com/research/openai-baselines-ppo (получено 1 ноября 2023 г.).
- ^ Информация об Arxiv. «Введение в методы политического градиента», YouTube , 1 октября 2018 г. [Видеофайл]. Доступно: https://www.youtube.com/watch?v=5P7I-xPq8u8 .
- ^ Jump up to: а б с Т. Симонини, «Оптимизация проксимальной политики (PPO)», Hugging Face – сообщество искусственного интеллекта, строящее будущее, https://huggingface.co/blog/deep-rl-ppo .
- ^ Р. Саттон и А. Барто, Обучение с подкреплением: введение, https://beiyulincs.github.io/teach/spring_21/behavior_modeling/reading/rl_reading.pdf (по состоянию на 6 ноября 2023 г.).
- ^ К. Махони, «Обучение с подкреплением: обзор исторических, современных и исторических событий ... | К науке о данных», Medium, 30 марта 2022 г. [Онлайн]. Доступно: https://towardsdatascience.com/reinforcement-learning-fda8ff535bb6#5554.
- ^ Ван, Ю., Хэ, Х., Вэнь, К., и Тан, X. (2019). Действительно ближайшая оптимизация политики. АрXив . /abs/1903.07940
- ^ Jump up to: а б с д Шульман Дж., Левин С., Мориц П., Джордан М.И. и Аббил П. (2015). Оптимизация политики доверительного региона. АрXив . /абс/1502.05477
- ^ «Руководство для начинающих по глубокому обучению с подкреплением», Pathmind . https://wiki.pathmind.com/deep-reinforcement-learning#reward
- ^ QT Луу, «Q-обучение против глубокого Q-обучения против глубокой Q-сети», Baeldung on Computer Science, https://www.baeldung.com/cs/q-learning-vs-deep-q-learning -vs-deep-q-network (по состоянию на 1 ноября 2023 г.).
- ^ OpenAI, «Часть 1: Ключевые понятия в RL¶», Часть 1: Ключевые понятия в RL — документация Spinning Up, https://spinningup.openai.com/en/latest/spinningup/rl_intro.html (по состоянию на 4 ноября). , 2023).
- ^ Рохиткумар, «PPO (оптимизация проксимальной политики) объяснено примерами кода в Pytorch и тензорном потоке», PlainSwipe, https://plainswipe.com/ppo-proximal-policy-optimization-explained-with-code-examples-in-pytorch- and-tensorflow/ (по состоянию на 5 ноября 2023 г.).
- ^ В. Хисвейк, «Объяснение оптимизации проксимальной политики (PPO)», Medium, https://towardsdatascience.com/proximal-policy-optimization-ppo-explained-abed1952457b (по состоянию на 4 ноября 2023 г.).
- ^ Эдан Мейер. «Объяснение оптимизации проксимальной политики», YouTube , 20 мая 2021 г. [Видеофайл]. Доступно: https://www.youtube.com/watch?v=HrapVFNBN64 (по состоянию на 4 ноября 2023 г.).
- ^ CM Wild. В погоне за (роботизированным) счастьем: как TRPO и PPO стабилизируют градиентные методы политики. 2018. URL: https://towardsdatascience.com/the-pursuit-of-robotic-happiness-how-trpoand-ppo-stabilize-policy-gradient-methods-545784094e3b (посещение 11 мая 2023 г.).
- ^ Jump up to: а б Чжэн Р., Доу С., Гао С., Хуа Ю., Шен В., Ван Б. (2023). Секреты RLHF в моделях большого языка. Часть I: PPO. АрXив . /абс/2307.04964
- ^ Дж. Носедал и Ю. Нестеров, «Естественная оптимизация, доверительный регион и проксимальная политика», TransferLab, https://transferlab.ai/blog/trpo-and-ppo/ (по состоянию на 5 ноября 2023 г.).
- ^ Дж. Хуэй, «RL — сравнение алгоритмов обучения с подкреплением», Medium, https://jonathan-hui.medium.com/rl-reinforcement-learning-algorithms-comparison-76df90f180cf (по состоянию на 4 ноября 2023 г.).
- ^ Хуан, Шэньи и Досса, «37 деталей реализации проксимальной оптимизации политики», 37 деталей реализации проксимальной оптимизации политики · Трек блога ICLR, https://iclr-blog-track.github.io/2022/03 /25/ppo-implementation-details/ (по состоянию на 5 ноября 2023 г.).
- ^ СяоЯн-ElegantRL, «ElegantRL: Освоение алгоритмов PPO — к науке о данных», Medium , 23 ноября 2022 г. [Онлайн]. Доступно: https://towardsdatascience.com/elegantrl-mastering-the-ppo-algorithm-part-i-9f36bc47b791.