альфа (α) — первая буква греческого алфавита, обозначающая начало, мю (μ) — двенадцатая буква, обозначающая середину. С момента написания легендарного AlphaGo DeepMind постоянно обновляет и повторяет серию новых алгоритмов, создавая AlphaGo Zero, AlphaZero и MuZero. Более универсальный алгоритм MuZero не только блестяще справился с настольными играми, но и превзошел людей в 57 различных играх Atari.
От направления datascience, автор: Коннор Шортен, составлено сердцем машины, участие: Панда, яичный соус.
В этой статье кратко представлена эволюция этих алгоритмов. Сможет ли DeepMind в будущем создать серию совершенных алгоритмов OmegaZero?

DeepMind недавно выпустила разработанный ими алгоритм MuZero и подчеркнула, что он достиг сверхчеловеческого уровня в 57 различных играх Atari.
Обучающиеся агенты с подкреплением, способные играть в игры Atari, заслуживают внимания.Эти игры не только очень сложны в пространстве визуальных состояний, но и, в отличие от шахмат, сёги и го, агенты не могут использовать идеальные симуляторы в играх Atari (симулятор) для выполнения плана.
Идея «идеального симулятора» была одним из ключевых ограничений, которые двигали AlphaGo и последующие достижения, такие как AlphaGo Zero и AlphaZero. Это делает этих агентов ограниченными шахматами, сёги и го и менее полезными для реальных приложений, таких как управление роботами.
Используя Марковский процесс принятия решений (MDP) в качестве основы, проблему обучения с подкреплением можно описать как:
Агенты по шахматам, сёги и го приходят с симулятором, который знает, как играть.
Семейства алгоритмов AlphaGo, AlphaGo Zero, AlphaZero и MuZero расширяют эту структуру, используя планирование, как показано ниже:
Расширение структуры проблемы обучения с подкреплением за счет интеграции планирования.
AlphaGo, AlphaGo Zero и AlphaZero от DeepMind используют идеальную модель «(действие, состояние) → следующее состояние» для выполнения перспективного планирования в форме поиска по дереву Монте-Карло (MCTS). С точки зрения отображения политик и оценки значений, MCTS обеспечивает идеальное дополнение к глубоким нейронным сетям, поскольку усредняет ошибки аппроксимации этих функций. MCTS значительно помог AlphaZero в игре в шахматы, сёги и го, позволив ему выполнять идеальное планирование в идеальной модели окружающей среды.
MuZero использует планирование MCTS путем изучения динамической модели, как показано на следующем рисунке:
Поиск по дереву Монте-Карло от MuZero.
MuZero реализует подход к обучению с подкреплением на основе модели с картой параметрической модели (s, a) → (s', r), которая не полностью реконструирует пространство пикселей в s'. Сравните это со следующим изображением из моделей мира Ха и Шмидхубера:

Пример обучения с подкреплением на основе модели, реконструирующего пространство пикселей в модели из: https://worldmodels.github.io/.
Алгоритм планирования от MuZero оказался очень успешным в области Atari и имеет большой потенциал для применения в задачах обучения с подкреплением. В этой статье объясняется, как развивались AlphaGo, AlphaGo Zero, AlphaZero и MuZero, чтобы вы лучше поняли, как работает MuZero. Вот поясняющее видео:
AlphaGo
AlphaGo был первым в серии алгоритмов, показывающих, что глубокие нейронные сети могут играть в го, предсказывая политику (сопоставление состояний с действиями) и оценивая ценность (вероятность выигрыша из заданного состояния). В заданном состоянии эти политики и сети ценности используются для выбора последующих действий и состояний, заслуживающих дальнейшего изучения, тем самым улучшая древовидный поиск вперед.
AlphaGo использует 4 глубокие сверточные нейронные сети, 3 сети политики и 1 сеть ценности. Две политические сети проходят обучение с помощью обучения под наблюдением экспертов.
Функция потерь для контролируемого обучения состоит из некоторого типа L(y', y). Здесь y' относится к прогнозируемому действию сети политик, основанному на заданном состоянии, а y - к действию профессионального игрока в этом состоянии.
Стратегия развертывания представляет собой меньшую нейронную сеть, вход которой также представляет собой меньшее представление состояния. Следствием этого является то, что опытные модели стратегии развертывания играют со значительно меньшей точностью, чем сети с более высокой пропускной способностью. Однако время вывода (время, необходимое для получения прогноза на основе заданного состояния) для этой развернутой сети политик составляет всего 2 микросекунды по сравнению с 3 миллисекундами для более крупной сети, что делает ее очень полезной при моделировании поиска по дереву Монте-Карло. полезный.

Сеть политик обучения с учителем используется для инициализации третьей сети политик, которая обучается с помощью самостоятельных игр и градиентов политик. Идея градиента политики состоит в том, чтобы оптимизировать политику непосредственно на основе полученного вознаграждения; в отличие от этого, другие алгоритмы обучения с подкреплением изучают функцию ценности, а затем делают политику жадной в соответствии с функцией ценности. Сеть политики, обученная этому градиенту политики, может бороться с предыдущими итерациями собственных параметров, оптимизировать свои параметры, а затем выбирать ход, который приведет к окончательной победе. Затем этот самовоспроизводящийся набор данных используется для обучения сети ценности прогнозированию победителя игры в заданном состоянии.
Максимальная мощь AlphaGo заключается в объединении сети политик и сети создания стоимости в MCTS, как показано на следующем рисунке:

Идея MCTS заключается в выполнении упреждающего поиска, чтобы лучше оценить действие, которое необходимо предпринять в ближайшее время. Этот поиск начинается с корневого узла (текущее состояние доски), расширяет этот узел, выбирая действие, и повторяет операцию на основе результирующего состояния и переходов действий из этого состояния. MCTS выбирает ребро дерева для отслеживания на основе этого члена Q + u(P), т. е. оценки состояния сетью значений, исходной плотности вероятности, присвоенной этому состоянию сетью политик, и отрицательного взвешивания количества количество посещений узла (поскольку это повторяется снова и снова) взвешенная комбинация. Уникальной особенностью AlphaGo является использование моделирования политики развертывания для усреднения вклада сети создания стоимости. Эта симуляция политики развертывания будет продолжаться до конца эпизода с результатом победы или поражения и будет объединена с оценкой состояния функции ценности через дополнительный параметр лямбда.
AlphaGo Zero
AlphaGo Zero — это значительное улучшение по сравнению с AlphaGo, которая является более общей и начинается с нулевых человеческих знаний. Вместо использования обучения под наблюдением экспертов для инициализации AlphaGo Zero объединяет сети ценности и политик в единую нейронную сеть. По сравнению с более простой сверточной сетью, используемой в AlphaGo, эта сеть расширена, чтобы также использовать ResNet. Преимущества ResNet для выполнения сопоставления значений и сопоставления политик значительны.На следующем рисунке ResNet с двумя задачами сравнивается с однозадачной CNN:

Одной из самых интересных особенностей AlphaGo Zero является то, как он обучает сеть политик, используя распределение действий, найденное MCTS, как показано на следующем рисунке:

MCTS позволяет обучать сеть политик, используя ее в качестве контроля для обновления сети политик. Это умная идея, потому что MCTS позволяет сети политик получить лучшее распределение действий посредством прямого поиска, чем прямое сопоставление состояний с действиями.
AlphaZero
AlphaZero — это первый шаг в обобщении семейства алгоритмов AlphaGo за пределы го, в котором исследуются изменения, необходимые для игры в шахматы и сёги. Это требует создания представлений входного состояния и выходного действия для остаточной нейронной сети.
В AlphaGo в представлении состояния используются некоторые искусственно созданные характеристические плоскости следующим образом:
AlphaGo Zero использует более общее представление, которое сообщает агенту, какой это игрок, просто передавая позиции первых 8 ходов обоих игроков и плоскость бинарных признаков, как показано ниже:

AlphaZero использует аналогичную идею в шахматах и сёги для кодирования представлений состояния ввода следующим образом:

Алгоритм AlphaZero также имеет некоторые тонкие изменения, такие как способ объявления победителя самостоятельной игры и удаление дополнений данных, таких как флипы и вращения на доске Го.
MuZero
Ниже приведен текущий лучший алгоритм MuZero в этой серии. MuZero демонстрирует очень сильные возможности обобщения и не требует для обучения идеального симулятора. Шахматы, сёги и го — все игры с идеальными симуляторами, а это означает, что любое ваше движение вызывает определенные и заметные изменения на доске. Однако это не относится к очень сложным задачам манипулирования (таким как роботизированная рука, разработанная OpenAI, которая манипулирует кубиком Рубика), где трудно предсказать, что произойдет, если вы приложите усилие в 30 ньютонов к данному суставу.
На следующей диаграмме представлены ключевые идеи MuZero:

На рисунке A показан процесс сопоставления необработанных наблюдений со скрытым состоянием s0 с использованием функции представления h, а затем с использованием s0 для планирования на основе дерева. В MuZero комбинированная сеть значений/политик выполняет вывод в этом скрытом пространстве состояний, поэтому вместо сопоставления необработанных наблюдений с действиями или оценками значений она использует эти скрытые состояния в качестве входных данных. Динамическая функция g изучает отображение скрытых состояний и действий в будущие скрытые состояния.
На рисунке B показан способ обучения сети политик, аналогичный методу, впервые представленному AlphaGo Zero, то есть путем имитации распределения действий, создаваемого MCTS.
На рисунке C показано, как обучается эта система. Для каждой из трех целей обучения нейронной сети объединяются разница между оптимальной сетью значений и фактическим возвращенным результатом, разница между испытанной динамической моделью и прогнозируемыми промежуточными вознаграждениями, разница между распределением действий MCTS и картой политик.
Как функция представления h обучается в этом цикле оптимизации?
Характеристическая функция h функционирует в этом совместном уравнении оптимизации посредством «обратного распространения во времени». Предположим, вы просите определить разницу между распределением действий MCTS pi(s1) и распределением политик p(s1). Вывод p(s1) является результатом p(g(s0, a1)) , который, в свою очередь, является результатом p(g(h(raw_input), a1)) . Это также хороший способ отправлять обновления обратно в скрытые слои посредством обратного распространения во времени.
AlphaGo → AlphaGo Zero → AlphaZero → MuZero

Я надеюсь, что эта статья помогла вам получить четкое представление о MuZero в контексте AlphaGo, AlphaGo Zero и AlphaZero!
Ссылка на бумагу:
AlphaGo: https://www.nature.com/articles/nature16961
AlphaGo Zero: https://www.nature.com/articles/nature24270
AlphaZero: https://arxiv.org/abs/1712.01815
MuZero: https://arxiv.org/abs/1911.08265
Оригинальная ссылка:
https://towardsdatascience.com/the-evolution-of-alphago-to-muzero-c2c37306bf9