Хроники Го-4. После матча

18 март, 2016 - 17:15Александр Черников

Ну, в общем, AlphaGo вместе с Ли Си Долом наделали довольно много шуму как в мире Го, так и в мире AI вообще. Давайте постфактум все же немного разберемся в том, что же именно (или уже кто же?) выиграло у человека, и что будет дальше.

Хроники Го-4. После матча

Джонатан Шеффер (Jonathan Schaeffer), программист из University of Alberta, который написал Chinook, первую программу, играющую в шашки, сказал, что «Шахматы и шашки не нуждаются в сложных оценочных функциях (evaluation functions). Уже простая эвристика дает большую часть необходимого. В шахматах различная ценность фигур доминирует над другими частями знания, – если у меня на ладью больше, я почти всегда выигрываю. То же касается наличия дамки в шашках».

В Го нет никакой доминирующей эвристики. До AlphaGo никто не был в состоянии построить эффективную функцию оценки в Го. AlphaGo использует принципы глубокого обучения (deep learning) и нейронные сети (neural networks), чтобы «учить себя» играть.

Параллельно работающие две нейронные сети избавляют AlphaGo от лишней работы. Стратегическая сеть (policy network) помогает сократить число просматриваемых шагов для поиска очередного хода, а структурная модель процессов (value network) устраняет необходимость каждый раз моделировать каждую игру до конца, чтобы сделать итоговый вывод.

Это делает AlphaGo намного более подобной человеку и, в общем, более интеллектуальной, чем IBM Deep Blue, которая выиграла у Гарри Каспарова за счет «грубой силы», – просто перебирая ходы. В Го это просто не практично.

Немного науки

Хроники Го-4. После матча

Принцип работы нейронных сетей AlphaGo (рисунок из журнала Nature, январь 2016)

a). Слева. На первом этапе «стратегическая сеть контролируемого обучения» (Supervised Learning, SL) обучается ходам человека-эксперта в наборе определенных положений.

Справа. «Стратегическая сеть закрепления обучения» (Reinforcement Learning, RL) инициализируется стратегической сетью SL и затем улучшается градиентным обучением. На этом этапе алгоритм обучается максимизировать результат (то есть, выигрывать больше игр) по сравнению с предыдущей итерацией стратегической сети.

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

b). Схематическое представление сверточных слоев нейронных сетей, которые используются в AlphaGo.

Стратегическая сеть (слева) берет представление позиции на доске, передает ее через многие сверточные слои с параметрами сети SL или сети RL, и производит вычисление вероятности для возможного следующего шага.

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

О вычислительной мощности

Основатель DeepMind Демис Хассабис (Demis Hassabis) говорит, что AlphaGo постоянно улучшается за счет самообучения и всегда требует при этом примерно той же самой вычислительной мощности. А какой именно мощности?

Конфигурация, на которой AlphaGo осенью прошлого года победила Фан Хоя, представлена во второй строке таблицы. Для Ли Си Дола на всякий случай приготовили штуку в полтора раза мощнее (третья строка). И что? Оказалось, что рейтинг силы игрока примерно равен не только между ними, но и у самого аппаратно слабого испытанного варианта (первая строка).

Хроники Го-4. После матча

Хроники Го-4. После матча

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

Проектируя AlphaGo, команда Хассабиса построила дерево расширенного поиска, чтобы «прочесать» все возможные положения, и объединила его с глубокими нейронными сетями, – которые обучались на 30 млн. шагов в играх, сыгранными лучшими профессионалами. После этого AlphaGo было позволено придумывать свои собственные стратегии, играя тысячи игр внутри своих нейронных сетей и внося изменения методом проб и ошибок.

Как оказалось, в этом месте у большинства журналистов неизбежно возникает довольно глупый вопрос – может ли AlphaGo сыграть с Deep Blue и победить ее? Т.е, «кто кого сборет – слон или кит»?

Один из разработчиков Deep Blue, Мюррей Кэмпбелл* (Murray Campbell) сказал по этому поводу, что шахматы – вообще качественно другая игра в смысле поиска лучшего варианта. Поиск гораздо важнее в шахматах, чем в Го, которая в большей степени связана с интуицией и оценкой текущего положения.

*Об эпохальном сражении Deep Blue и Гарри Каспарова читайте в нашем прошлогоднем блоге.

Значение AlphaGo

Надо сказать, что победы в играх не являются главной целью разработчиков. В DeepMind полагают, что у принципов, которые используются в AlphaGo, есть более широкая область применения, чем только Го. Хассабис делает различие между «узким», целенаправленным AI Deep Blue и «общим искусственным интеллектом» (Artificial General Intelligence, AGI) AlphaGo. Последняя модель, очевидно, гораздо более гибкая и адаптивная.

В конечном счете, в Google считают, что ее алгоритмы машинного обучения (machine learning techniques) будут полезны, по крайней мере, в робототехнике, Smartphone Assistant Systems и здравоохранении.

Но пока текущей задачей все же являлось достойное выступление в матче против Ли Си Дола. Разработчики скромничали, когда говорили, что даже одна победа программы будет крупным успехом. Зато известный игрок Ли Ха-чжин (Lee Ha-jin) прямо сказал: «Мы всегда гордились тем, что Го была единственной игрой, в которой компьютер не может победить человека. Теперь мы в шоке».

Вместе с тем интересна общая реакция сообщества Го на итоги матча. Игроки теперь надеются, что AlphaGo может открыть для них новые приемы игры. Члены Go Community были ошеломлены изобретательной, агрессивной игрой AlphaGo, – как и тем, что она вообще смогла победить. Один из них сказал: «Если бы я делал такие ходы, как машина, мой учитель бил бы меня по рукам, а может, и выпорол бы».

Будущее Го

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

Некоторые обеспокоены тем, что люди теперь не будут хотеть играть в Го. Другие указывают на продолжающуюся популярность шахмат после того, как Deep Blue победил Гарри Каспарова, и утверждают, что общий уровень игры людей в шахматы также повысился.

Люди играют в Го потому, что это красиво и интересно. Это – игра, которая никогда не прекращает удивлять и очаровывать. Более того, люди теперь хотят играть против AI. Для большинства из нас факт, что всегда есть кто-то, кто играет лучше нас, никогда не имел значения прежде, – почему это должно случиться теперь?

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

Будущее AI

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

Хассабис на пресс-конференции после матча выразил это так: «Все новые мощные технологии приносят и возможности, и проблемы. Мы думаем, что DeepMind AI – мощный инструмент, который позволит людям достичь большего. Мы верим в открытые и совместные исследования. Мы верим в силу AI и в то, что он принесет пользу всем, а не только некоторым».

Хроники Го-4. После матча

Победная команда AlphaGo

Некоторые замечания к матчу

Не умаляя значимости AlphaGo, все же нужно сказать, что она пока далека от совершенства. Вот некоторые аргументы в пользу Ли. Это не ложка дегтя, а простая констатация фактов.

  • Компьютер для победы использовал гораздо большую мощность, чем мозг Ли;
  • У компьютера была большая память и инструменты вычисления, тогда как Ли должен был сидеть там один, даже без карандаша и бумаги;
  • Перед играми Ли знал очень мало о AlphaGo. У AlphaGo было много учебных данных от Ли и других лучших игроков;
  • Ли улучшал свою игру начиная с первой игры и самыми лучшими стали две последние;
  • AlphaGo не смогла по ходу матча адаптировать свою стратегию и стиль игры в соответствии с последними изменениями в игре Ли.

Возможно, конечно, что Ли запомнится не как первый профессионал 9 дана, который проиграл компьютеру, а как последний человек, который вообще выиграл у него игру. Но унывать не стоит. Человек пока намного лучше, чем компьютер. Вот пусть программа обойдется сопоставимой потребляемой мощностью вычислителя. Тогда и посмотрим.

Хроники Го-3. Да мы так и думали…