Аутсорсинговый центр

Неземной
аутсорсинг

Обучение с подкреплением (reinforcement learning)

Обучение с подкреплением (англ. reinforcement learning) — способ машинного обучения, в котором обучаемая система (агент) выстраивает стратегию поведения через непосредственное взаимодействие со средой, получая от неё сигналы подкрепления — вознаграждения или штрафы — и стремясь максимизировать суммарное вознаграждение.

Что означает термин

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

Нередко обучение с подкреплением поясняют аналогией из поведенческой психологии: так же, как ребёнок обнаруживает, что одни его поступки вызывают одобрение, а другие — негативную реакцию, и со временем выбирает стратегию, ведущую к вознаграждению, программный агент закрепляет те действия, за которые среда выдаёт положительный отклик.

Как устроено

В произвольный момент времени агент характеризуется состоянием s_t и набором допустимых действий A(s_t). Выбирая действие, он переходит в новое состояние и получает от среды вознаграждение r_t — положительное или отрицательное. Цель агента — выработать стратегию π: S → A, которая максимизирует величину суммарного выигрыша R за весь период взаимодействия.

Важной чертой обучения с подкреплением является дилемма «исследование — применение» (exploration vs exploitation): агент должен одновременно использовать уже накопленные знания и исследовать неизученные области среды, иначе он рискует застрять в неоптимальной стратегии. Классической иллюстрацией этой дилеммы служит задача о многоруком бандите, где приходится решать, какие из нескольких рычагов автомата тянуть и в какой момент.

Где применяется

Обучение с подкреплением используют там, где поведение среды слишком сложно или невозможно описать заранее заданной выборкой «вход — правильный ответ» и где агент может накапливать опыт методом проб и ошибок — в реальной среде или в симуляции. Это задачи последовательного принятия решений, в том числе игровые и симуляционные среды, управление роботами и навигация.

Для разработки и экспериментов существуют специализированные программные библиотеки и платформы: BURLAP (Java, лицензия LGPL), MMLF (Python, GPL) и OpenAI Gym (Python, MIT). Фундаментальным учебным пособием по дисциплине считается книга Ричарда С. Саттона и Эндрю Г. Барто «Reinforcement Learning», выходившая на русском языке в издательствах «БИНОМ. Лаборатория знаний» (2017) и «ДМК Пресс» (2020).

Отличие от близких понятий

Принципиальное отличие от обучения с учителем состоит в том, что обучающей системе не предоставляются явные верные пары «входные данные — ответ», а принятие субоптимальных решений не блокируется заранее: агент сам узнаёт по сигналу подкрепления, насколько удачным было его действие. От классического обучения без учителя обучение с подкреплением отличается тем, что там обычно выявляется структура в данных, тогда как здесь в центре внимания — выработка стратегии, максимизирующей внешний сигнал вознаграждения.

В части источников обучение с подкреплением характеризуется как частный случай обучения с учителем, где роль «учителя» выполняет среда, выдающая вознаграждение; в других источниках оно, наоборот, противопоставляется обучению с учителем именно по отсутствию готовых правильных ответов.

Возврат к списку

База знаний организована при поддержке делового сообщества. Спираль?!