«Национальный опыт» AlphaZero: FAIR Tian Yuandong, первый супер-ИИ с открытым исходным кодом

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

Теперь компьютер с графическим процессором может запускать программу Go, которая превосходит человеческий уровень. Только что модель предварительного обучения ELF OpenGo и код Исследовательского института искусственного интеллекта Facebook (FAIR) были открыты. Тянь Юаньдун и др. воспроизвели программу DeepMind Go.AlphaZero, который является первым открытым исходным кодом Super Go AI. В то же время исследователи также обнаружили «ошибку» в искусственном интеллекте Go.

Для компьютерных энтузиастов Го вы также можете загрузить окончательную версию модели ELF OpenGo для компиляции и испытать игру против ИИ Го, которая превосходит высший уровень людей (для этого требуется графический процессор с поддержкой NVIDIA CUDA на вашем компьютере).

Ссылка на программу Go:Войдите в систему. поврежденные общедоступные файлы.com/ELF O Peng O/ Afraid…

ELF OpenGo с открытым исходным кодом от Tian Yuandong и др. основан на знаменитом искусственном интеллекте DeepMind Go AlphaGoZero / AlphaZero, но не требует использования Google TPU для обучения. Последняя версия OpenGo достигает сверхчеловеческой производительности, используя 2000 графических процессоров, обученных в течение 15 дней. Имея только один графический процессор, OpenGo показала 20-0 в медленной игре против 4 из 30 лучших профессионалов-людей, без ограничения времени для игроков-людей.

«Я могу с уверенностью сказать, что проект ELF OpenGo оказал огромное влияние на корейское сообщество го, — сказал Бомгын Чо, помощник руководителя по связям с общественностью Корейской ассоциации го. используют ELF Go. Анализируйте свою игру против других игроков. Это не только повышает уровень корейских игроков, но и в значительной степени способствует повышению уровня го во всем мире».

Окончательная модель ELF OpenGo является результатом 20 миллионов игр самостоятельных тренировок, и ее уровень сверхчеловеческий. Но точно так же, как AlphaGo однажды показала свою ошибку в задаче «грабежа», исследователи также обнаружили, что ELF OpenGo показал ограничение, уникальное для обучения с подкреплением во время обучения: OpenGo, как и AlphaZero, не мог полностью понять «скручивание овечьей головы» Go. ” (также известное как «поедание взимаемых сборов»), которое представляет собой распространенную ситуацию, понятную новичкам. По сравнению с другими изменениями, Чжэн Чи больше полагается на слегка опережающие прогнозы. Хотя игроку-человеку легко предсказать следующие 30 или более ходов для захвата позиций, DeepMind указал, что эти прогнозы делаются на поздних этапах компьютерного обучения.

Схематическая диаграмма поедания жестов Го. Игроки-люди быстро учатся предсказывать, как будет развиваться эта ситуация, но компьютеры учатся гораздо медленнее и не могут делать обобщения на отдельных примерах.

Интересно, что исследователи обнаружили, что ELF OpenGo выучила го совсем не так, как игроки-люди. Его подход, основанный на обучении с подкреплением, больше фокусируется на второй половине игры, а не на начальной или средней фазе игры. Создавая механизмы, которые стимулируют ИИ к победе, обучение с подкреплением будет подталкивать OpenGo к тому, чтобы узнать больше о том, чем заканчивается игра, а не о том, как она организована. Между тем люди, как правило, оценивают текущую позицию на доске, сосредотачиваясь на недавних изменениях и локальных формах, постепенно продвигаясь вперед.

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

Следующие выдержки описывают части документа ELF OpenGo.

ELF OpenGo от FAIR проанализировал, насколько хорошо 87 000 профессиональных шахматных матчей, взятых из набора данных GoGod, соответствовали компьютерным ходам за период с 1700 по 2018 год.

Го имеет легендарную историю, насчитывающую более 4000 лет, и считается одной из самых сложных пошаговых настольных игр с полной информацией. Появление AlphaGo (Silver et al., 2016) и его потомков AlphaGo Zero (Silver et al., 2017) и AlphaZero (Silver et al., 2018) показало, что глубокое обучение с подкреплением даже без наблюдения за наборами игровых данных с участием людей (Silver et al., 2018). глубокое RL) также может достигать сверхчеловеческих характеристик.

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

В этой статье мы предлагаем ELF OpenGo, повторную реализацию алгоритма AlphaZero (Silver et al., 2018) для Go с открытым исходным кодом. Мы также применили ELF OpenGo и внесли следующие три дополнительных вклада.

Во-первых, мы обучили модель сверхчеловеческого масштаба для ELF OpenGo. После запуска нашего обучающего программного обеспечения в стиле AlphaZero на 2000 графических процессорах в течение 9 дней наша модель из 20 модулей превосходит возможности человека и, возможно, достигает сопоставимой производительности с Сильвером и др. (2017) и Сильвером и др. (2018) в степени, сравнимой с 20-модульная модель. Чтобы помочь исследованиям в этой области, мы предоставим предварительно обученную модель сверхчеловеческого масштаба, код, используемый для обучения модели, и комплексный набор данных траектории обучения (20 миллионов самостоятельных игр, разделенных на более чем 1,5 миллиона обучающих мини-пакетов) и вспомогательные данные. Мы подробно опишем структуру этой системы и алгоритма, а также включим много уроков, извлеченных при разработке и обучении наших моделей, которые, как мы надеемся, помогут сообществу лучше понять многие аспекты крупномасштабного глубокого обучения с подкреплением.

Во-вторых, мы предоставляем анализ того, как модель ведет себя во время обучения. (1) По мере обучения мы наблюдаем большое изменение шахматной силы этой модели по сравнению с другими моделями. Это свойство сохраняется, даже если скорость обучения снижается. (2) Для ходов, которые требуют значительного прогнозирования, чтобы решить, следует ли делать ход (например, «Чжэньцзы»), модель учится медленно и никогда не может быть полностью понята. (3) Мы исследуем скорость, с которой модель обучается качественным движениям на разных этапах игры. По сравнению с типичным поведением табличного RL (табличное обучение с подкреплением) модель изучает ходы в середине и в конце игры примерно с одинаковой скоростью.

В-третьих, мы проводим обширные эксперименты по абляции, чтобы исследовать свойства алгоритмов в стиле AlphaZero. Мы определяем несколько важных параметров, которые не были четко описаны в работе Сильвера и др. (2018), и даем представление об их роли в успешном обучении. Мы кратко сравнили процесс обучения AlphaGoZero и AlphaZero. В конце концов мы обнаружили, что даже для окончательной модели удвоение развертывания в игре все же улучшило ее игровую мощь примерно на 200 ELO, что указывает на то, что игровая мощь ИИ ограничена размером модели.

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

OpenGo проанализировала известную партию знаменитого японского шахматиста Хидэтаку Хонинбо в 19 веке, «Раннюю красную партию». должность.

ELF OpenGo

Целью предлагаемого нами ELF OpenGo является точная повторная реализация AlphaGoZero (AGZ) и AlphaZero (AZ), устранение двусмысленности из исходной статьи и предложение множества инноваций, которые позволяют нашей системе полностью работать на аппаратном обеспечении товарного уровня. Для краткости мы подробно и всесторонне обсудим дизайн системы и программного обеспечения ELF OpenGo в Приложении A; основные моменты включают (1) совместное размещение нескольких самостоятельных рабочих процессов на графическом процессоре для повышения пропускной способности, (2) асинхронное самостоятельное воспроизведение рабочий процесс для обработки все более и более высоких задержек для каждой игры.

Мы использовали графический процессор NVIDIA Tesla V100 с 16 ГБ памяти как для обучения, так и для логических выводов, однако можно ожидать, что модель будет работать аналогично на большинстве графических процессоров NVIDIA с тензорными ядрами (например, на обычных графических процессорах RTX 2060).

Таблица 1: Гиперпараметры и детали обучения для AGZ, AZ и ELF OpenGo. «?» указывает на детали, которые неоднозначны или нечетко указаны в Silver et al. (2017) или Silver et al. (2018).

В целом, мы в основном следим за деталями обучения AZ. Но вместо 5000 самовоспроизводящихся TPU и 64 обучающих TPU мы использовали 2000 самовоспроизводящихся GPU и 8 обучающих GPU. Поскольку Silver и др. (2018) не указали размер буфера воспроизведения для AZ, мы использовали настройку AGZ для 500 000 игр. Мы также использовали настройку развертывания самостоятельной игры 1600 за ход для AGZ.

Рисунок 2: Развитие возможностей модели во время обучения. «ЭЛО для самостоятельной игры 25 000» и «ЭЛО для самостоятельной игры 50 000» относятся к ненормализованным уровням ЭЛО для самостоятельной игры, рассчитанным на основе последовательных пар моделей обучающих мини-пакетов с интервалами 25 000 и 50 000 соответственно. «Усреднение Nash 50 000» относится к усреднению Nash (Balduzzi et al., 2018), основанному на круговом (парном) соревновании между теми же моделями, что и в расчете «Selfplay ELO 50 000».

По сравнению с людьми

Поскольку наша модель значительно сильнее, чем модель-прототип, демонстрирующая шахматную мощь сверхчеловеческого уровня, мы предполагаем, что наша модель также превосходит людей. На рис. 3(c) мы показываем, что ходы, предсказанные моделью, согласуются с ходами, заданными профессиональными игроками-людьми. Эти ходы были взяты из 1000 профессиональных игр с 2011 по 2015 год. Коэффициент совпадения модели с игрой человека быстро достигает примерно 46% при мини-пакете 125 000. Это говорит о том, что шахматная производительность модели за пределами этой точки может быть не связана с лучшим прогнозированием человеческого опыта, и, как показывают Сильвер и др. (2016), использование человеческих шахмат для наблюдения за обучением может иметь ограничения.

Количество развертываний MCTS

Интуитивно понятно, что увеличение количества итераций MCTS (количество развертываний) повышает производительность ИИ, исследуя больше частей игрового дерева. Чтобы лучше понять влияние количества развертываний на шахматную мощь, мы провели анализ самостоятельной игры, используя окончательную модель, в которой один игрок использовал в два раза больше развертываний MCTS, чем другой. Мы провели этот анализ для широкого диапазона номеров развертывания (800-25600).

Рис. 9. Доля побед модели с 2-кратным развертыванием по сравнению с той же моделью с 1-кратным развертыванием

Результаты показаны на Рисунке 9, можно обнаружить, что при удвоении количества выкатов белых игроков ELF OpenGo может стабильно получать выигрыш в размере 80%-90% (ELO составляет около 250-400 больше). С другой стороны, у ELF OpenGo винрейт составлял всего 55-75% (примерно на 35-200 больше ELO) при удвоении числа выкатов черных игроков. Кроме того, по мере увеличения количества развертываний, дополнительный выигрыш от удвоения развертываний при игре черными сокращается почти до 50%, что позволяет предположить, что наша модель имеет потолок в количестве развертываний, играющих черными. Однако этого потолка не существует, когда модель играет белыми, что показывает, что 7,5 палочек (награда за белые очки) оказывают значительное влияние на черных.

Поскольку обе стороны, использующие одну и ту же модель, могут внести предвзятость (одна с большим количеством развертываний может видеть все ветки, изученные другой), мы также поэкспериментировали с прототипом/финальной моделью и также наблюдали аналогичную тенденцию — удвоение развертывания может привести к увеличению примерно на 200. к ЭЛО.

Диссертация: ELF OpenGo: анализ и открытая повторная реализация AlphaZero

АР Вест V.org/ABS/1902.04…

Семейства алгоритмов AlphaGo, AlphaGo Zero и AlphaZero блестяще продемонстрировали силу глубокого обучения с подкреплением, достигнув сверхчеловеческих уровней в сложной игре Го с повышением уровня автономии. Однако в исследовательском сообществе остается много препятствий для понимания и использования этих многообещающих подходов. Чтобы пролить свет на неразгаданные тайны и облегчить будущие исследования, мы предлагаем ELF OpenGo, повторную реализацию алгоритма AlphaZero с открытым исходным кодом. ELF OpenGo — это первый го-ИИ сверхчеловеческого уровня с открытым исходным кодом, который добился убедительного и идеального результата (20:0) против лучших профессиональных игроков мира. Мы провели обширные исследования абляции с помощью ELF OpenGo, а также выявили и проанализировали множество интересных явлений во время обучения модели и вывода игр. Наш код, модели, наборы данных для самостоятельной игры и вспомогательные данные находятся в открытом доступе.

Ссылка на ссылку:love.facebook.com/blog/open-is…