Просто оглянитесь вокруг. Что ты видишь?

Окружающая среда. Место с материальными вещами вокруг вас. Предположим, вы находитесь в комнате и читаете эту статью на своем ноутбуке, а я врываю в вашу среду, бегу к вам с ножом. Что вы будете делать?

Бьюсь об заклад, вы попытаетесь защитить себя или бежать в ограниченных пределах комнаты. Это вы взаимодействуете с окружающей средой, стремясь получить награду (в данном случае пытаясь успешно защититься от меня) или получить наказание (получить неприятное ножевое ранение). Эта способность взаимодействовать с окружающей средой для выполнения задачи, проходя через ряд наказаний и наград, исходит от нашего биологического дара, называемого Мозгом, который в случае людей плотно заполнен нейронами, что дает нам серьезные мыслительные способности.

Теперь подумайте…

Вместо вас в комнате робот. Я в комнате с отверткой весь робот открутить теряю. Но теперь условие состоит в том, что я буду стоять неподвижно, в фиксированном месте в комнате. Роботу нужно найти безопасный путь из комнаты, не наткнувшись на меня. Как он будет достигать этой цели?

Именно здесь начинается идея обучения с подкреплением. В этой статье мы познакомимся с самыми основами RL и познакомим вас с мыслительным процессом, который входит в решение проблемы с использованием RL.

Итак, обучение с подкреплением — это область искусственного интеллекта, в которой мы работаем над интуицией: как бы вы действовали в окружающей среде, чтобы максимизировать данное вознаграждение?

Алгоритмы обучения с подкреплением отслеживают поведение субъекта в окружающей среде и учатся оптимизировать это поведение. Достаточно легко до сих пор? Теперь давайте прочитаем несколько модных словечек, с которыми вы будете часто сталкиваться, имея дело с этой темой. Некоторыми из наиболее распространенных являются марковский процесс принятия решений, дисконтирование, политика, функции ценности, Q-обучение, DQN, градиенты политики, уравнение Беллмана и некоторые сложные математические вычисления.

Не пугайтесь всех этих слов. Все строится поверх друг друга и довольно легко. Вы скоро поймете, почему каждое модное слово называется так, как оно называется, и как определение обучения с подкреплением будет становиться все более сложным по мере нашего продвижения. Итак, давайте съедим всего кита по одному кусочку за раз.

Почему обучение с подкреплением?

Итак, прежде чем начать с нашего самого первого алгоритма, давайте разберемся, почему он был одним из самых обсуждаемых трендов машинного обучения за последние несколько лет. Наиболее актуальной для нас должна быть промышленная автоматизация с обучением с подкреплением. В армировании промышленности обучаемые роботы используются для выполнения различных задач. Помимо того, что эти роботы более эффективны, чем люди, они также могут выполнять задачи, которые были бы опасны для людей. Отличным примером является использование агентов ИИ компанией Deepmind для охлаждения центров обработки данных Google. Это привело к сокращению энергопотребления на 40%. Центры теперь полностью контролируются системой ИИ без необходимости вмешательства человека. Другие варианты использования включают автономное вождение, прогнозирование цен на акции, игры, крупномасштабные производственные системы, здравоохранение и многое другое.

Итак, в целом, RL использует быстрый метод проб и ошибок для разработки надежных решений. Давайте рассмотрим базовый алгоритм, чтобы лучше понять это.

Марковский процесс принятия решений:

Это основа для понимания обучения с подкреплением. Марковский процесс принятия решений дает нам способ формализовать процесс последовательного принятия решений.

Существует лицо, принимающее решение, называемое агентом. Этот агент взаимодействует со средой, в которую он помещен. Эти взаимодействия происходят последовательно во времени.

На каждом временном шаге агент получает некоторое представление о состоянии окружающей среды. Учитывая это представление, агент выбирает действие, которое нужно предпринять. После выполнения действия среда переходит в следующее состояние, и агент получает вознаграждение как следствие своего предыдущего действия.

Итак, теперь вы знаете, что во время обучения агент полностью зависит от сигнала обратной связи (вознаграждения), чтобы понять, насколько хорошим было его действие.

За этим также следуют некоторые сложные на вид вероятности и математика, но давайте пока пропустим это и постараемся придерживаться основ.

Обучение агента или его последующее использование?

Теперь возникает большой вопрос, как долго я должен обучать агента и когда я начну его использовать? После того, как вы создали среду и агента обучения с подкреплением, вы можете обучать агента в среде. Обучение прекращается автоматически, когда выполняются условия, указанные в критериях остановки обучения. На данный момент рассмотрим этот критерий остановки как объект, который отслеживает обучение агента до тех пор, пока агент не начнет работать в соответствии с нашими потребностями.

На этом этапе мы сохраняем агента вместе с опытом, полученным им во время всего обучения, а затем запускаем его в реальной рабочей среде. Наоборот, когда агент после обучения пускается в работу, агент всегда выбирает действие, которое сулит ему наивысшее вознаграждение. В этой фазе он больше не учится.

Позже, когда среда изменится, нам нужно переобучить агента, чтобы он адаптировался к новой среде! Следовательно, опыт, через который проходит наш агент в течение рабочего дня, должен быть сохранен в качестве данных для обучения агента!

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

До тех пор,

Счастливого обучения.😜