Основы ИИ
Что такое глубокое обучение с подкреплением?
Что такое глубокое обучение с подкреплением?
Вместе с ненадзорным обучением машин и обучением с учителем, еще одной распространенной формой создания ИИ является обучение с подкреплением. Помимо регулярного обучения с подкреплением, глубокое обучение с подкреплением может привести к удивительно впечатляющим результатам, благодаря тому, что оно сочетает лучшие аспекты как глубокого обучения, так и обучения с подкреплением. Давайте посмотрим, как именно работает глубокое обучение с подкреплением.
Прежде чем мы погрузимся в глубокое обучение с подкреплением, может быть полезно освежить наше представление о том, как работает регулярное обучение с подкреплением. В обучении с подкреплением алгоритмы, ориентированные на цель, создаются через процесс проб и ошибок, оптимизируя действие, которое приводит к лучшему результату/действию, которое получает наибольшую “награду”. Когда алгоритмы обучения с подкреплением обучаются, им дают “награды” или “наказания”, которые влияют на действия, которые они будут выполнять в будущем. Алгоритмы пытаются найти набор действий, который предоставит системе наибольшую награду, балансируя между немедленными и будущими наградами.
Алгоритмы обучения с подкреплением очень мощные, потому что они могут быть применены几乎 к любой задаче, способные гибко и динамически учиться в окружающей среде и открывать возможные действия.
Обзор глубокого обучения с подкреплением

Фото: Megajuice via Wikimedia Commons, CC 1.0 (https://commons.wikimedia.org/wiki/File:Reinforcement_learning_diagram.svg)
Когда речь идет о глубоком обучении с подкреплением, окружающая среда обычно представляется изображениями. Изображение – это снимок окружающей среды в определенный момент времени. Агент должен проанализировать изображения и извлечь из них релевантную информацию, используя эту информацию, чтобы информировать, какое действие он должен выполнить. Глубокое обучение с подкреплением обычно проводится с помощью одной из двух разных техник: обучения на основе значений и обучения на основе политики.
Техники обучения на основе значений используют алгоритмы и архитектуры, такие как свёрточные нейронные сети и сети Deep-Q. Эти алгоритмы работают, преобразуя изображение в оттенки серого и обрезая ненужные части изображения. После этого изображение проходит через различные свёртки и пулинговые операции, извлекая наиболее релевантные части изображения. Важные части изображения затем используются для расчета Q-значения для различных действий, которые агент может выполнить. Q-значения используются для определения лучшего курса действий для агента. После того, как первоначальные Q-значения рассчитаны, проводится обратное распространение, чтобы наиболее точно определить Q-значения.
Методы, основанные на политике, используются, когда количество возможных действий, которые агент может выполнить, чрезвычайно велико, что обычно бывает в реальных сценариях. Такие ситуации требуют другого подхода, потому что расчет Q-значений для всех индивидуальных действий не является практичным. Подходы, основанные на политике, работают без расчета функций значений для индивидуальных действий. Вместо этого они принимают политику, обучая политику напрямую, часто с помощью методов, называемых градиентами политики.
Градиенты политики работают, получая состояние и рассчитывая вероятности для действий на основе предыдущего опыта агента. Наиболее вероятное действие затем выбирается. Этот процесс повторяется до конца периода оценки, и награды затем даются агенту. После того, как награды были распределены между агентом, параметры сети обновляются с помощью обратного распространения.
Что такое Q-обучение?
Поскольку Q-обучение является такой большой частью процесса глубокого обучения с подкреплением, давайте потратим время на понимание того, как работает система Q-обучения.
Марковский процесс принятия решений

Марковский процесс принятия решений. Фото: waldoalvarez via Pixabay, Pixbay License (https://commons.wikimedia.org/wiki/File:Markov_Decision_Process.svg)
Чтобы ИИ-агент мог выполнить серию задач и достичь цели, агент должен уметь справляться с последовательностью состояний и событий. Агент начнет в одном состоянии и должен выполнить серию действий, чтобы достичь конечного состояния, и между начальным и конечным состояниями может быть огромное количество состояний. Хранение информации о каждом состоянии является нецелесообразным или невозможным, поэтому система должна найти способ сохранить только наиболее релевантную информацию о состоянии. Это достигается с помощью Марковского процесса принятия решений, который сохраняет только информацию о текущем состоянии и предыдущем состоянии. Каждое состояние имеет Марковское свойство, которое отслеживает, как агент меняет состояние от предыдущего к текущему.
Глубокое Q-обучение
Как только модель получает доступ к информации о состояниях окружающей среды, Q-значения могут быть рассчитаны. Q-значения – это общая награда, данная агенту в конце последовательности действий.
Q-значения рассчитываются с помощью серии наград. Есть немедленная награда, рассчитанная в текущем состоянии и в зависимости от текущего действия. Q-значение для последующего состояния также рассчитывается, а также Q-значение для состояния после этого, и так далее, пока не будут рассчитаны все Q-значения для различных состояний. Также существует параметр Гамма, который используется для контроля того, какой вес будущим наградам придается в действиях агента. Политики обычно рассчитываются путем случайной инициализации Q-значений и позволяя модели сходиться к оптимальным Q-значениям в течение процесса обучения.
Глубокие Q-сети
Одной из фундаментальных проблем, связанных с использованием Q-обучения для обучения с подкреплением, является то, что количество необходимой памяти для хранения данных быстро увеличивается с увеличением количества состояний. Глубокие Q-сети решают эту проблему, сочетая модели нейронных сетей с Q-значениями, позволяя агенту учиться на опыте и делать разумные предположения о лучших действиях. С глубоким Q-обучением Q-значения функций оцениваются с помощью нейронных сетей. Нейронная сеть принимает состояние в качестве входных данных, и сеть выводит Q-значение для всех возможных действий, которые агент может выполнить.
Глубокое Q-обучение достигается путем хранения всех прошлых опытов в памяти, расчета максимальных выходов для Q-сети и затем использования функции потерь для расчета разницы между текущими значениями и теоретически возможными максимальными значениями.
Глубокое обучение с подкреплением vs Глубокое обучение
Одним из важных различий между глубоким обучением с подкреплением и регулярным глубоким обучением является то, что в случае первого входные данные постоянно меняются, что не является таковым в традиционном глубоком обучении. Как модель обучения может учитывать входные и выходные данные, которые постоянно меняются?
По сути, чтобы учесть расхождение между предсказанными значениями и целевыми значениями, можно использовать две нейронные сети вместо одной. Одна сеть оценивает целевые значения, а другая сеть отвечает за предсказания. Параметры целевой сети обновляются, когда модель учится, после выбранного количества итераций обучения. Выходы соответствующих сетей затем объединяются для определения разницы.
Обучение на основе политики
Обучение на основе политики работает по-другому, чем подходы, основанные на Q-значениях. Хотя подходы, основанные на Q-значениях, создают функцию значения, которая предсказывает награды для состояний и действий, методы, основанные на политике, определяют политику, которая будет сопоставлять состояния с действиями. Другими словами, функция политики, которая выбирает действия, оптимизируется напрямую, без учета функции значения.
Градиенты политики
Политика для глубокого обучения с подкреплением может быть либо стохастической, либо детерминированной. Детерминированная политика – это политика, в которой состояния сопоставляются с действиями, то есть когда политика получает информацию о состоянии, возвращается действие. Стохастические политики, с другой стороны, возвращают распределение вероятностей для действий вместо одного дискретного действия.
Детерминированные политики используются, когда нет неопределенности в исходах действий, которые можно выполнить. Другими словами, когда окружающая среда сама по себе детерминирована. Напротив, стохастические политики используются в окружающей среде, где исход действия неопределен. Обычно сценарии обучения с подкреплением включают некоторую степень неопределенности, поэтому стохастические политики используются.
Подходы, основанные на градиентах политики, имеют несколько преимуществ перед подходами, основанными на Q-обучении, а также некоторые недостатки. В плане преимуществ методы, основанные на политике, сходятся к оптимальным параметрам быстрее и более надежно. Градиент политики можно просто следовать до тех пор, пока не будут определены лучшие параметры, тогда как в методах, основанных на значениях, небольшие изменения в оцененных значениях действий могут привести к большим изменениям в действиях и их параметрах.
Градиенты политики работают лучше для высокоразмерных пространств действий. Когда существует чрезвычайно большое количество возможных действий, глубокое Q-обучение становится нецелесообразным, потому что оно должно присвоить оценку каждому возможному действию для всех временных шагов, что может быть невозможным вычислительным. Однако с методами, основанными на политике, параметры корректируются во времени, и количество возможных лучших параметров быстро уменьшается, когда модель сходится.
Градиенты политики также способны реализовывать стохастические политики, в отличие от политик, основанных на значениях. Поскольку стохастические политики производят распределение вероятностей, не нужно реализовывать компромисс между исследованием и эксплуатацией.
В плане недостатков основным недостатком градиентов политики является то, что они могут застрять при поиске оптимальных параметров, сосредотачиваясь только на узком, локальном наборе оптимальных значений вместо глобальных оптимальных значений.
Функция балла политики
Политики, используемые для оптимизации производительности модели, направлены на максимизацию функции балла – J(θ). Если J(θ) – это мера того, насколько хороша наша политика для достижения желаемой цели, мы можем найти значения “θ“, которые дают нам лучшую политику. Сначала нам нужно рассчитать ожидаемую награду политики. Мы оцениваем награду политики, чтобы иметь цель, к которой можно стремиться. Функция балла политики – это то, как мы рассчитываем ожидаемую награду политики, и существуют различные функции балла политики, которые обычно используются, такие как начальные значения для эпизодических окружающих сред, среднее значение для непрерывных окружающих сред и средняя награда за временной шаг.
Восхождение градиента политики

Восхождение градиента направлено на перемещение параметров до тех пор, пока они не окажутся в месте, где балл является наивысшим. Фото: Public Domain (https://commons.wikimedia.org/wiki/File:Gradient_ascent_(surface).png)
После того, как желаемая функция балла политики используется, и рассчитана ожидаемая награда политики, мы можем найти значение параметра “θ“, которое максимизирует функцию балла. Чтобы максимизировать функцию балла J(θ), используется метод, называемый “восхождением градиента”. Восхождение градиента аналогично понятию спуска градиента в глубоком обучении, но мы оптимизируем для наибольшего увеличения вместо уменьшения. Это потому, что наш балл не является “ошибкой”, как во многих задачах глубокого обучения. Наш балл – это то, что мы хотим максимизировать. Выражение, называемое теоремой градиента политики, используется для оценки градиента по отношению к политике “θ“.
Сводка глубокого обучения с подкреплением
В сводке, глубокое обучение с подкреплением сочетает аспекты обучения с подкреплением и глубоких нейронных сетей. Глубокое обучение с подкреплением проводится с помощью двух разных техник: глубокого Q-обучения и градиентов политики.
Методы глубокого Q-обучения направлены на предсказание наград, которые будут следовать за определенными действиями, выполненными в данном состоянии, тогда как подходы, основанные на градиентах политики, направлены на оптимизацию пространства действий, предсказывая действия сами по себе. Подходы, основанные на политике, к глубокому обучению с подкреплением, являются либо детерминированными, либо стохастическими по своей природе. Детерминированные политики сопоставляют состояния с действиями напрямую, тогда как стохастические политики производят распределения вероятностей для действий.












