アルファ碁はたくさん手を読んでいるのではなく、猛烈に勘がいい

「人工知能が人類を超えた」と大きな話題を呼んだ、囲碁プログラム「アルファ碁」とイ・セドル九段の対局。いったい、アルファ碁はどのように世界のトップ棋士に勝ったのでしょうか。常識はずれで無謀だと思われた手が、じつは好手だったという展開が続いた全5局。この世紀の対決を、コンピュータ囲碁に詳しい棋士・大橋拓文六段と、将棋プログラム・Ponanza開発者で囲碁プログラムの開発もしている山本一成さんと共に振り返ります(聞き手 cakes 加藤貞顕)。
前回記事はコチラ

左:山本一成さん、右:大橋拓文六段

20手先に進むと、悪手だと思った手が好手になっている

加藤貞顕(以下、加藤) ではここから、それぞれの対局について解説していただきます。

大橋拓文(以下、大橋) 第1局の敗着(負けを決定づけた手)は、黒7手目と言われています。


黒7手目

加藤 え、7手目が敗着って、早すぎじゃないですか?

大橋 そうなんです。これは、イ・セドルさんがコンピュータを試した手なんですね。結果的にうまくいかなかったのですが。でも、セドルさんのこの手を敗着にするというのは、その後の応手を完璧に打たなくてはいけないわけで、それができる棋士は世界に5人もいないでしょう。それだけ、アルファ碁が強かったということです。

加藤 コンピュータを試す手とは?

大橋 あまりデータになさそうな手を打って、コンピュータがどう対応するかを試したり、コンピュータを混乱させたりしようと思ったんじゃないですかね。でも、前回(リンク)、山本さんがディープラーニングの解説をしてくれたときに、「局面を丸暗記しないで、抽象化して学習する」と言っていましたよね。まさにその効果で、アルファ碁はちゃんとこの局面で何をすべきか一から考えて、いい手を打ちました。

山本一成(以下、山本) あれ、でも、一緒にニコニコ生放送で解説してた時、アルファ碁の10手目を見て、「これ悪手ですね」とか言ってなかったっけ。


白10手目

大橋 あのね、当時はむしろ、「あ、これでセドルさん勝ったな」って思ってました(笑)。この段階で相手が悪手を打ったら、普段のセドルさんなら絶対勝ちに持っていけるから。 で、この10手目は、プロの対局ではほとんど見られない、部分的には損な手とされている形なんです。定石を丸暗記してたら、絶対に打てない手。しかも、すごく早く打ったから、「バグって変な手打っちゃったのかな」くらいに思ってました。ところが、20手目くらいまで進んでみると、すごくいい手だったとわかった。セドルさんが7手目に打った黒の位置が、絶妙にわるくなってる。


白22手目

加藤 つまり、アルファ碁は、セドルさんが仕掛けた7手目を見事にとがめたわけですね。だから、プロ棋士のみなさんが衝撃を受けていたのか。

大橋 ほかにもアルファ碁は、定石にとらわれない手をたくさん打ってます。「ツケにはハネよ」(相手が自分の石にくっつけて打ってきたら、打たれた石の横に自分の石を打て)という格言があって、棋士はツケられたら自然にハネるんですけど、アルファ碁はツケられても気にしないんです。

加藤 そのあと、30手目あたりでは、プロの皆さんは局面についてどう思っていたんでしょうか。

大橋 リアルタイムのときは、理解が追いついていなかったですね。セドルさんがよくなるはずだという先入観で見てしまっていました。でも、44手目くらいでだんだん「あれ? なにか変だぞ」と思い始めたんです。それでもまだ、アルファ碁の手は人間からは見ると無謀に見える手が多いから、セドルさんのほうが形勢がいいと思っていました。

山本 アルファ碁、ここに打つよりもあっちを先に打ったほうが損しないとか、トレードオフを上手に考えるよね。

大橋 すごく勘がいいんじゃないかな。

山本 そうか。猛烈に勘がいいんだ。たぶん、20手先くらいは読んでるけど、良さそうなのばかり厳選して読んでる。そしてそれが当たってる。そういうことですね。

大橋 そうそう、20手先までいくと「これおかしいんじゃない?」と思ってた手が、好手だったとわかる。アルファ碁はこれがやりたかったんだ、と。そして、102手目にアルファ碁の決め手が出て、完全にセドルさんが悪くなりました。これは本当にいい手ですね。


白102手目

山本 これを打っておくと、黒がひどい目にあうってこと?

加藤 一見、黒の陣地の中だから、取られそうに見えますよ。

大橋 そう。プロもみんな「こんな手打って、どうするの?」と思ってた。ところが、6手くらい進んで、たくさん図をつくって考えてみたら、セドルさんの黒がうまくいかない。図をいくらつくってみても、黒が1手負けになる。黒地(セドルさんの陣地)になるはずのところが、ゼロになっちゃったんだよね。

囲碁棋士も解説できない一局

加藤 で、116手目でアルファ碁が、戦線からちょっと離れたところに打ちましたよね。

大橋 これはね、「勝ちました」という手ですね。


白116手目

山本 ニコ生の解説をしていた時、ここでもまだ大橋くんは半信半疑だったよね。「黒がいいはずですけど、数えると白が優勢です」とか、変なことを言ってたのを覚えてる。

大橋 「おかしいな」とか言ってましたね(笑)。

山本 数えて優勢なら、白が優勢じゃん(笑)。でもプロの形勢判断はこの時点で、みんなそんな感じだったと聞いています。人類の愚かさが出た一幕だった。

大橋 数えてみましょうとか言って数えると、あれー?って(笑)。あとでよく考えてみると、アルファ碁は80手目くらいから、ストーリーをつくって、的確に打ってきてたんですよね。それに気づいた時はビビりました。

加藤 コンピュータって、流れは気にせずにその時ごと局面を判断して打ってるんじゃないんですか?

山本 でも、論文によると、アルファ碁は次の相手の手を予想するのに、8手前くらいまで考慮するようになってたはず。

大橋 そんなに!?

山本 学習しているとき、そのほうがプロの手を予想しやすかったんだろうね。

大橋 じゃあ流れを意識してるのかな。コンピュータ囲碁のプログラマに聞いたら、プロの手との一致率を調べた時、局面だけを与えるのと、そのひとつ前の手を与えるのだと、ひとつ前の手を与えたほうが一致率が上がるんだそうです。

山本 でも、プロの手と一致したほうがいいのかどうかは、別問題だよね。そこから離れたほうが、最善の手が見つけられるかもしれない。

加藤 そして、衝撃の敗北から第2局へ。

大橋 2局目はだいぶ心の準備ができてましたね。次はアルファ碁が黒番、イ・セドルさんが白番です。で、敗因は白14手目かなと。敗着とまではいかないですが、この手でちょっと苦戦になってしまった。


白14手目

加藤 またそんな早くから形勢が決まっていたんですか……。

大橋 ひとつ前の、アルファ碁の13手目がすごく斬新な手だったんですよ。普通はまず右下の3つの石を安定させようと思うところを、ふっと手を抜いてまったく別の場所に打ったんです。

そして、その手に対してセドルさんはちょっと考えて、正面からとがめにいかずに無難な手を打った。そして、アルファ碁の37手目も、常識からは考えられない手だった。一見意味がわからないんだけれど、そのあとだんだんアルファ碁の形勢がよくなっていくんです。

山本 大橋くんは第2局もニコ生の解説で、途中でセドル勝ちと断言してましたよね。私が言わせたんだけど(笑)。

大橋 いや、そうなんです。多くのプロ棋士が途中はそう思ったようです。この第2局は、韓国のプロ棋士があとから「うまく解説できなくてすみません」と謝罪していました(笑)。

加藤 たしか、盤面の左下にすごく黒(アルファ碁)にとって損な形ができたんですよね。

山本 なんであれがよくなるの?

大橋 それはなかなか説明が難しい。形は、黒石が塊になって、はっきりとよくないんですよ。でも、その石を実際に攻めようと思うと、どうやればいいのかわからない。で、戦いを起こす前に一度力をためようかな、と思って無難な手を打つ。そしたらその手が、アルファ碁にまんまと打たされてる手なんですよね。

山本 有利なときは戦線縮小したほうが安全だから、セドルさんはそう判断したんだよね。

大橋 そう。で、人間が有利だと思って打ってるんだけど、冷静に盤面を見つめてみるとアルファ碁のほうがいい。いつの間にかセドルさんは勝利の可能性がない局面にされている。

コンピュータだから終盤が強いわけじゃない

山本 ところで囲碁って、布石(序盤の打ち方)が少し違っただけで勝率がぜんぜん違うものなの?

大橋 囲碁の棋士は勝率のデータとか、そんなに気にしないんだよね(笑)。今までの囲碁の布石はデータじゃなくて、思想とかで考えるものだったんですよ。

山本 思想……?

大橋 つまり、ふわっとした言葉でまとめてしまう。「この手はここを大切にしてる」とか。「大切にしてるところを攻められる手を誘発するのは悪手」とかそういう判断。

加藤 それは、布石があまりにも広くて、検証するのが無理だからそういうふうに考えてるんですかね?

大橋 そうですね。データで分析するようになったのはここ10年くらいで、しかもまだまだそれを活用している棋士は少ないです。Aという手を打った時の勝率と、打たなかった時の勝率を比べたりしてる人は、いないんじゃないでしょうか。けっきょく、強い人が打った手は流行るんですよね。みんながいろいろ理由を考えて、「だからいい手なんだ」と結論づける。

山本 将棋はあんまり、強い人が新しい手を考えだしたりはしないと思う。

大橋 そうなんだ。囲碁は強い人も、わりと新しい手を打ちますよ。だから、布石の良し悪しじゃなくて、その人の終盤力で勝ってても、その布石が流行ったりする。

加藤 将棋の世界は、羽生さん達の世代が登場するまでは、終盤力が強い人が勝つと言われていた時代が続いていたんですけど、囲碁はどうなんでしょうか。終盤でひっくり返ることってけっこうあるんですか?

大橋 よくひっくり返りますよ。情けないことですが。

加藤 アルファ碁との対戦を見ていると、人間が序盤で不利になって、そのまま押し切られるゲームが多くて、囲碁は序盤で形勢が決まったらもうひっくり返しにくいゲームに見えました。

大橋 あれは、アルファ碁が強すぎるからです。終盤の構想がはじめからできてて、そのために序盤をやっているようにすら見える。それくらい終盤は正確でしたね。実力が近いほど囲碁はややこしい局面になりやすくなるとぼくは思っています。だから、アルファ碁と同レベルの人とかプログラムと戦ったら、終盤が難解になってひっくり返る可能性は充分に出てくる。今回の対局で「コンピュータは計算ができるから終盤は絶対間違えない、だから終盤が強い」という意見をちらほら見ましたけど、それは半分ウソです。終盤までに大差がついてるから、正確に打ててるだけなんです。

山本 アルファ碁は、序盤から推定される強さに比べて、終盤力は弱めなんじゃないの?

大橋 そうですね。ぼくは、序盤、中盤、終盤だったら、アルファ碁は序盤が一番強いと思った。

世界トップの棋士が「自分の勝率は5%」と言った

加藤 それでは、二連敗で迎えた第3局の解説をお願いします。

大橋 この1局はやばかったですね。アルファ碁の強さを思い知らされました。セドルさん、1局目はわざと変わった手を打って自滅。2局目はかたく打ちすぎて完敗。じゃあ3局目はどうする、ということで乱戦形に持ち込もうとしたんです。そして、セドルさん自身、それが一番得意な形でもある。そして、15手目に戦いをしかけました。ところが、それを見事にとがめられて、フルボッコにされたという……。だから15手目が敗着ですね。


黒15手目

加藤 普通は、こういう手を打ったら、激しい戦いになって、それでセドルさんが相手をフルボッコにするんですよね?

大橋 そうです。こういう手を打たれたら、相手は1手も間違えず終局まですべて正しく打たないと、セドルさんには勝てない。つまり、本局はアルファ碁がめちゃくちゃ強かったんですよ。16手目以降、いい手を連発していったんですが、とくに32手目にすばらしい手が出た。


白32手目

加藤 この手、プロ棋士がみんな絶賛していましたね。

大橋 もう30手目とのコンビネーションで示されると、おみそれしましたと言うしかない手です。ここから先もコントロールが絶妙で、黒(セドル)の勢力圏だったところがすごく弱くなってしまう。その見通しが立っていないと、先ほどの32手目は打てないですね。ここからはもうアルファ碁が優勢から勝勢になって、そのまま勝ちました。

加藤 このときは、打たれた瞬間にいい手だとわかったんですか?

大橋 もうこのときはアルファ碁に信用があったので、「なるほど、こんな手があるのか」と思いました。他のプロ棋士もそういう感想だったと思います。このあたりからだんだん、みんなが「アルファ碁先生」って呼び始めたんですよね(笑)。アルファ碁の強さを、誰もが認めるようになってきた。現在世界トップの柯潔(カケツ)という中国の天才棋士がいるんですけど、彼は第1局でイ・セドルが負けたときは、「アルファ碁はイ・セドルに勝てても私には勝てない」とか言ってたんですよ。

山本 あ、その人知ってる。すごい強気発言だったよね。第2局が終わったときも「イ・セドルは人類を代表して戦う資格がない」とか言ってた。

大橋 まあ、本当にめちゃくちゃ強い棋士なんだけどね。それが、第3局が終わったら「自分の勝利の可能性は5%に落ちた」とか言い始めた(笑)。

山本 急に弱気すぎるでしょ(笑)。でも、私も第3局が終わってがっかりしましたよ……。

大橋 全5局の勝負としては、負けが確定しちゃったからね……。


(次回、4/14更新予定)
構成:崎谷実穂

関連記事

関連キーワード

コメント

poker_japan 具体的な囲碁の話。「今までの囲碁の布石はデータじゃなくて、思想とかで考えるものだった」 6分前 replyretweetfavorite

iwamura_yusuke めっちゃ分かりやすい良い記事 12分前 replyretweetfavorite

kendi44yoyo 面白いなこれ。 12分前 replyretweetfavorite

sol_ursus https://t.co/eIimZO1D2e https://t.co/zRS8m7PtaU 19分前 replyretweetfavorite