メインページに戻る
Japan Blog

AlphaGo: マシンラーニングで囲碁を



中国を起源とする囲碁は 2,500 年以上の歴史を持ち、その昔、孔子が文人、士大夫が嗜むべきとした四芸のひとつです。世界中で 4,000 万人以上に親しまれている囲碁のルールはシンプルです。2 人のプレーヤーが、交互に白黒の碁石を碁盤上に置いていきます。余白や相手の石を取り囲みながら地(領域)を広げていき、地の面積で勝敗を競います。このゲームでは直感や感覚が重要とされ、囲碁が求める審美性、巧妙さ、および深い思考力は長い年月に渡り、人間の創造力を刺激してきました。

シンプルなルールに比べ、囲碁は非常に複雑なゲームです。囲碁において考えられる手の数は実に 1,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000, 000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000, 000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000,000 あり、その数は宇宙の原子の数よりも多く、チェスの指し手のグーゴル倍 (10の100乗倍) です。

この囲碁の複雑性こそが、コンピューターにとって碁を難解なものにしています。さらに、人間のようにスマートに、そして柔軟にさまざまな問題を解決できるアルゴリズムの開発を試みる人工知能 (AI) 研究者にとって、囲碁が非常に魅力的である理由も、その複雑さにあります。コンピューターが初めて攻略したゲームは 三目並べ (1952 年) で、次いでマスターしたのは チェッカー (1994 年) でした。1997 年には、ディープブルーが チェス でガルリ カスパロフを破ったことが大きな話題となりました。さらに、ボードゲーム以外でも、IBM の ワトソン は 2011 年に「ジェパディ!」でチャンピオン 2 人に勝利し、Google のアルゴリズムは 2014 年に 複数の Atari ゲームを攻略 しています。一方、AI 研究者にとって囲碁は困難を極め、コンピューターは長年アマチュア レベル以上に進化していませんでした。

囲碁において、可能性のあるすべての指し手に対して 探索木 を割り当てる従来の AI 方式は通用しません。今回の挑戦を始めるにあたり、私たちは モンテカルロ木探索ディープニューラルネットワーク を組み合わせた AlphaGo (アルファ碁) というシステムを新たに開発しました。このシステムは、碁盤自体を入力と見立て、その情報を数百万のノードからなる 12 層構成のニューラルネットワークで処理します。1 つ目の「ポリシーネットワーク」が次の手を決定し、もう 1 つのニューラルネットワーク「バリューネットワーク」が勝者を予測します。

私たちは、このニューラルネットワークを、囲碁の達人たちによる 3,000 万を超す指し手を用いてトレーニングし、57% の確率で次の手を予測することが出来るようになりました。(AlphaGo 以前の記録は 44% でした。) しかし、私たちの目標は棋士の真似をさせることではなく、コンピューターが名人と競い、勝てるようにすることです。 そこで AlphaGo は、自らのニューラルネットワーク間で幾千もの対局を行い、強化学習と呼ばれる試行錯誤を繰り返しながらコネクションを調整、自ら新たな戦略を学び取りました。もちろん、このような計算を行うには非常に大きな処理能力を持ったコンピューターが必要で、本研究においては、 Google クラウドプラットフォーム をフル活用しています。

全トレーニング完了後、私たちは AlphaGo の成果を確認すべく、最先端のコンピューター囲碁プログラムとトーナメント形式で対戦させました。結果は、500 戦中 AlphaGo が 499 勝を納めました。次に、過去 3 回ヨーロッパチャンピオンに輝いたプロ棋士の樊麾 (Fan Hui) 氏をロンドンオフィスに招き、AlphaGo との対局を催しました。この対局は、昨年 10 月に非公開で行われ、AlphaGo が 5 対 0 で勝利を納め、コンピュータープログラムが、初めて囲碁のプロ棋士に勝利しました。この対局に関する詳細は、本日付けの ネイチャー誌 に詳しく掲載されています。

Google DeepMind の AlphaGo について動画。
10:25

今後、AlphaGo は、過去 10 年間に渡り囲碁界の頂点に君臨している イ・セドル氏との対局に臨みます。同対局は今年 3 月ソウルで開催予定です。

私たちは、コンピューターが囲碁をマスターし、AI にとって最難関といわれた問題を解くことに成功したことを喜んでいます。しかしながら、この結果の最も重要なことは、AlphaGo が人間の手によって作られたルールに基づいた「エキスパートシステム」ではなく、普遍的な機械学習技術を使って、囲碁を自らマスターした、という点です。そして、AI アルゴリズムを素早く効率的に開発・テストする上で、ゲームは最適なプラットフォームではありますが、最終的には、私たちはこうした技術を、重要な現実世界の問題に応用していきたいと考えています。私たちが AlphaGo において用いたメソッドは汎用性があります。私たちは、この技術が、将来的に気候モデリングから、複雑な疾病分析といった現代社会の喫緊の課題を解くために応用できるのではないかと考えています。