Обучение с подкреплением является направленным на достижение цели вычислительным подходом, где компьютер учится выполнять задачу путем взаимодействия с неизвестной динамической средой. Этот подход обучения позволяет компьютеру принимать ряд решений для максимизации совокупного вознаграждения за задачу без человеческого вмешательства и не будучи явным образом запрограммированным для достижения цели. Следующая схема показывает общее представление сценария обучения с подкреплением.
Цель обучения с подкреплением состоит в том, чтобы обучить агента выполнять задачу в неизвестной среде. Агент получает наблюдения и вознаграждение средой и отправляет действия в среду. Вознаграждение является мерой того, насколько успешный действие относительно завершения цели задачи.
Агент содержит два компонента: политика и алгоритм обучения.
Политика является отображением, которое выбирает действия на основе наблюдений средой. Как правило, политика является функцией approximator с настраиваемыми параметрами, такими как глубокая нейронная сеть.
Алгоритм обучения постоянно обновляет параметры политики на основе действия, наблюдений и вознаграждения. Цель алгоритма обучения состоит в том, чтобы найти оптимальную политику, которая максимизирует совокупное вознаграждение, полученное во время задачи.
Другими словами, обучение с подкреплением относится к агенту, изучающему оптимальное поведение посредством многократных взаимодействий проб и ошибок с окружающей средой без человеческого участия.
Как пример, рассмотрите задачу парковки транспортного средства с помощью автоматизированной системы вождения. Цель этой задачи для компьютера транспортного средства (агент), чтобы припарковать транспортное средство в правильном положении и ориентации. Для этого диспетчер использует показания от камер, акселерометров, гироскопов, GPS-приемника и лидара (наблюдения), чтобы сгенерировать команды для руля и педалей тормоза и газа (действия). Команды действия отправляются в приводы, которые управляют транспортным средством. Получившиеся наблюдения зависят от приводов, датчиков, динамики аппарата, дорожного покрытия, ветра и многих других менее важных факторов. Все эти факторы, то есть, все, что не является агентом, составляет среду в обучении с подкреплением.
Чтобы изучить, как сгенерировать правильные действия от наблюдений, компьютер неоднократно пытается припарковать транспортное средство с помощью эмпирического процесса. Чтобы вести процесс обучения, вы обеспечиваете сигнал, равный единице, когда автомобиль успешно достигает желаемого положения и ориентации и нуля в противном случае (вознаграждение). Во время каждого испытания компьютер выбирает действия с помощью отображения (политика), инициализированного с некоторыми значениями по умолчанию. После каждого испытания компьютер обновляет отображение, чтобы максимизировать вознаграждение (алгоритм обучения). Этот процесс продолжается, пока компьютер не обучается оптимальному отображению, которое успешно паркует автомобиль.
Общий процесс настройки агента, используя обучение с подкреплением, включает следующие шаги.
Сформулируйте проблему — Опишите задачу для обучения агента, включая то, как агент взаимодействует со средой и любыми первичными и вторичными целями, которых должен достигнуть агент.
Создайте Среду — Задают среду, в которой агент действует, включая интерфейс между агентом и средой и динамической моделью среды. Для получения дополнительной информации смотрите, Создают Среды MATLAB для Обучения с подкреплением и Создают окружения Simulink для Обучения с подкреплением.
Задайте Вознаграждение — Определите сигнал вознаграждения, который использует для измерения своей успешности выполнения целей задачи агент и как этот сигнал вычисляется средой. Для получения дополнительной информации смотрите, Задают Сигналы вознаграждения.
Создайте Агента — Создайте агента, который включает определение представления политики и конфигурирование алгоритма обучения агента. Для получения дополнительной информации смотрите, Создают политику и Представления Функции Значения и Агентов Обучения с подкреплением.
Обучите Агента — Настройте представление политики агента с помощью заданной среды, вознаграждения и алгоритма обучения агента. Для получения дополнительной информации смотрите, Обучают Агентов Обучения с подкреплением.
Подтвердите Агента — Вычислите производительность обученного агента путем симуляции агента и среды вместе. Для получения дополнительной информации смотрите, Обучают Агентов Обучения с подкреплением.
Разверните политику — Разверните обученное использование представления политики, например, сгенерированный код графического процессора. Для получения дополнительной информации смотрите, Развертывают Обученные политики Обучения с подкреплением.
Настройка агента с помощью обучения с подкреплением является итеративным процессом. Решения и результаты на более поздних этапах могут потребовать, чтобы вы возвратились к более ранней стадии в рабочем процессе обучения. Например, если процесс обучения не сходится к оптимальной политике за разумное время, вам, вероятно, перед переобучением агента придется обновить любое из следующих:
Настройки обучения
Конфигурацию алгоритма обучения
Представление политики
Определение сигнала вознаграждения
Сигналы действия и наблюдения
Динамику среды