Обучение с подкреплением занимает особое место в мире машинного обучения. В отличие от других форм машинного обучения, таких как контролируемое или неконтролируемое обучение, обучение с подкреплением не требует каких-либо существующих данных, а скорее генерирует эти данные путем проведения экспериментов в заранее определенной среде. Эксперименты руководствуются целью, которая может быть предоставлена ​​извне в качестве награды или может быть внутренней, например исследовать или не скучать.

Это показано на рисунке 1. Агент выполняет действия в заданной среде. Решение о том, какое действие предпринять, определяет политика, в которой в качестве входных данных используется наблюдение за окружающей средой. Основываясь на вознаграждениях, которые в основном дает окружение, со временем политика может измениться. Лучше всего это проиллюстрировать в виде игрового процесса: ваш игровой агент может быть ежом или водопроводчиком, и они могут быть помещены в игровую среду, похожую на лабиринт. На вашем экране отображается текущее наблюдение, а изменение результата в результате действия может быть наградой. Действия - это каждое движение или прыжок вашего агента.

Рисунок 1. Схема управления при обучении с подкреплением

Существует ряд различных алгоритмов обучения для обучения с подкреплением и даже разные категории, образующие таксономию (https://spinningup.openai.com/en/latest/spinningup/rl_intro2.html#a-taxonomy-of-rl-algorithms ). Однако в условиях, когда эксперименты безопасны и дешевы в выполнении (то есть в большинстве случаев, когда эксперименты проводятся в смоделированной среде), алгоритм оптимизации политики PPO (Proximal Policy Optimization) является предпочтительным алгоритмом обучения. Как показано на рисунке 2, PPO работает в два этапа. На первом этапе агент собирает данные, воспроизводя последовательность действий в данной среде. Это повторяется в заданном количестве эпизодов. Агент обычно начинает со случайной политики, так же как ребенок начинает игру, чтобы узнать, как она работает. Эта политика уточняется на втором этапе в зависимости от траекторий, которые выбирает агент. Грубо говоря, политика будет выполнять больше действий, которые имеют лучший результат с точки зрения более высоких вознаграждений.

Рисунок 2. PPO работает в два этапа

Все передовые алгоритмы оптимизации политик, не только PPO, гарантируют, что на втором этапе политика не будет травмирована странными событиями, которые, по сути, позволят ей скатиться по спирали из-за плохих ходов и помешать хорошему результату обучения. Это достигается путем ограничения количества обновлений политики в каждую эпоху обучения. Однако такие жесткие ограничения сложно реализовать, и они не подходят для мира стандартного машинного обучения с учителем. Магия PPO заключается в том, как он переводит это жесткое ограничение на штрафы, которые просто являются дополнительными потерями для стандартных компонентов глубокого обучения. На рисунке 3 вы можете увидеть две нейронные сети, которые PPO использует для реализации поведения и обучения своих агентов. Сеть политик принимает наблюдение в качестве входных данных и решает, какое действие предпринять. Это единственная сеть, которая вам понадобится в производственной среде после завершения обучения. Вторая сеть стабилизирует обучение и делает исходящую политику более общей. В дополнение к упомянутому штрафу, который выражается в виде потерь, каждая сеть также вносит свой вклад в общие потери, которые можно минимизировать с помощью стандартного обучения на основе обратного распространения ошибки.

Рисунок 3. PPO использует две нейронные сети для создания

Если вы хотите узнать больше об обучении с подкреплением с помощью PPO, присоединяйтесь к полудневному практическому обучению на ODSC-West 2021. Основываясь на том, что вы узнали здесь, будет проведено глубокое погружение с объяснением всех различных потерь и вариантов настройки с использованием TF-Agents реализации PPO и TensorFlow 2. На семинаре рассматриваются все уровни сложности. В зависимости от имеющегося опыта вы либо просто поймете идею PPO и обучения с подкреплением, либо проведете более сложные эксперименты, либо даже углубитесь в более глубокие концепции.

Оригинальный пост здесь.

Прочтите больше статей по науке о данных на OpenDataScience.com, включая учебные пособия и руководства от новичка до продвинутого уровня! Подпишитесь на нашу еженедельную рассылку здесь и получайте последние новости каждый четверг. Вы также можете пройти обучение по науке о данных по запросу, где бы вы ни находились, с нашей платформой Ai + Training.