Новая версия программы AlphaGo Zero разгромила своего прославленного предка со счетом 100:0

    18 октября в журнале Nature была опубликована статья компании DeepMind о новых достижениях AlphaGo. Новая версия программы получила название Zero, так как была обучена с нуля без использования данных, полученных от человека, кроме правил самой игры Го. Для тренировок прошлой версии, победившей в чемпионатах с людьми, изначально использовался метод обучения с учителем (supervised learning), и лишь потом обучение с подкреплением (reinforcement learning). То есть изначально программа тренировалась, изучая человеческий опыт и лишь потом на игре против своих же версий. То есть прежняя версия изначально училась предсказывать человеческие ходы. AlphaGo Zero стала своим собственным учителем: нейронная сеть тренировалась предсказывать свой собственный выбор, а также выбор версии-чемпиона.



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

    Предыдущие версии AlphaGo изначально училась играть в Го на тысячах людских партий от любительских до профессиональных. Zero была избавлена от человеческих предрассудков, она перескочила этот этап, начала учиться, играя сама с собой, делая изначально просто произвольные ходы. В скором времени программа превзошла человеческий уровень и победила версию-чемпиона.



    Но избавление от влияния человеческого опыта — не единственное изменение. На официальном сайте упоминается использование новой формы обучения с подкреплением, суть которой не вполне раскрывается. Понятно, что нейронную сеть объединяют с мощным поисковым алгоритмом. В процессе игр коэффициенты нейронной сети настраиваются и обновляются. Затем обновленную нейронную сеть снова рекомбинируют с поисковым алгоритмом для получения более сильной версии AlphaGo Zero. И так итерация за итерацией система развивается, вместе с тем растет и уровень игры.

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

    Однако упоминается также еще несколько отличий:

    • Zero использует в качестве входа только черные и белые цвета камней на доске, тогда как предшествующим версиям на вход подавалось еще небольшое количество искусственных параметров.
    • В прошлых версиях использовались две отдельные сети “policy network” (для выбора следующего хода) и ”value network” (для предсказания потенциального победителя из каждой позиции). В новой версии Zero они были объединены, что позволило более эффективно обучаться.
    • Также AlphaGo Zero больше не использует “rollouts” — быстрое случайное проигрывание партий другими программами для игры в Го с целью предсказания, какой игрок выиграет из текущей позиции. Здесь сделан упор на высокое качество оценочных нейронных сетей.

    Все эти изменения, по словам авторов, помогли улучшить производительность (performance) системы, ее мощность и эффективность, и в то же время сделали ее более универсальной. Если система может учиться самостоятельно абсолютно с нуля — это значит, что из игры в Го её можно “трансплантировать” в любую другую отрасль человеческого знания. Компания DeepMind давно заявляла о том, что их миссия — создание искусственного интеллекта общего назначения, единой системы, которая “из коробки” могла бы решать самые разные задачи.

    Важное открытие заключается в том, что AlphaGo не просто научилась играть как люди, но то, что она разработала свои принципиально новые и крайне эффективные подходы к игре в Го, свои стратегии, о которых люди, играя в эту игру тысячи лет, не догадывались. Мало того, что за короткий промежуток времени она освоила то знание, на которое людям потребовались тысячи лет, она выработала принципиально новое знание. И если эта система показала такую высокую эффективность в таком сложном деле, как игра в Го, следующим этапом создатели системы видят поиски ее применения в других отраслях.
    • +22
    • 14,1k
    • 6
    Поделиться публикацией
    AdBlock похитил этот баннер, но баннеры не зубы — отрастут

    Подробнее
    Реклама
    Комментарии 6
    • +8

      (глядя на гифку с графиком роста)
      вот все шутили, про "как выучить С++ за 21 день". А ведь "роботы" — смогут.

      • +2
        А кстати интересно, что если взять современные технологии NLP (word2vec, Skip-Gram, CBoW...), построить какие-нибудь LSTM сети, натренировать их на программном коде на каком-нибудь конкретном языке. Можно ли из этого будет получить рабочий код? Я пока не говорю о том, чтобы он делал что-то полезное — просто работал. Кажется, это задача реализуемая, языки программирования проще естественных языков.
        А вот как поставить задачу такой системе, чтобы она сделала что-то осмысленное?
        • +5
          TDD же. Пишем осмысленные тесты, а код под эти тесты генерирует нейронная сеть. Можно еще генетическими алгоритмами немножко оптимизировать.
      • +1
        Вы на час опоздали:
        geektimes.ru/post/294603
        • –1
          Т.е. теперь можно ожидать, что то типа детского мата в ГО.
          Комбинация которая будет позволять выигрывать при наименьшем количестве шагов.
          • 0
            Нет, ниоткуда это не следует (хоть и не исключает).

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