AI研究者や開発者はもちろん、大学生や高校生でも読める
三宅:本書『最強囲碁AI アルファ碁 解体新書』はAI研究の最先端にいる大槻さんがアルファ碁を体系的に解説した本です。まずは企画した意図や狙いについて教えていただけますか?
大槻:アルファ碁がどういうものか疑問に思っている方が多そうだと感じたことが大きいです。そもそも『Nature』に投稿された論文は英語ですし、技術的にわかりやすい解説書があまりないんですよ。コンピューター囲碁に関しては囲碁AIのDeltaGoを自作したこともあり、技術の背景をしっかり踏まえて解説できるのではと思って書き始めました。
三宅:本書はどういう方に読んでもらいたいですか?
大槻:一番はAI研究者や技術者の方です。アルファ碁の中身を知って、使われている技術を別の形でも活かしてもらえればと思っています。ただ、なるべく技術的な知識がなくても読めるように配慮し、数式はできるだけ使わないように、また専門用語だらけにならないように気をつけました。やはり、専門家ではないけれど興味を持っている一般の方にも知ってもらいたいんです。
三宅:今回は監修として私からできるだけ噛み砕いて書いてほしいとお願いしたこともありますが、大学生や高校生でも読めるのではないかと感じました。
本書全体を通して知ってもらいたいのはアルファ碁自体のことですか? それともアルファ碁をテーマにして何か伝えたいことがあったんでしょうか。
大槻:アルファ碁そのものを理解してもらいたいという気持ちもありますが、AIが何でできていて、今どういう状況で、どんな課題があるのかも伝えられればと思っています。
三宅:巷のAI本は漠然としたものが多くて、一つのAIを作れる技術をきちんと書ききった本は少ないと思います。ですから、実際のアルファ碁というAIについて解説されている本書はなかなかユニークです。
本書を読むとアルファ碁を理解できますし、検索やシミュレーション、確率など現代のAIの基礎になっている技術を網羅的に知ることができます。そもそも、囲碁やボードゲームはAIを発展させるために選ばれたゲームですからね。
そのため、囲碁に関心がない方でもAI全般に興味があれば、本書を読む価値はあるんではないでしょうか。
アルファ碁にとって囲碁は絵画みたいなもの
三宅:では、改めて本書の内容について教えてください。
大槻:本書ではアルファ碁を形作っているディープラーニング、強化学習、モンテカルロ木探索という方法論を解説しています。最後に、これら三つがどのように組み合わさってアルファ碁になっているのかを説明しました。
各技術に関してあまり明るくない方でも読み進められるように、基本的な事例を挙げて少しずつアルファ碁に近づいていくという書き方をしています。
三宅:ディープラーニングを囲碁で使えるようになったのはなぜなのでしょうか。
大槻:ディープラーニングは画像なら何でも扱えるようになってきて、音声や文章などもいったん画像のような二次元データに変換して扱うほどです。囲碁は絵画みたいなものなんですね。盤面を絵に近い形で認識できるので、ディープラーニングと相性がいいんだと思います。
三宅:では、ディープラーニングが使われる前は何が使われていたんですか?
大槻:碁石の組み合わせの良し悪しを開発者がすべて定義して作り込まなくてはならず、なかなか強くなりませんでした。
三宅:人間の知識をベースに作ろうとしていたわけですね。しかし、アルファ碁はみずからの知識をもって良し悪しを判断できると。アルファ碁にはプロ棋士の棋譜を学習させたとのことですが、どれくらいの局数なんでしょうか。
大槻:3000万局面ほどです。そういう情報が手に入るようになったことが、アルファ碁の強さの一つですね。
三宅:次に、強化学習について。これは囲碁以外でも使われているんですか?
大槻:最近だと車の自動運転で、ぶつからないような動きを学習できたという話がありました。あとはサーバー室の空調制御に使われているという話もあります。
これまでもゲームに適用する試みはあって、バックギャモンでは成功したものの、囲碁や将棋ではうまくいかないのではと言われてきました。
三宅:デジタルゲームでは格闘ゲームやレースゲームでときどき使われていました。デジタルゲームはそれぞれ個別のため学習できるデータがそのゲーム以外になく、蓄積できないので、ゲーム内で学習するしかありません。なので、むしろ強化学習を使うしかないんですよ。
大槻:アルファ碁では前評判を覆して強化学習が重要な技術になりましたからね。
三宅:モンテカルロ木探索についてはどうでしょうか。
大槻:探索という技術自体は電車の乗り換え案内やカーナビで目的地への最短距離を導き出すなど、私たちの身近なところでも使われています。モンテカルロ木探索は囲碁向けに作り変えられたものですね。
三宅:元々は探索の技術なんですね。Google検索とは違うんでしょうか。
大槻:一種の探索とは言えます。検索は、自分の最も知りたいものを世の中の情報の中から見つけ出す技術ですから。
三宅:囲碁以外でも使われてきた様々な技術を組み合わせて、新しくアルファ碁が作られたというわけですね。
お話をうかがうと、たとえば強化学習だけでも1冊の本が書けると思いますが、1冊の中で三つの技術を扱ったのはなぜですか?
大槻:強化学習をちゃんと説明すると、前置きだけで相当長くなってしまいます。今回は読み進めるとアルファ碁が完成するというゴールを設定し、それぞれの技術は事例からのアナロジーで解説するように心がけました。分かりやすさを優先した分、数学的な厳密さは多少削りましたが。
三宅:専門家向けに数学的厳密さを求める本はかなり読みにくいことが多いです。本書が読みやすいのは、おっしゃるように事例とアナロジーから入っていくからですね。
アルファ碁がそれ以前のAIよりはるかに強くなった理由
三宅:アルファ碁はトッププロ棋士に勝ったわけですが、AIが囲碁でプロに勝つのは難しいと言われていた時期が長かったですよね。これまでの囲碁AIと違うところ、どうしてそこまで強いのか教えていただけますか?
大槻:将棋や囲碁は10年位前まで探索の分野だと考えられていました。可能性をすべて列挙して、1手先、2手先、100手先とどんどん読みを深くしていくのが当たり前でした。ただ、囲碁の場合は手の候補が多すぎます。
また、局面の良し悪しを評価するのが難しかったんです。将棋は駒を何枚持っているか、王将がどれくらい危ないかといった指標で大体評価できて、コンピューターにも良し悪しが判断しやすいんですよ。ところが、囲碁は石の繋がりを評価しなければなりません。つながりと一言で言っても、すごく難しいんです。石が一路ずれるだけでまったく評価が逆になったりします。囲碁の場合、部分的な形と遠くの石の配置が密接に絡み合っていますから。
この二つの問題のため、囲碁AIに探索で取り組むのは非常に難しかったわけです。ですが、手の候補数が多いという問題に対しては、モンテカルロ木探索が解決策となりました。ランダムに打って候補を選ぶという技術で、良い手の候補を絞り込めるようになったからです。これがわかってきたのが2006年くらいですね。
局面の評価に関しては、ディープラーニングで盤面を画像的に扱うことで良し悪しを判断できるようになりました。これら二つがアルファ碁を劇的に強くした要因です。
三宅:囲碁において大局観という考え方があります。これは人間だけのもので、AIには持てないと言われていました。今回のアルファ碁はこうした大局観、盤面を見ていいか悪いかを判断する直感のようなものは持っているんでしょうか。
大槻:自分で作ったDeltaGoはモンテカルロ木探索が入っていないのですが、何も探索していないのにすごくセンスのいいところに打ってきます。ですので、アルファ碁もプロほどではないとはいえ大局観を持っていると思います。
三宅:人間は囲碁の盤面にいろんな見方をしますが、アルファ碁がどう見ているかはわかるんでしょうか。ディープラーニングの中を見ると、それがわかりますか?
大槻:ディープラーニング全般の問題で、なぜそのアウトプットとなったかを説明できないという課題があります。仮に自動運転が実現した世界で、万が一事故を起こしてしまったとしましょう。このとき、どういう判断の結果として事故を起こしたかがわからないと困ったことになると思います。ただ、今のところよくわからないというのが本当のところですね。
三宅:開発者もアルファ碁が何を考えているのかわからないんですよね。
大槻:研究はされていると思いますが、やはり完全にはわからないのが現状のようです。
三宅:僕はそこを知りたいんですよ。プロ棋士が局面の解説をしてくれますが、ああいう言語化した解説です。アルファ碁に「この局面はここに注目」「この手はこういう理屈がある」と説明してもらう感じで。
大槻:ディープラーニングを使ってうまい解説をさせることは、今の技術でもできそうな気がします。でも、その解説自体がどのように作られたのかを解説するという新たな課題がありますね(笑)。
三宅:ところで、アルファ碁はモンテカルロ木探索が使われるようになったときにかなり強くなったという話を聞きましたが、アルファ碁以前のAIはどれくらい強かったんでしょうか。
大槻:アマチュアの高段者くらいと言われていました。プロには4子を置いて勝てるかどうかというところで、大きな差がありました。
三宅:三つの技術を組み合わせたのはアルファ碁が最初ですか? また、囲碁でしか使えないんでしょうか。
大槻:他にも適用できると思いますが、目的とディープラーニングとの相性が重要だと思います。
三宅:囲碁にぴたっとはまったという感じですかね。モンテカルロ木探索は『TOTAL WAR: ROME II』といったストラテジーゲームでも使われています。ディープラーニングと強化学習も、それぞれが使われているデジタルゲームはあります。ですが、三つとも組み合わせて利用している事例はなかなかありません。
この三つの技術を組み合わせることができたきっかけやキーは何だったんですか?
大槻:それぞれの要素技術は成熟してきていたんですが、いずれも計算量が大きいので組み合わせるという発想に至らなかったのかもしれません。その意味では、Googleだからこそできたと言えると思います。
アルファ碁は囲碁においてシンギュラリティを越えている
三宅:大槻さんはご自身でもDeltaGoという形で囲碁AIを開発されています。本書を読んだ方も自分でやってみたいと思われるかもしれません。
とはいえ、これまで多くの方が囲碁AIを作ったと思いますが、やはりアルファ碁以前と以降では状況が異なります。アルファ碁以降ではどんな点に着目して囲碁AIを作ればいいんでしょうか。
大槻:今となっては、最強の囲碁AIを目指すのはあまりお勧めしません(笑)。
私もアルファ碁のディープラーニングの部分だけは作りましたが、これだけでもかなり時間がかかりました。個人で最強AIを目指すのはもう難しいですね。
三宅:大槻さんがDeltaGoを作ったモチベーションは何だったんですか?
大槻:試してみたいという気持ちが強かったですね。ディープラーニングを囲碁に使えるということで試してみました。DeltaGoの学習自体はChainerというニューラルネットワークのフレームワークを使いましたが、自分でC言語に組み直したので誰でも動かせるようになっています。
三宅:では、自分でも作ってみたい方に向けて大槻さんからアドバイスをいただきたいですね。
大槻:経験のない方だと、囲碁のデータ構造に苦労するかもしれません。慣れると勝手に手が動くようになるのですが……。
三宅:DeltaGoは公開されていますから、むしろそれをダウンロードして改造していくのがいいかもしれません。
大槻:モンテカルロ木探索と組み合わせてみるとすぐに強くなると思います。
三宅:それと、アルファ碁のニューラルネットワークには2種類あるんですよね?
大槻:そうなんです。SLポリシーネットワークは学習したプロ棋士の手を真似ることです。それに対して、RLポリシーネットワークを用いることでより勝ちやすくすることができます。これは単にプロの手を見て真似るだけでなく、自分同士で対戦させて勝てる手を見つけていくことです。
三宅:要するに、アルファ碁は人間の手を離れて自己対戦で成長していくということですか。流行りの言葉で言えば、シンギュラリティを越えているんですね。
大槻:囲碁というゲームの中では、そうなります。