AlphaGoとトップ棋士の対局を観戦しよう!

"We cannot go against the trend. I think machines will beat humans someday. "
"If I get defeated it might be negative for go and this is inevitable in this modern life. However, it will not destroy the value of go itself."
(「私たちは時代の流れに逆らうことは出来ません。いつか機械は人間を打ち負かすでしょう」
 「もし私が負けたら囲碁にとってはネガティブなことですが、これは現代社会では避けられないことです。
  しかし、その敗北は囲碁自身の価値を損なうことはないでしょう」イ・セドル)
Human-AI showdown begins 1 p.m.

2016年3月9日、"AlphaGo"という人工知能囲碁プログラムが囲碁で世界トップクラスのプロ棋士であるイ・セドル九段との5番勝負の1局目に勝利しました。つい最近まで「コンピュータ囲碁ソフトがプロ棋士に勝つには、少なくともあと10年は必要」と言われていたことを考えると凄まじい歴史的快挙だと言えます。そして、単に今までにないことが起こったというだけではないのかもしれません。1局目を見た時点では、AlphaGoの実力が人間には底が見えないという、想像を上回る事態になっているかもしれないという驚きがあります。この歴史的な場面を、囲碁について詳しくない方にもリアルタイムで楽しんで頂けるよう、知っておくと良さそうなことを幾つか説明します。この文書をお読みになると、AlphaGoとは何か、イ・セドル氏はどのような棋士なのかなどがなんとなくわかって、対局中継を楽しめるのではないかと思います。


以下、QA方式で説明します。
"by ***"は回答の根拠を示しており、適宜必要な場面で挿入します。
"論文"は次の論文を指しています。
https://gogameguru.com/i/2016/03/deepmind-mastering-go.pdf
それ以外にドキュメントがある場合はURLやタイトルを直接記載します。
明記できる文献がない場合(見た記憶はあるが具体的なドキュメントが引っ張り出せなかったケースも含めます)や筆者の弁の場合は"筆者"と記載します。


Q. どこで観戦できるの?
A. 以下をご覧ください。
囲碁プレミアム
囲碁プレミアム - 生中継|囲碁・将棋チャンネルホームページ

google公式 (英語)
https://www.youtube.com/watch?v=vFr3K2DORc8

ニコ生(実況なし)
【世紀の対局を実況】囲碁 イ・セドル九段 vs アルファ碁 第2局 - 2016/03/10 13:00開始 - ニコニコ生放送


Q. AlphaGoって何?
A. Google(の人工知能研究開発を担当するGoogle DeepMind)のコンピュータ囲碁プログラムです。

Q. なんで囲碁プログラムが人間に勝つのは難しいといわれてきたの?
A. 囲碁はどういう手が良いかを探す範囲(これを情報科学の用語で「探索空間」と言います)が巨大なことと、盤面の形勢や打った石(これを囲碁の用語で「着手」と言います)の善し悪しの評価が難しいからです。
囲碁プログラムが人に勝てるとしたら10年は先ではないかと言われていました。
by 論文

Q. AlphaGoはいつから、なぜ話題になっているの?
A. 話題になった理由は、主にプロ棋士に勝ったからです。これは囲碁プログラミングにおいて世界初の偉業です。昨年10月にヨーロッパチャンピオンであるFan Hui氏を5戦5勝で下していたという論文が今年1月になって公開され、その時点で話題になっていました。そしてその際3月に世界トップクラスのプロ棋士であるイ・セドル氏と対局すると発表し、注目を集めました。
by 論文

ただし、囲碁は9路というミニサイズ版のゲームもあり、それでは2008年の時点でプログラムがプロに勝っています。
by http://minerva.cs.uec.ac.jp/~ito/entcog/contents/lecture/date/5-yoshizoe.pdf

ではなぜ1月の時点で話題になったかというと、9路と19路ではゲーム性が全く違い(厚みや模様という概念が19路にはあるが9路にはないと言って良いと思われます)、9路では勝てても、19路ではまだまだ無理だと考えられていたからだと思われます。
そして3/9にイ・セドル氏との5番勝負の第1局目が行われ、AlphaGoが勝利を収めたことで、一層の驚きとともにさらに話題になりました。by 筆者


Q. AlphaGoが昨年10月に勝った棋士はどんな方なの?
A. 欧州大会で3回優勝したプロ棋士2段のFan Hui氏です。囲碁の世界ではBayesEloという方式の棋士の強さを表現するレーティングがあり、そこではFan氏はAlphaGoとの対局時2908となっています。 by 論文
Fan氏の強さがプロの中でどの程度かは、レーティングサイト(http://www.goratings.org/)において2016/03/09時点で866人中564位です。
また、Fan氏はアマトップから平均的なプロ程度という評価をなさっているプロの方もいらっしゃるようです。
by http://go-en.com/comment4alphago.html


Q. AlphaGoが今回対局するイ・セドル氏はどんな棋士なの?
A. 世界最強と呼び声高いトップ中のトッププロ棋士です。 by https://ja.wikipedia.org/wiki/%E6%9D%8E%E4%B8%96%E3%83%89%E3%83%AB
単に強いだけではなく、これまでの定石にない型破りな手を打つこともあって非常に人気があります。AlphaGoがイ・セドル氏に勝利したならば、AlphaGoこそが世界最強だと認める方も多いと思われます。

ちなみに、現在の日本最強棋士井山裕太氏で、囲碁のタイトルは7つあるのですが、そのうち6つを独占しています。さらにちょうど今7つ目のタイトルに挑戦しています。これが実現すれば日本囲碁界初の快挙であり、過去例を見ない圧倒的な強さを誇ることになります。しかし、イ・セドル氏はつい先日井山氏を下しました。このことからも、イ・セドル氏が凄まじいということが伝わるのではないかと思われます。
by 筆者


Q.イ・セドル氏は世界最強棋士なの?
A. 実績としてはそう言っても問題ないと思います。ただ、現在最も勢いがあるのは柯潔氏だと思われます。柯潔氏はイ・セドル氏に10戦8勝しており、レーティングでも他の棋士から頭一つ抜けてのトップです。
また、柯潔氏は「AlphaGoはセドル氏に勝っても、私には勝てません」と発言しており、他にもAlphaGoとの対局に対して前向きな姿勢を見せています。
Sina Visitor System
仮にAlphaGoがイ・セドル氏に勝ち越すとしたら、最後の壁として柯潔氏が立ちはだかるでしょう。
by 筆者


Q.AlphaGoに弱点はあるの?
A.もしかしてですが、時間制限を厳しくするとAlphaGoが大幅に弱体化するのかもしれません。
AlphaGoはFan氏に全戦全勝したと一般に広まっていますが、実は1手30秒ルールで対局した場合は大体互角の戦績であることがAlphaGo論文に示されています。ある程度の時間を掛けて盤面を評価した場合は無類の強さを発揮するAlphaGoですが、時間制限を掛けた場合は直感的に次善の手を見出すことが出来る人間に軍配があがるのかもしれません。ただこれは完全に筆者の弁であり、囲碁プログラムの専門家やプロ棋士がそう言ってるわけではありません(筆者が知らないだけで同様の発言なさってる方もおられるかもしれませんが)。
by 筆者


Q. AlphaGoは他の囲碁プログラムよりどれくらい強いの?
A. 495戦して494回勝利しています。ただし、AlphaGoは単機版と分散版があります。分散版というのは、たくさんのコンピュータを統合して処理能力を高めた版です。先ほどの戦績は単機版です。分散版は単機版より強力で、分散版は単機版に対して77%の勝率、かつ、他プログラムには勝率100%です。
イ・セドル氏やFan氏との対局では分散版を用いています。
by 論文


Q. 囲碁プログラムは近年着実に強くなってきたそうだし、別にAlphaGoが飛躍的に強くなったってわけじゃないんじゃないの?
A. 何をもって飛躍的と表現するかにもよりますが、筆者としては飛躍的と主張して良い強化だと思われます。
近年の伸びに比べてそんな大差ないというのは、例えば以下のような捉え方です。
https://twitter.com/fronori/status/692958398808219648


このような意見に対しては、
・前提である「強さが線形で伸びる」が成立するかについて、筆者はとてもそう思えません。だいたい何事においてもそうですが、ある程度まで伸びると伸びしろはどんどん小さくなってきます。そもそも段は順序尺度であり、例えば1段から1.5段上がるのと5段から1.5段上がるのは全然違いますし、また、「10年後に15段伸びる」と言えばおかしいことは明らかでしょう。
・「少なくとも10年はプロに勝つのは無理だろうと言われてきた」と論文にあり、これはこの論文が自己の成長を誇大広告するためにそう述べたのではなく、コンピュータ囲碁に関わる方なら大半がそのような共通認識をお持ちではないかと思われます。
という主にこの2点から、AlphaGoは飛躍的成長を遂げたと述べて良いと筆者は考えます。


Q. AlphaGoはなぜそんなに強いの?
A. 理由は2つあります。1つはディープラーニング、もう1つはセルフプレイ(自己対局)です。
ディープラーニングは機械学習という分野の手法です。これを活用すると、人間がどのような手を打つべきかを延々コンピュータに情報入力するのではなく、棋譜囲碁の対局内容を記述したもの)をひたすら読み込ませるだけで、どのような手がより良い手なのかを自動的に見出してくれます。*1AlphaGoではKGSというインターネット囲碁対局サービスから棋譜を取得し、それをディープラーニングへの入力に活用しています。
そうして得た「こう来たらこう打ったほうが良さそうだぞ!」という知見をセルフプレイを繰り返すことで磨き上げることで強化したのがAlphaGoです。
さらに言うと、ディープラーニングにもセルフプレイにも凄まじいコンピューターリソースを用いており「なるほどこれはGoogleのような金を持ってる大企業じゃないと出来ないわ…」という物量による下支えも強さの秘訣です。

2015年以前の囲碁プログラムにディープラーニングは活用されていませんでした(筆者の調べた限り)。そもそもディープラーニングが活用されだしたのがここ3年くらいだというのもあります。
ただ、現在は囲碁プログラムにディープラーニングを用いるというアイデアは他でも研究されています。また、次のようなお手軽な価格で購入可能なディープラーニングを用いたプログラムもあるそうです(筆者は試していません)。
平塚の囲碁四段の詳細情報 : Vector ソフトを探す!


Q. 論文に出てくる「モンテカルロ木探索(MCTS:Monte Carlo Tree Search)」はAlphaGo独自手法なの?
A. MCTS囲碁プログラムの現在主流のアルゴリズムです。2006年のCrazy Stoneが初出です。
MCTSが出てくるまでは「どのような手が良いか」を判断する「評価関数」を人手で決めていました。現在の囲碁プログラムは強力になりましたが、その足掛かりとなったのがこのMCTSで、大変重要なアルゴリズムであり、囲碁プログラミングを根本から変えたものです。
そのアルゴリズムの骨子を簡単に説明します。
ある局面から以降ランダムに着手することを繰り返し、最後まで(もう石が置けなくなる状態まで)打ち切ります(これをプレイアウトと呼びます)。プレイアウト時の勝敗数から勝率を算出し、最も勝率が高い手を選択するというのがMCTSです。
by
http://www-erato.ist.hokudai.ac.jp/docs/summer2012/compgo_plan_pub.pdf
AlphaGoもディープラーニングやセルフプレイなどを利用し工夫していますが、やっていることはMCTSです。
*2


Q. AlphaGoは囲碁のためのプログラムだけど、その研究結果は何か他に応用できるの?
A. 可能です。AlphaGoは汎用的な機械学習の手法を用いています。また、強化のアプローチも汎用的です。
by 論文

これがチェスプログラムのディープブルー*3との大きな違いです。ディープブルーはあくまでエキスパートシステムであり、人間がチェスのためだけに設定したパラメタに従って動作しています。チェス以外のタスクをこなそうと思ったなら、チェス以外のパラメタを人間が与えなければなりません。しかし、AlphaGoは極論すればデータを与えればそこから目的に合わせて自動的に適切な振る舞いをするよう学習します。タスクを切り替えたければ、与えるデータを変えるだけで良いのです(あくまで原理的にはですが)。
by 筆者

ディープマインドの共同創業者で最高経営責任者(CEO)のデミス・ハサビス氏は「いちばん重要なのは、AplhaGoは人間のプログラミングによって設計された、単なるエキスパートシステムではないという点です」と語ります。「代わりに一般的なディープラーニング(深層学習)のテクニックを使って、どうやって囲碁の試合に勝つかを AlphaGo自らが学んでいくんです」と述べています。

DeepMindのAI「AlphaGo (アルファ碁)」は何を変えるか? – Nobuyuki Kokai Blog

Q. AlphaGOの登場で意気消沈されてる囲碁プログラミングの方がいらっしゃるのはなぜ?
A. あくまで私見ですが、一般人に実行可能な伸びしろがないからだと思われます。
MCTSが登場した際は、分かりやすい問題点がたくさんありました。アルゴリズムが洗練されているとはいいがたく、また、マシンスペックの問題もありました。
そのため、いくらでも強化できるポイントがあり、しかも途中参入しやすかったと思います。
そもそも登場してすぐは「職人が一つ一つ丹精込めて作った評価関数より、でたらめな手をたくさん試すとかいう手法が勝てるはずない」というようにMCTSのアプローチに懐疑的な方もいらっしゃったように思われます。
また、囲碁囲碁による囲碁のためだけのプログラムであるならばまだしも、前述のように実社会に直接応用可能な役立つものであるとまで言われると、本当に付け入る隙がありません。
by 筆者


Q.英語でコミュニケーションとる際の囲碁専門用語はどうすればいいの?
A. youtubetwitter英語圏の方とやり取りしたい時は、こちらを参照してください。
囲碁用語英訳集 - 囲碁のパンダネット


Q. 囲碁やってみたいんだけど。無料で。
A. フリーソフトがあります。
囲碁ブラウザゲーム COSUMI - 無料!
バリュー囲碁4【無料版】の詳細情報 : Vector ソフトを探す!


Q. 囲碁ってどういうゲームなの?何が勝利条件なの?
A. 囲碁は陣取りゲームです。
以下の説明は正確さをかなりの程度無視して、とりあえず対局観戦を楽しむための最低限の知識を雑に把握するためのものでしかないことご了承下さい。

先手が黒色・後手が白色の石を持ち、それ交互に置いていき、最終的に自分の色の石で囲んだ陣地の大きさが自分の点数になります。つまり、自分の石でできるだけ大きく囲んだ方が勝ちです。
自分の石は相手の石に周囲を囲まれると取られます、逆も同じくです。
細かいルールはいくらでもありますが、「黒色の石で囲まれた面積の方が白色の石で囲まれた面積より大きいっぽいな。だから黒が優勢だな」くらいの認識をしていただければ結構です。


Q. 形勢とか目算とか「形」とかって何?
A. 自分の獲得した陣地の大きさは、終局時に確定します。
目算は「この辺のスペースは自分(か相手)の陣地になりそうだな」という目分量で陣地の大きさを計算をすることです。終局まで陣地は確定しないため、あくまで目算は暫定的な評価でしかありません。
形勢は各スペースの目算の結果を足し合わせて、その時点で対局者のどちらがどれくらい優勢なのかです。
「形」は「まだ確定してはいないけど、ゆくゆくは陣地になりやすそうな石の配置」程度の意味だと捉えてください。取らぬ狸の皮算用な感じのものです。
形勢や形の良し悪しはプロでも正確に捉えるのは難しく、人によって評価が異なることもよくあります。

ここら辺の曖昧でふわっとした概念が囲碁にはあることを念頭に置いておくと、観戦や解説視聴をより楽しめると思います。厳密さにこだわらず、なんとなくで把握すれば大丈夫です。


Q. 結局イ・セドル氏とAlphaGoとの1局目はどうだったの?
A. 説明しづらい1局でした。
こちらをご覧になると良いでしょう。
【AlphaGo】イ・セドルvsAlphaGo Googleディープマインドチャレンジマッチ第1局速報(※16:57更新終了) : 【nitro15】

筆者は囲碁プレミアムにて対局をリアルタイムで視聴していました。
www.youtube.com
解説は石田芳夫二十四世本因坊で、この方はコンピュータの異名をとるほど形勢判断が正確な方です。また、ニコニコ動画での対局実況やtwitterでのプロ棋士やアマチュア囲碁ファンのツイート、2chの実況などを横目に眺めていました。なお、筆者は一番勉強してた学生時代でも部内・ネット碁初段程度、現在は5級あるかないかくらいの棋力です。これは、基本の定石や手筋は知ってて、精度の低い形勢判断であればギリギリできるかなという程度です。

対局の内容は、序盤イ・セドル氏が珍しい手を打ち、30手目くらいまででもう完全にイ・セドル氏が勝つに違いないと素人目にも見えるような状況でした。AlphaGoはなんだかぼんやりとしたそれでいてゴリゴリに力押しの手で、イ・セドル氏が華麗にかわしていて、イ・セドル氏ご自身も優勢を確信してあまり厳しい手を打ってないように思われました。自分が優勢の時に一か八かの切り込み特攻を行う必要はありません、悠然と構えていればいいのですから。ヘボ碁打ちの筆者の感想なんてどうでもいいですが、プロ達の評価も形勢イ・セドル氏良しでした。ニコニコ動画の解説で、イ・セドル勝利間違いなしと明言していました(真剣にではなく、ノリで言ってる雰囲気もありましたが)。

ところが、40手目から50手目くらいで、なんかふんわりよくわかんない形勢になってきました。まぁ、でもイ・セドル優勢は揺るがないかなと筆者は思っていました。ですが、この辺からちょっとずつプロの解説者たちが「よく分からない」と言うようなことを漏らすようになってきたように思われます。こんな序盤ではまだ陣地は確定せず、形勢は揺れ動くものです。目先の陣地確保にこだわるより、形の良し悪しの方が後々効いてきます。確かに、多少イ・セドル氏は陣地確保の面で甘いところがあったのかもしれませんが、形ははっきりイ・セドル氏良しです。遅かれ早かれイ・セドル氏の優勢は濃厚になっていくでしょう。AlphaGoはプロもイマイチと評価するような手ばかりですし。

中盤に差し掛かると、どんどん形勢があやふやになってきました。どっちが優勢なのかわかりません。頼りのプロの解説も、段々歯切れが悪くなってきました。これはイ・セドル氏が何か大きなミスをしたら逆転される程度に不味いかも…という雰囲気を感じます。序盤、あれだけ綺麗に見えていたイ・セドル氏の形も、今やあまり活かされてないように見えます。

後半に入ると、形勢はもう全くわかりません。形の良さが活かされていません。どちらも厳しい勝負手を打ったりやるかやられるかの殴り合いを挑んだりするのではなく、淡々と進行していってるように見えます。なのに、この頃になると、プロ解説者がAlphaGoの優勢を口にするようになってきました。

終盤、ニコニコ動画のプロ解説者はAlphaGoの勝利を断言しました。石田氏はもっと慎重な発言をしていたのですが、ここに来てとうとうイ・セドル氏の旗色の悪さを認める発言をするようになりました。時々首を振り、苦しそうな表情を浮かべるイ・セドル氏。そして彼はまさかの投了(ギブアップ)を告げました。







Q. 感想は?
A. 怖いです。何かが人と違う気がします。
以下は本当にグダグダとした筆者の独り言で、真に受けない方が良いです…。

下馬評はイ・セドル氏優勢でした。AlphaGoが勝つには、イ・セドル氏のミスにつけこむとか、機械ならではの奇妙な手で翻弄するとか、そういうハプニングに近いものが必要だと思っていました。しかし実際は、AlphaGoが淡々と勝利を収めました。なぜAlphaGoが勝ったのか、筆者には全くわかりません。イ・セドル氏に何か具体的な大きなミスがあったわけでも、AlphaGoに驚きの妙手があったというわけでもなく、いつの間にか形勢が移り変わっていたような気がします。途中までの形勢は明らかにイ・セドル氏に傾いていたように見えていました。なぜなら形が良かったからです。ですが、この形の評価というのは難しく、とらえどころがないものでもあります。普通、形勢不利とみなしたら、相手の陣地を奪うために深く切り込んでいきます。ところが、この1局ではどちらもそれをしていなかったと思います。そこが怖いです、つまりはAlphaGoもイ・セドル氏もどっちも自分の方が形がよいと考えていたのだと推察します。プロ棋士たちの評価は途中まで皆さんイ・セドル優勢で「AlphaGoはもっと切り込んでいくべきだ、なのに未だにそうしてないとは、AlphaGoの形勢判断は相当甘いな、ふふん!」と仰られているように筆者には見えました。それが、終わってから振り返ってみると、AlphaGoが勝利したのですから、AlphaGoの形勢判断の方が正しかった(ミスや妙手でひっくり返したのではなく、地力での勝利なので)と言わざるをえなかったようです。リアルタイムでプロの解説が徐々に不穏な雰囲気を帯びてきて、前言撤回する方が多くいらっしゃったことがとてつもなく印象的でした。これは「プロ棋士ともあろう者が、一旦口にした形勢判断を撤回するとは何事か!」と揶揄してるのでは一切なく、それ程に形勢判断が人間とAlphaGoで異なるのではないかという畏怖があるからです、
まとめると、AlphaGoはイ・セドル氏を含めたプロ棋士とまるで違う形勢判断をしており、それが結局正しかった。大げさに言うならば、人間と違う域に達しているかのようです。

ある意味地味な1局でした。うおおおおおおおお!と盛り上がる局面もなく、穏やかに進行しているように思われました。筆者はなんだかんだいって人間の肩を持ちたいという心情のため、イ・セドル氏に何か明確なミスがあれば「そこを改善して次こそイ・セドル氏が勝つんだ!」と言いたいところでしたが、どうにもこうにも地力の違いのような気もします。このままではAlphaGoの5戦全勝も十分あり得るのではないかと現時点では思っています。

ただ、イ・セドル氏は独創的な手を打つことに定評がある最高峰の棋士です。今回の1局は(筆者程度の棋力の人間が言うのは大変お恥ずかしいのですが)イ・セドル氏らしからぬ碁だったように思われます。本来の実力を発揮すれば、ここからの逆転勝ち越しも全く不思議ではありません。それを期待しています。それでいて、これがイ・セドル氏の不調ではなく、AlphaGoが人間と違う域に達しているがためにどうにも打ち回しが窮屈に抑え込まれていたのだとしたら、それは…。

*1:この辺の話は面白いので、詳細をまた後日書きたいなーと思います。

*2:論文読解にチャレンジなさる方へ。論文に出てくるrolloutは上記資料でいうプレイアウトのことだと思います。筆者はそもそも囲碁プログラムに関する英語論文読んだのこれが初めてだったので、rolloutって表現は初見なのですが、こっちの方がむしろ通じるんでしょうか?

*3:1996年、当時チェスチャンピオンであったガルリ・カスパロフ氏に勝利