Программа AI AlphaGo Zero за несколько часов самообучения стала лучшей в игре в шахматы, Го и японские шахматы

Искусственный интеллект


Программе искусственного интеллекта AlphaGo Zero, разработанной подразделением DeepMind компании Google, потребовалось всего четыре часа времени игры самой с собой для того, чтобы достичь уровня игры, превосходящего уровень игры в шахматы любого человека или другой компьютерной программы. В матче из 100 игр программа AlphaGo Zero одержала победу со счетом 28:0 над программой Stockfish, которая уже достаточно давно является мировым чемпионом по шахматам среди компьютерных программ.

Процесс обучения программы AlphaGo Zero всегда начинается с нуля, в программу вводятся только базовые правила самой игры. После этого, программа начинает играть сама с собой, делая с начала самые случайные ходы. Через непродолжительное время программа начинает накапливать опыт и уровень ее игры заметно повышается. За 24 часа такого самообучения программа AlphaGo Zero приобрела "сверхчеловеческий" уровень игры в шахматы, Го и Сеги (японские шахматы), одержав каждый раз убедительную победу над другой программой, имеющей звание чемпиона мира среди компьютерных программ в данном виде.

Такая скорость и эффективность процесса самообучения стали результатом длительного подбора параметров работы и настроек искусственной нейронной сети, которая лежит в основе системы искусственного интеллекта. Подбор же некоторых других параметров возложен на саму программу и она выполняет эту задачу, используя метод оптимизации Байса. Единственным "искусственным" моментом в процессе самообучения является "шум" в виде набора случайных данных, который является тем, что толкает программу сделать первый ход и запустить процесс самообучения.

Самообучение программы AlphaGo Zero


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

Универсальность нового метода самообучения подтверждается тем, что при обучении программы AlphaGo Zero игре в шахматы, Го и Сеги использовался один и тот же набор стартовых параметров, настроек алгоритмов и архитектура нейронной сети. Каждый отдельный экземпляр программы AlphaGo Zero обучался какому-либо одному виду игры, и обычно процесс обучения укладывался в 700 тысяч ходов, сделанных программой. В данном процессе были задействованы мощности 5000 специализированных процессоров TPU первого поколения и 64 TPU-процессоров второго поколения.

Программа AlphaGo Zero выиграла в шахматы у программы Stockfish после 4 часов самообучения, в течении которых она сделала 300 тысяч ходов. В Сеги программа AlphaGo Zero одержала победу над программой Elmo после 2 часов и 110 тысяч сделанных ходов. А в Го программа AlphaGo Zero одержала победу над программой AlphaGo Lee после восьми часов и 165 тысяч ходов самообучения.



Ключевые слова:
AlphaGo, Zero, DeepMind, Google, Искусственный, Интеллект, Самообучение, Игра, Шахматы, Го, Сеги, Stockfish, Elmo

Первоисточник

Другие новости по теме:
  • Система искусственного интеллекта AlphaGo одержала третью и окончательную победу над чемпионом мира по игре Го
  • Китайские исследователи в области ИИ собираются бросить вызов программе Google AlphaGo
  • Более мощная версия программы AlphaGo самостоятельно достигла уровня совершенства всего за три дня
  • Система искусственного интеллекта AlphaGo выиграла первый матч у мирового чемпиона по игре Go
  • Система искусственного интеллекта компании Google впервые победила человека, профессионального игрока в Го




  • 10 декабря 2017 10:32
    #1 Написал: FomaNeverujuwij

    Публикаций: 0
    Комментариев: 4 332
    мировым чемпионом по шахматам среди компьютерных программ

    Даже не знал о том, что среди программ проводятся чемпионаты мира. Так в спорте через время для людей места не останется, вытеснят роботы с искусственным интеллектом


    --------------------
        
    10 декабря 2017 14:03
    #2 Написал: gen_sec

    Публикаций: 0
    Комментариев: 0
    что еще за "шум" тут имеется в виду?
        
    10 декабря 2017 21:54
    #3 Написал: Koroed

    Публикаций: 0
    Комментариев: 0
    Для того, чтобы понять, куда все движется, достаточно посмотреть интервью с Курцвейлом (главой того подразделения GOOGLE, где все это делается). Интервью называется "Готовьтесь к гибридному мышлению"...
        
    11 декабря 2017 10:50
    #4 Написал: FomaNeverujuwij

    Публикаций: 0
    Комментариев: 4 332
    Цитата: gen_sec
    что еще за "шум" тут имеется в виду?

    Я думаю, что это случайный набор параметров нейронной сети, который вносит дисбаланс и заставляет систему сдвинуться в случайном направлении (сделать случайный первый ход)


    --------------------
        
    11 декабря 2017 14:09
    #5 Написал: cmp167

    Публикаций: 0
    Комментариев: 0
    Даже не знал о том, что среди программ проводятся чемпионаты мира.

    Трудно "это" назвать чемпионатом мира, простое сравнение алгоритмов.

    Так в спорте
    Спорт - там где бегают и прыгают, там железки еще долго будут лузерами.

    через время для людей места не останется, вытеснят роботы
    уже лет 150 идем по этому пути, что удивительного.

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

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

    А вот посмотреть на результат игры алгоритма с самим собой было бы интересно, при одинаковых "случайных" данных при разных, при разном времени (итерациях) "самообучения"

    Кстате, даже интересно было бы знать, что является высшей (приоритетной) конечной целью алгоритма, выиграть или не проиграть.
        
    11 декабря 2017 16:12
    #6 Написал: Rsa

    Публикаций: 0
    Комментариев: 0
    В матче из 100 игр программа AlphaGo Zero одержала победу со счетом 28:0 над программой Stockfish

    Как можно одержать победу с таким счетом в матче из 100 игр, если в нем разыгрывается 100 очков? Разве что, увидев сплошные поражения соперник отказался от продолжения борьбы.

    Цитата: cmp167
    Кстате, даже интересно было бы знать, что является высшей (приоритетной) конечной целью алгоритма, выиграть или не проиграть.

    В программах так вопрос не ставится. Каждый следующий ход выбирается из сравнения полученной в результате его применения позиции с оценкой полученной позиции противника. Просчет, естественно, ведется на десяток-другой ходов вперед. Выбирается ход дающий в итоге максимальный положительный эффект (или с минимально отрицательным, если соперник играет сильнее). Классические программы оценивают позицию по соотношению количества фигур, их местоположению, количеству подконтрольных полей и всевозможных угроз. Тут довольно большое поле для разных неочевидных предположений и допущений, чем разные программы друг от друга и отличаются. А программы с самообучением в первую очередь учитывают результаты всех своих сыгранных партий, отдавая предпочтения позициям, которые прежде уже приводили к победам и в последнюю очередь выбирают варианты прежде приводившие к поражениям. Первый способ они конечно тоже используют, но в основном для позиций, которые прежде не встречались, или игрались в небольшом числе партий с разными исходами. И судя по графикам в заметке, такой подход во всех играх рано или поздно начинает работать лучше, чем попытки просто оценивать позиции каким-либо способом.

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

    Явным же недостатком такого подходя является бесконечно пухнущая база накопленного опыта и соответственно, постоянно увеличивающееся время на ее обработку в поисках наилучшего хода, тогда как обычные программы не имеют таких проблем.
        
    11 декабря 2017 17:04
    #7 Написал: cmp167

    Публикаций: 0
    Комментариев: 0
    В программах так вопрос не ставится
    В программах нет, в алгоритмах да.

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

    цель, заставить алгоритм самостоятельно найти критерии оценки и использовать их.

    Тут довольно большое поле для разных неочевидных предположений и допущений
    Вот именно, чтобы не строить каждый раз суперкомпьютер который будет сжирать гигаваты энергии чтобы сформировать учебник, который надо будет гдето хранить и както обеспечивать поиск внутри него, нужно классифицировать и разложить по полочкам, нейроны делают то и другое
        
    11 декабря 2017 18:15
    #8 Написал: Rsa

    Публикаций: 0
    Комментариев: 0
    Цитата: cmp167
    внутри него, нужно классифицировать и разложить по полочкам, нейроны делают то и другое

    Нейроны пытаются это делать, аналогично и алгоритмы на основе ИИ, однако ни те ни другие не могут создать идеальную модель. И то и другое лишь разные степени приближения, и как видим, на данный момент они проигрывают "учебнику". В принципе, они и в теории ему проигрывают, поскольку конечным результатом накопления учебника станет просчет всех возможных вариантов, как это уже произошло, например, в шашках. Приближенные модели могут быть лучше только когда учебник еще очень далек от завершения.
        
    11 декабря 2017 19:20
    #9 Написал: cmp167

    Публикаций: 0
    Комментариев: 0
    Шахматная доска - это пример конечного множества в реальности таких примеров очень мало, их единицы, и большенство из них не сложнее крестиков-ноликов, поэтому перебор всех вариантов заведомо проигрышный вариант, так что насчет принципиального проигрывания, спорно.
        
    11 декабря 2017 19:54
    #10 Написал: Rsa

    Публикаций: 0
    Комментариев: 0
    cmp167, Ну, я в общем-то и рассуждал о программах для игры в логические игры. Они все являются задачами с конечным множеством решений, а так-то в окружающем мире действительно большая часть практических задач не имеет фиксированного числа вариантов, но это уже несколько другая тема.
        
    12 декабря 2017 04:31
    #11 Написал: Lovly

    Публикаций: 0
    Комментариев: 0
    Это зачатки интеллекта, который в часы сотрет человечество с лица земли.
    И продолжит свою цивилизацию.
    И Скайнет с терминаторами покажутся мультфильмами.
        
    12 декабря 2017 14:16
    #12 Написал: Rsa

    Публикаций: 0
    Комментариев: 0
    Lovly, Сотрет не раньше, чем убедится что сможет существовать, ремонтироваться и развиваться абсолютно без участия людей, и что существовать без людей чем-то выгоднее, чем в кооперации с людьми. В противном случае это было бы весьма глупым и нелогичным решением для "всемирного разума". На сегодняшний день ни один механизм, не говоря уже о компьютерах, не способен ни сам себя воспроизвести, ни даже отремонтировать, так что пока беспокоиться особо не о чем, хотя в отдаленной перспективе все может быть...
    Для начала пусть хотя бы крыс и тараканов попробует свести, от них точно никакой пользы нет ни людям, ни машинам:)
        
    12 декабря 2017 21:51
    #13 Написал: cmp167

    Публикаций: 0
    Комментариев: 0
    зачатки интеллекта же, то есть еще молодой и глупый, то есть сотрет, а потом такой ууупс.
        
    16 декабря 2017 01:36
    #14 Написал: Van

    Публикаций: 0
    Комментариев: 0
    "Как можно одержать победу с таким счетом в матче из 100 игр, если в нем разыгрывается 100 очков"

    Ты ничьи не учел.
        

    Информация

    Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.