AlphaGo(アルファ碁・アルファー碁)とは、囲碁AIである。Google傘下のDeepMind社が開発した。
互先(ハンディキャップなし)でプロ棋士に初めて勝利した囲碁プログラムである。
概要
深層学習(ディープラーニング)や強化学習の研究の成果として生み出された囲碁AIである。
あくまでも研究成果の一つであり、将来的には囲碁だけではなく、自動運転、金融予測、医療分野(類似症例のカルテ検索)、画像検索など、多目的な分野で技術が応用される事を目指している。
コンピュータ囲碁の歴史
1969年~2004年
コンピュータ囲碁は1969年に最初のプログラムがアメリカで書かれたが、これはコンピュータ将棋(本将棋)の開発が1974年に始まったのに比べても5年早い(コンピュータチェスの開発は1950年代に始まっている)。もともと囲碁は欧米でも数学者や物理学者、コンピュータ科学者の間ではある程度知られており、アルベルト・アインシュタイン、ジョン・ナッシュ、アラン・チューリングらが囲碁をたしなんでいたことが知られている。チューリングは第2次世界大戦でイギリス軍に協力しドイツ軍のエニグマ暗号の解読作業に当たっている中、席を並べていた数学者のI.J.グッドに囲碁を教えていた。このグッドが1965年に「囲碁という謎」と題した記事を雑誌に寄稿したのが、ヨーロッパにおいて囲碁が普及するきっかけになったとされる。
ところが開発が始まってから35年が経過しても、コンピュータ囲碁は依然として人間の「アマチュア初段」の棋力にも及ばなかった。IBMのディープブルーがガルリ・カスパロフを破ってから10年が近づこうとし、同じように難攻不落であり続けた将棋が、それでもアマチュア高段者程度、プロ棋士相手に角落ちで勝負になる程度の棋力をつけ、招待されたアマチュアの全国大会で上位進出を果たし「格段の成長を遂げた」とされていた頃においてである。
2005年から2012年まで ~モンテカルロ木探索~
この状況をブレイクスルーしたのが、フランス人のレミ・クーロンが2005年にリリースした囲碁プログラム「Crazy Stone」である。ランダムな打ち手による終局までの棋譜を大量に生成してその中で最も勝率の良い手を採用する「モンテカルロ法」と、それ以前からボードゲームで採用されていた「ゲーム木探索」の方法を組み合わせた「モンテカルロ木探索法(MCTS)」を採用したCrazy Stoneは翌2006年に早くもコンピュータ囲碁世界一になると、分厚い壁だったアマチュア初段レベルの壁をあっさりと突破し、プロ棋士を相手にして2007年には8子局、2008年には7子局で勝利できるようになった。
一時期クーロンはCrazy Stoneの開発をストップするが、MCTSの爆発的な普及によりその他のプログラムも大幅に棋力を向上させ、その中から日本の尾島陽児と加藤秀樹によるZenが台頭する。Zenは2011年に6子局で、2012年には4子局でプロ棋士に勝利した。この頃からクーロンも再度Crazy Stoneの開発に注力し始めコンピュータ囲碁界はCrazy StoneとZenの二強の争いを中心とした構図になる。また、2015年には韓国人のイム・ジェボムが開発したDolbaramが二強に並ぶ力をつけるに至った。こうした競争の中で、コンピュータ囲碁が成長し、プロ棋士に勝てるような力をつけるに至るのではないか、とも思われたのである。
2012年から2015年まで ~停滞期~
ところが、2012年に4子局でプロに勝って以降、3年を経過しても一向にコンピュータ囲碁は強くならなかった。じりじりと棋力は伸びてはいるのだが、3子でプロを相手にすると全く力が足りないのである。この時点でのコンピュータ囲碁の棋力はアマチュア6段程度と見込まれており、開発者たちもMCTS法の限界をこの辺りに感じ、さらに強くなるにはもう一段のブレイクスルーが必要で、それにはあと10年程度はかかるのではないか、というのが共通見解になっていた。
2016年
2015年、開発者コミュニティの中でGoogle傘下のDeepmind社が囲碁AIを開発しているという情報が流れ、その資金力と技術力から期待感が高まっていた。「アマチュア6段の壁を破り、3子で勝てるレベルになるのではないか」と。
そして、10月頃には関係者が「あと数ヶ月で驚きの発表をできる」とメーリングリストでほのめかす。
しかし、2016年1月に飛び込んできたニュースはそんなレベルをはるかに凌駕し、コンピュータ囲碁関係者に驚天動地の驚きを与えるものだった。
欧州チャンピオンで、中国のプロ資格を持つ樊麾(ファン・フイ)二段が、囲碁ソフトにハンデゼロの互先で5戦全敗したというのである。また、市販版のCrazyStoneやZen相手に495戦494勝という圧倒的な差をつけて勝利するに至ったというのである。このAIこそ、深層学習に強化学習を組み込んだAlphaGoであった。
対局日 | 黒番 | 白番 | 結果 | |
---|---|---|---|---|
第1局 | 2015年10月5日 | Fan Hui | AlphaGo | 二目半勝ち |
第2局 | 2015年10月6日 | AlphaGo | Fan Hui | 中押し勝ち |
第3局 | 2015年10月7日 | Fan Hui | AlphaGo | 中押し勝ち |
第4局 | 2015年10月8日 | AlphaGo | Fan Hui | 中押し勝ち |
第5局 | 2015年10月9日 | Fan Hui | AlphaGo | 中押し勝ち |
AlphaGo 5勝 - 0勝 Fan Hui |
この学習の成果は科学誌Natureに論文が掲載されたが、そんなもん読むわけない囲碁ファンは
「そもそも欧州のプロって強いの?」
「アマではないだろうけど2~3年前にできたばかりでしょ?」
「世界トップアマクラスではあるだろうが、日本の現役棋士・一流棋士と比べてどうなんだ?」
と疑問が積もるばかりであった。
棋譜も公開されはしたが、樊麾二段のミスばかりが指摘される始末。
とはいえ「確かに今までのAIと比べて自然で、段違いな強さは感じる」という評価は共通だった。
そんな中、Googleからとんでもない発表がされた。
AlphaGoを世界最強棋士と対局させます!
賞金は100万ドルです!
良くてあと10年はかかるとされていた囲碁AIは、たった半年で世界最高峰のプロと戦う事となる。
Google DeepMind Challenge Match
Lee Sedol vs AlphaGo
googleは過去10年の世界戦のデータを参考に、最も強い棋士としてイ・セドル九段を指名し、本人も了承。囲碁AIの挑戦は韓国で行われる事になった。(なお、日本の井山裕太九段・中国の柯潔九段も候補者であったという噂もある)
ルールはコミ7目半の中国ルール。持ち時間は各2時間で秒読みは1分、3回の考慮時間がある。
前述したが、セドルが勝ち越すと賞金は100万ドル。一勝につきボーナス賞金も出る。
AlphaGoが勝ち越した場合は慈善団体・囲碁団体などに寄付される。
また、どちらか一方が勝ち越したとしても5局全て消化される。
AlphaGoの代打ちは、開発者であり台湾アマ六段でもあるAja Huangが務める。
この頃、東洋囲碁にdeepmindという高段IDが出現しており、正体はAlphaGoなのではないかと注目されていた。DeepMind社CEOのデミス・ハサビス曰く「そのアカウントは開発者のうちの一人の個人的なアカウントで、開発者個人の対局である」とのことで、真相は謎のままである。
チャレンジの最中は「コウの禁止が契約に入っていた」などというデマが流れたが、ハサビス氏がツイッターで明確に否定した。
対局の模様はYouTubeで生中継された。
解説は5局通じてマイケル・レドモンド九段(日本棋院)。
中国囲棋TVでもトップ棋士を解説として招いて中継。
日本では幽玄の間で解説付きの棋譜中継、ニコ生では大盤を使わずに中継した。
対局日 | 黒番 | 白番 | 結果 | |
---|---|---|---|---|
第1局 | 2016年3月9日 | 李セドル | AlphaGo | 中押し勝ち |
第2局 | 2016年3月10日 | AlphaGo | 李セドル | 中押し勝ち |
第3局 | 2016年3月12日 | 李セドル | AlphaGo | 中押し勝ち |
第4局 | 2016年3月13日 | AlphaGo | 李セドル | 中押し勝ち |
第5局 | 2016年3月15日 | 李セドル | AlphaGo | 中押し勝ち |
AlphaGo 4勝 - 1勝 李セドル |
当初セドルの5タテを疑わなかった囲碁民だったが、第一局を落とすと風向きが一気に変わってしまう。
第二局は理にかなったAlphaGoの新布石やセドルの勝負手を的確に処理する中盤戦、高いヨセ能力などなど、「これ勝てないんじゃね?」という風潮が強まっていく。
第三局、セドルが「自分らしく打つ」と語り用いたのは高中国流。
だが序盤の戦いからAlphaGoが優勢を築くと、そのまま逆転できないまま終了。
「日を追うごとに強くなってる説」が出始める。もちろん、すべての対局で同じバージョン(v18)が使われており、そのようなことは無いのだが、AlphaGoの圧倒的な強さを前に飛躍した推測が後を絶たなかった。
第四局、セドルらしくないが、序中盤をじっと我慢し、中央で強烈な勝負手が成功。
中国の生中継では「神の一手」「読みではなく心で打った手」と最高の評価。
その後、AlphaGoが酷い手を連発しセドルが勝利。
そのまま連勝が期待されたが、残念ながら第五局は落とした。
セドル九段はこの挑戦の最中7キロ痩せてしまった。
囲碁熱の高い中韓では連日このニュースで盛り上がり、日本でもAIの進化の様子がトップニュースとして取り上げられた。
試合後、韓国棋院はAlphaGoに名誉九段の免状を授与した。プロとしての名誉九段が与えられたのは、これが初めてである。
プロ棋士 vs Master
李セドル九段とAlphaGoの激闘から半年後、ネット上の囲碁対局サイトには多数のAIが出現していた。
2016年末、世はまさに囲碁AI戦国時代であった。
- God Moves
- ネット碁サイトの1つであるKGSには「Zen19L」という囲碁AIが参加していた。これは第2回囲碁電王戦で趙治勲名誉名人と互角の戦いを繰り広げた「DeepZenGo」と同バージョンのZenである。11月29日、KGSに彗星のごとく現れた「God Moves」というアカウントはこのZen19Lに3連勝。平均5秒前後という短い着手時間から、God Movesの正体はコンピュータであると噂された。驚くべきはその布石である。1局目こそ普通の布石だったが、2局目は初手天元、3局目にいたってはなんと天元一間ジマリであった。いわゆる舐めプレイとも捉えられる布石でZenに圧勝したのである。Zenに三連勝したのち、God Movesはこつ然と姿を消した。現在もGod Movesの正体は判明していない。
- 絶芸・刑天
- 野狐囲碁には「絶芸」「刑天」というアカウントが登場した。これらは中国Tencent社が開発した囲碁AIである。特に刑天はトッププロ達を相手に八割以上の勝率を誇り、世界二冠王である柯潔九段と互角の勝負を繰り広げるなど、1年前のAlphaGoを彷彿とさせる強さであった。
たった3局で姿を消してしまったGod Moves。強いとはいえ死活などに弱点があり、負けることもある刑天。一方で、何十局もの対局を行い、いまだ無敗のアカウントが存在した。その名は「Master」である。
黒番 | 白番 |
棋士名 |
世界ランキング | 結果 | |||
---|---|---|---|---|---|---|---|
GoRatings | mamumamu | 韓国棋院 | |||||
01 | 満漢(P) | Magist(P) | ? | - | - | - | W+R |
02 | 燕帰来(P) | Magist(P) | ? | - | - | - | W+R |
03 | Magist(P) | 聖人(P) | ? | - | - | - | B+R |
04 | 臥虎(P) | Magist(P) | 謝爾豪 | 29 | 34 | 14 | W+R |
05 | Magist(P) | 無痕(P) | 於之瑩 | 82 | 132 | 105 | B+R |
06 | Magist(P) | 翱翔(P) | 李翔宇 | 189 | 153 | 132 | B+R |
07 | Magist(P) | 重逢時(P) | ? | - | - | - | B+R |
08 | 三斉王(P) | Magist(P) | 韓一洲 | 153 | 122 | 123 | W+R |
09 | Magist(P) | 願我能(P) | 孟泰齢 | 40 | 29 | 48 | B+4.5 |
10 | 願我能(P) | Magist(P) | 孟泰齢 | 40 | 29 | 48 | W+R |
11 | 風雨(P) | Master(P) | ? | - | - | - | W+R |
12 | atomy(P) | Master(P) | ? | - | - | - | W+R |
13 | 遠山君(P) | Master(P) | ? | - | - | - | W+R |
14 | Master(P) | 斬立決(P) | 厳在明 | 344 | 196 | - | B+R |
15 | XIUZHI(P) | Magister(P) | 朴廷桓 | 2 | 2 | 2 | W+R |
16 | 剣術(P) | Master(P) | 連笑 | 6 | 9 | 9 | W+R |
17 | 剣術(P) | Master(P) | 連笑 | 6 | 9 | 9 | W+R |
18 | Master(P) | 吻別(P) | 柯潔 | 1 | 1 | 1 | B+5.5 |
19 | 吻別(P) | Master(P) | 柯潔 | 1 | 1 | 1 | W+R |
20 | Master(P) | XIUZHI(P) | 朴廷桓 | 2 | 2 | 2 | B+5.5 |
21 | 竜胆(P) | Master(P) | 陳耀燁 | 12 | 7 | 4 | W+5.5 |
22 | 竜胆(P) | Master(P) | 陳耀燁 | 12 | 7 | 4 | W+4.5 |
23 | Master(P) | abc2080(P) | 金庭賢 | 67 | 64 | 52 | B+R |
24 | Master(P) | XIUZHI(P) | 朴廷桓 | 2 | 2 | 2 | B+R |
25 | XIUZHI(P) | Master(P) | 朴廷桓 | 2 | 2 | 2 | W+0.5 |
26 | Master(P) | dauning(P) | 李東勲 | 20 | 21 | 24 | B+R |
27 | Master(P) | ddcg | 範廷鈺 | 21 | 18 | 12 | B+R |
28 | Master(P) | 願我能(P) | 孟泰齢 | 40 | 29 | 48 | B+R |
29 | 拼搏(P) | Master(P) | 芈昱廷 | 3 | 6 | 8 | W+0.5 |
30 | 930115 | Master(P) | 唐韋星 | 25 | 15 | 17 | W+R |
12月29日にTygem(東洋囲碁)に現れた"Magist(P)"はトッププロ棋士相手に連戦連勝を重ねる。のちに名をMaster(P)に改めたこのアカウントは、31日までに30連勝を達成。世界中の囲碁ファンの間で大きな話題となった。
強さもさることながら、なにより注目されたのは、その斬新な打ち回しである。特に棋士達を震撼させたのが、第23局目の対abc2080(P)戦。黒19手目、Masterは序盤早々に星への三々入りを見せる。このような早い段階からの三々入りは従来の価値観を根底から覆す手であり、囲碁界に大きな衝撃を与えた。
黒番 | 白番 | 棋士名 | 世界ランキング | 結果 | |||
---|---|---|---|---|---|---|---|
GoRatings | mamumamu | 韓国棋院 | |||||
31 | Master | black2012 | 李欽誠 | 22 | 24 | 14 | B+R |
年が明け、MasterはTygemから野狐囲碁へと対局場を移した。これにより秒読みが20秒から30秒に増えることとなる。Masterは、持ち時間によらず1手10秒未満で着手することが多いので、プロ棋士側が多少有利となった。
Tygemと異なり、野狐囲碁ではハンドルネームの下に実名が書いてあるため、どのプロ棋士が打っているのか完全に判明した状態での対局となる。
黒番 | 白番 | 棋士名 | 世界ランキング | 結果 | |||
---|---|---|---|---|---|---|---|
GoRatings | mamumamu | 韓国棋院 | |||||
32 | 星宿老仙 | Master | 古力 | 30 | 23 | 28 | W+R |
33 | Master | 星宿老仙 | 古力 | 30 | 23 | 28 | B+R |
34 | Master | 我想静静了 | 党毅飛 | 55 | 54 | 39 | B+R |
35 | 若水雲寒 | Master | 江維傑 | 37 | 28 | 42 | W+1.5 |
36 | Master | 印城之覇 | 辜梓豪 | 15 | 26 | 23 | B+R |
37 | Master | pyh | 朴永訓 | 16 | 14 | 21 | B+R |
38 | Master | 天選 | 柁嘉熹 | 7 | 3 | 3 | B+R |
39 | Master | jpgo01 | 井山裕太 | 8 | 31 | 38 | B+R |
40 | 願我能 | Master | 孟泰齢 | 40 | 29 | 48 | W+2.5 |
41 | airforce9 | Master | 金志錫 | 11 | 13 | 22 | W+R |
Masterの正体については様々な憶測が飛び交った。
国籍が韓国になっていることから、強化して帰ってきたDolbaramであるという説。
世界タイトル経験者にのみ与えられる金冠マークが付いていることからAlphaGoであるという説。
コミ6目半で打っていることから、絶芸・刑天とは別バージョンのテンセントが作ったAIであるという説。
「ヒカルの碁」の藤原佐為が現実に現れたのではないかという説……などなど。
39局目、史上初の国内七冠を達成した井山裕太六冠に勝利。予告なしの対局にもかかわらず同時視聴者数は4000人を超えた。
この日「 1月3日までに、最初にMasterを倒した者に賞金10万元(約170万円)」という企画が発表された。これはあくまで野狐会社と古力九段の個人的な企画であり、Masterの作者は無関係であるとしている。
黒番 | 白番 | 棋士名 | 世界ランキング | 結果 | |||
---|---|---|---|---|---|---|---|
GoRatings | mamumamu | 韓国棋院 | |||||
42 | Master | 時間之虫 | 楊鼎新 | 19 | 30 | 50 | B+R |
43 | Master | piaojie | 姜東潤 | 24 | 22 | 25 | B+R |
44 | spinmove | Master | 安成浚 | 38 | 35 | 19 | W+2.5 |
45 | Master | 錬心 | 時越 | 9 | 5 | 11 | B+R |
46 | 剣過無声 | Master | 連笑 | 6 | 9 | 9 | W+R |
47 | Master | 段誉 | 檀嘯 | 13 | 10 | 16 | B+R |
48 | maker | Master | 朴廷桓 | 2 | 2 | 2 | W+1.5 |
49 | wonfun | Master | 元晟溱 | 32 | 32 | 29 | W+R |
50 | 潜伏 | Master | 柯潔 | 1 | 1 | 1 | W+R |
Masterの快進撃は止まらない。
48局目、韓国ランキング1位の朴廷桓九段に勝利。朴廷桓九段はTygemでの対局も含めると5回もMasterと打ったことになる。
50局目、中国ランキング1位にして世界1位の柯潔九段との対局が実現する。対局は、序盤に優位を築いたMasterがそのまま逆転を許さずに勝利した。この一局の後、柯潔九段は体調不良により人生初の入院を余儀なくされる。
黒番 | 白番 | 棋士名 | 世界ランキング | 結果 | |||
---|---|---|---|---|---|---|---|
GoRatings | mamumamu | 韓国棋院 | |||||
51 | 周俊勳 | Master | 周俊勳 | 185 | 243 | - | W+R |
52 | ykpcx | Master | 範廷鈺 | 21 | 18 | 12 | W+R |
53 | Master | 孔明 | 黄雲嵩 | 17 | 12 | 6 | B+R |
54 | Master | 聶衛平 | 聶衛平 | 320 | 239 | - | B+7.5 |
55 | 謎団 | Master | 陳耀燁[4] | 12 | 7 | 4 | W+1.5 |
56 | Master | shadowpow | 趙漢乗 | 52 | 42 | 37 | B+R |
57 | Master | nparadigm | 申真谞 | 10 | 11 | 5 | B+R |
58 | 小香饞猫 | Master | 常昊 | 95 | 66 | 78 | W+R |
59 | Master | Eason | 周睿羊 | 5 | 4 | 6 | B+R |
60 | 古力 | Master | 古力 | 30 | 23 | 28 | W+2.5 |
51局目の周俊勳九段は黒番マネ碁を仕掛けた。71手目でマネ碁を止めたが、その後劣勢となってしまう。
54局目には中国囲碁界のレジェンドである聶衛平九段との対局が実現した。聶衛平九段が高齢であることを考慮して、この一局に限り秒読み60秒で対局が行われた。この対局に対する注目度は高く、同時視聴者数は6000人を超えた。
59局目の周睿羊九段との対局が終わった後、Master開発者がチャット欄にて「我是AlphaGo的黄博士(私はAlphaGoのHuang博士です)」と正体を明かし、Masterの正体がAlphaGoであることが確定する。
60局目、本来は柯潔九段が再び対局する予定であったが緊急入院してしまったため、代わりに古力九段との対局となった。Masterは、この対局に勝利し、一週間で60連勝を達成した。つい1年前まで「プロに勝てるまであと10年はかかる」と言われていたコンピュータ囲碁は、たった1年ではるかな高みへと到達した。
その後ハサビス氏がtwitter上で公式声明を出した。Magister(P)およびMaster(P)の正体はAlphaGoであり、プロトタイプバージョンのテストであったことや、2017年中に長時間の公式対局も行う意向であることなどを公表した。柯潔九段や古力九段など一部の棋士や野狐囲碁の中の人はMasterの正体について知っていたようである。また、全60局ともAja氏が手入力していたため、第9局目の願我能(P)戦と第39局目の井山裕太九段戦で入力ミスがあったことが後に明らかになった。
The Future of Go Summit
ハサビス氏が予告した通り、2017年5月に"The Future of Go Summit"が中国烏鎮で開催された。AlphaGoが公式対局を行うのはこれが最後であり、「人類とAIの最終決戦」と称された。
なお、この対局には中国当局の報道規制が入り、中国国内メディアによるリアルタイムの報道が禁止されていた(事後報道や、国外向けの生中継は許可されている)。国外への公式生放送予定すら直前まで決まらなかったことから、裏で相当揉めていたことが伺える。
Ke Jie vs. AlphaGo
柯潔九段は中国浙江省出身の囲碁棋士である。中国ランキング1位であり、また非公式ながら、全ての主要世界ランキングで1位でもある。19歳にして主要な国際棋戦で4回優勝しており、2017年5月現在も2冠を維持している。囲碁にはチェスのように世界一を決めるタイトルマッチは無いが、誰もが認める世界最強の棋士である。
持ち時間は3時間で秒読み1分、5回の考慮時間がある。
賞金は150万ドル、出場料は30万ドル。
今回のAlphaGoは、李セドル九段戦のようなクラスタ構成ではなく、1台のマシン(4TPU)で実行される。
対局日 | 黒番 | 白番 | 結果 | |
---|---|---|---|---|
第1局 | 2017年5月23日 | 柯潔 | AlphaGo | 半目勝ち |
第2局 | 2017年5月25日 | AlphaGo | 柯潔 | 中押し勝ち |
第3局 | 2017年5月27日 | AlphaGo | 柯潔 | 中押し勝ち |
AlphaGo 3勝 - 0勝 柯潔 |
第1局。ニギリの結果、柯潔九段の黒番となった。黒7手目、Masterがプロ棋士に対して見せた序盤での三々入りを逆に柯潔九段が行った。その後はAlphaGoが序盤から全局的なリードを保ち大差となってしまう。終盤は後述するプレイアウトの性質によりAlphaGoが堅く打ち、半目勝負となった。
第2局。AlphaGoの黒番。本局では非常に拮抗した攻め合いが繰り広げられ、AlphaGoの形勢判断では100手まで均衡が保たれていた。互角のままコウ絡みの複雑な局面へと突入したが、黒119の妙手が決定打となり、せめぎ合いをAlphaGoが制した。これにより、AlphaGoの勝ち越しが決定する。
第3局。柯潔九段の希望でAlphaGoが黒番となった。黒13手目、Masterが新手を放つが柯潔九段は手抜きして柔軟に対応する。中盤以降は、柯潔九段の細かいミスにより弱い石が目立ってしまう。これ対しAlphaGoは厚く打ち、反撃の隙を与えなかった。白も果敢に食らいつくが形勢を覆すには至らず、黒の勝勢となってしまった。白126手目を打った後、憮然たる面持ちの柯潔九段は突然の離席をする。12分後、対局場へと戻った彼の瞳には涙が浮かんでいた。涙を拭い、再びAlphaGoと対峙する柯潔。圧倒的な強さを誇るAlphaGoを前にして、19歳の若き王者は何を思ったのだろうか。涙の理由は彼にしか分からないだろうし、そうであるべきだろう。
Pair Go
ペア碁とは、男女がペアを組み対局する囲碁の形式である。この対局では連笑八段とAlphaGo、古力九段とAlphaGoがそれぞれペアを組み対局を行う。本来は黒番女性→白番女性→黒番男性→白番男性という順番で着手するが、今回は黒番人間→白番人間→黒番AlphaGo→白番AlphaGoという順である。
持ち時間は1時間、秒読み1分。
ニギリの結果、古力九段ペアの黒番で始まった。中盤までは古力九段ペアが優勢であったが、連笑九段とAlphaGoがうまく息を合わせて反撃を開始し、逆転に成功。220手まで連笑八段ペアの白中押し勝ちとなった。
Team Go
チーム碁では、中国棋士5人がチームを組んでAlphaGoと対局を行う。メンバーは、芈昱廷九段(中国ランキング2位, 2013年夢百合杯優勝)、周睿羊九段(4位, 2013年百霊杯優勝)、陳耀燁九段(5位, 2016年百霊杯優勝)、時越九段(8位, 2013年LG杯優勝)、唐韋星九段(20位, 2016年応氏杯優勝)。全員、主要世界大会の優勝経歴者である。
持ち時間は2時間30分、秒読み1分、3回の考慮時間がある。
検討は継ぎ盤を使用して行われる。
ニギリの結果、棋士チームの黒番となった。白42手目、おなじみの三々入りを見せたAlphaGoは、その後上辺を荒らし優位を築く。以降は持ち時間の少なさも棋士チームを苦しめ、攻勢に出ることが出来ずに254手までAlphaGoの白中押し勝ちとなった。
閉幕式では、中国棋院からもAlphaGoにプロ名誉九段の免状が授与された。
試合後、DeepMindはAlphaGo(Master)同士の対局棋譜を50局公開した。この対局は1手2分の長時間対局であり、学習中の自己対局ではなく、公開用に新たに対局した棋譜であると思われる。棋譜は序盤中盤終盤を通して意味不明な手のオンパレードであり、世界中の囲碁ファンを再び驚愕させた。
他には、オンライン棋譜解析サービスとしてteaching toolを導入すること、今年中に論文が公開されることなどが予告された。
こうして世界最強棋士とAlphaGoの戦いは幕を下ろした。
2014年2月。David Silver, Aja Huang, そしてDemis Hassabisのたった3人で開始されたAlphaGoプロジェクトは、世界中の囲碁ファンや研究者に興奮と感動を与え、2017年5月ここに終了した。
AlphaGoの中身
チェスや将棋のAIがチャンピオンを上回ってなお、コンピュータ囲碁がアマチュアレベルでありつづけた原因として次のことが考えられる。
- 複雑性が高い
初期局面から到達可能な合法局面の数は、チェスが約10の47乗、将棋は約10の69乗であるとされているが、囲碁(19路盤)は約10の171乗と圧倒的に多い。しかし、チェス以下の状態空間である9路盤(約10の38乗)ですらコンピュータには難しかったことから、他に大きな原因ががあるのではないかと考えられていた。
- 評価関数の設計が難しい
こちらが主な原因であると言われている。
評価関数とは、局面が有利か不利かを評価し形勢判断する関数のことである。例えば、将棋では駒の価値や相対位置、リバーシ(オセロ)では盤面に置かれた石のパターンなどによって盤面評価を行っている。一方、囲碁では石の価値は平等であり、オセロの隅のような常に特徴的である場所は存在しないことから、この評価関数の設計が非常に難しい。
このように、従来手法では不正確な評価関数しか作ることが出来ず、とても実用に耐えうるものではなかった。一応、DeepLearningを使用すれば高精度の局面評価ができることは研究されていたが、こちらは逆に局面評価に要する時間が非常に遅く、評価関数としては使い物にならないと思われていた。
このような理由から囲碁では他のボードゲームで使われるαβ探索が有効ではなく、囲碁は二人零和(有限)確定完全情報ゲームの最後の砦として開発者の前に立ちふさがっていた。
AlphaGoと従来の囲碁プログラムとの最大の違いは、困難であった状態評価関数の作成に成功した点である。強化学習分野に深層学習を取り入れることによってこれを成し遂げた。
- 強化学習(Reinforcement Learning)
- 強化学習とは、心理学の行動主義からアイデアを得た機械学習の一種である。
わかりやすく言うと、一定量の素材(例えば、囲碁という「環境」、着手という「行動」、勝利という「報酬」)をポンと入れると、報酬(=勝利)が最大限得られるようにAIが試行錯誤を始めて、どんどん環境に適応していくものである。これに加え、どんな素材を投入し、どの程度学習させ、(過学習をさせるとよくない)どういった方向に囲碁を捕らえるか、などなどの繊細な部分を調節する必要がある。まさに職人技ともいうべき細やかな設定は、DeepMind社でなければできない。 - 深層学習(DeepLearning)
- 深層学習とは、多層のニューラルネットワーク(人の神経を模したネットワーク構造)を利用した機械学習の一種である。
これは今まで研究されていた分野ではあったが、主にコンピュータのスペック不足などにより近年までそれほどの発展はしていなかった。この技術、特にDCNN(Deep Convolutional Neural Network, 深層畳み込みニューラルネットワーク)は画像認識の分野で威力を発揮し、現在では人間以上の精度で物体認識を行えるようになった。AlphaGoのポリシーネットワークは盤面を19×19ピクセルの画像のように認識する。 - モンテカルロ木探索(Monte Carlo tree search, MCTS)
- モンテカルロ木探索とは、モンテカルロ法と木探索を組み合わせた探索アルゴリズムである。
MCTSにおいて、乱数を用いて終局までプレイすることを「プレイアウト(ロールアウト)」という。コンピュータ囲碁のプレイアウトでは、目数最大化ではなく勝率最大化の手を打つ。AlphaGoが大劣勢に陥ると奇想天外な手を打ったり(李世ドル戦第4局)、優勢のまま終盤を迎えると緩むように見えたり(柯潔戦第1局)するのはこれが原因である。
2006年以降のコンピュータ囲碁は、このMCTSを改良することによって棋力上げた。しかし、依然として一直線の手(死活・攻め合い・コウなど)には弱く、2012年あたりに限界が訪れた。
バージョン
AlphaGoには多くのバージョンが存在するが、最新の論文では4つのバージョンに区別している。"AlphaGo Fan(v13)", "AlphaGo Lee(v18)", "AlphaGo Master", そして"AlphaGo Zero"の4つである。
AlphaGo Fan(v13)
2015年10月に、欧州囲碁チャンピオンのFan Hui二段と対局したバージョンである。ちなみにFan Hui二段はAlphaGoに敗北後、開発チームにメンバーとして加わった。
アルゴリズムとしては、局面評価のための「バリューネットワーク」と、次の手を選択するための「ポリシーネットワーク」に「モンテカルロ木探索」を組み合わせたものを導入している。それぞれ単独ではアマチュアレベルの棋力だが、互いを組み合わせることにより弱点を補完し、GoRatings基準で3140Elo程度の棋力を実現した(CPU1,202スレッドGPU176基)。
AlphaGoのニューラルネットワークは以下の3ステップで作成される。
- 教師あり学習で"Fast rollout policy", "Tree policy", "SL policy network"を作る
- 強化学習でSL policy netwrokを強化して、"RL policy network"を作る
- RL policy networkでプレイアウトした結果を近似する"Value network"を作る
- Fast rollout policy
- モンテカルロ木探索のプレイアウトに使用する、線形softmax関数。
局面の状態を入力すると、次の手の確率分布を返す。
特徴量にはアタリやナカデなどの囲碁の知識も含まれている。
Tygem(東洋囲碁)の800万局面から教師あり学習を行った。
計算時間は2μ秒と高速だが、人間の棋譜との指し手一致率は24.2%と低く、低精度である。 - Tree policy
- 木の展開時にSL policy networkの計算が終わるまでの暫定値として使用する、線形softmax関数。
Fast rollout policyと似たようなものだが、より特徴量を増やしている。 - SL policy network
- モンテカルロ木探索のバイアス項に使用する、13層のDCNN。
局面の状態を入力すると、次の手の確率分布を返す。
特徴抽出は事前に行われており、生の盤面情報や画像をそのまま入力しているわけではない。
特徴量にはダメやシチョウなどの囲碁の知識も含まれている。
KGS6~9段の16万局から2840万局面を訓練データとして教師あり学習を行った。
計算時間は4.8msと低速だが、指し手一致率は55.4%と非常に高く、これは従来手法の最高記録(44.4%)を大幅に上回っている。 - Value network
- 局面評価に使用する15層のDCNN。いわゆる評価関数である。
局面の状態を入力すると、その局面の勝率を返す。
まず、強化学習を用いてSL policy networkを強化し、これに80%勝つことができるRL policy networkを作成する。次に、3000万以上の様々な局面からRL policy networkでプレイアウトを繰り返し、その開始局面と勝率を教師としてvalue networkを学習する。これによりRL policy networkによるプレイアウトと比べ15000倍高速に局面評価を行うことが出来るようになった。
Value networkを作るにあたって、開始局面にKGSの棋譜を使うと過学習をしてしまった。これを回避するために、新たにSL policy network同士で自己対局を行い、1対局につき1つの開始局面を生成している。具体的には、SL policy network同士でランダムな手数まで自己対局を繰り返した後、1手だけランダムな手を打ち、そこからRL policy networkで終局まで自己対局を行っている。
つまり、この3000万局面のデータセットを作るために3000万局の自己対戦を行っているのである。
……わけがわからないよ
ちなみに、よく勘違いされるが強化学習部のアルゴリズムは方策勾配法のREINFORCEであり、DQNでおなじみのDeep Q-Networkは用いられていない。
これらの関数を使ってモンテカルロ木探索を行い、訪問回数が最も多かった指し手を選択する。プレイアウトにはFast rollout policy、バイアス(どの枝を選択するか)にはSL policy networkを使用する。ただし、リーフノードの評価にはValue networkによる評価と、Fast rollout policyによるプレイアウトを併用する(APV-MCTS)。
次の手を選択するpolicyにはRLよりもSLを用いたほうが良いらしい。そのため、RL policy networkはValue networkを作成するためのみに使い、対局時には一切使用しない。
李セドル戦後、一部報道にあった「囲碁のルールすら組み込まれていない」「グルーピングをしている」という説明は誤りである。
AlphaGo Lee(v18)
2016年3月に、李セドル九段と対局したバージョンである。
3,739Elo程度の棋力を実現した(TPU48基)。
AlphaGo Fan(v13)に3~4子[5]置かせることが出来る。
自己対局では、中国ルール(コミ7.5目)で白番勝率約52%であるらしい。
v13と基本設計は同じである。大きな違いは以下の3つ。
- 自己対局にAlphaGoそのものを使用
Value Networkを作成するにあたってRL policy netwrok同士で自己対局を行っていたが、v18ではAlphaGo同士で探索しながら自己対局を行うようになった。これにより自己対局に必要な時間が大幅に増えたが、より高精度の局面評価を行えるようになった。
AlphaGo Master
2017年1月に60連勝を達成したバージョンである。2017年5月に柯潔九段と対局したのもこれにあたる。
4,858Elo程度の棋力を実現した(TPU4基)。
AlphaGo Lee(v18)に3子置かせることが出来る。2子では全勝した。
このバージョンから設計が大きく変更された。
- NNのアーキテクチャを変更
Policy networkとValue networkを1つのアーキテクチャに統合し、出力のみ別々に行うようにした。共通構造にすることによって、より強く効率的になアルゴリズムとなった。
また、ResNet(Residual Network, 残差ネット)を採用することにより、格段に深く精度の高いNNで学習を行えるようになった。
強化学習には、次のAlphaGo Zeroと同様のアルゴリズムを使用している。しかしMasterでは、依然として人間の棋譜から教師あり学習を行い、手作りの特徴量を使ったFast rollout policyでプレイアウトを行っている。
AlphaGo Zero
2017年10月に発表された、AlphaGoの最終バージョンである(※論文投稿は4月)。
5,185Elo程度の棋力を実現した(TPU4基)。
自己対局では、中国ルール(コミ7.5目)で白番勝率約55%であるらしい。
Masterとの大きな違いは以下の3つ。
- プレイアウトを廃止
Fast rollout policyとTree policyを廃止し、リーフノードでのプレイアウトを行わなくなった。ResNetを使い、ニューラルネットワークの精度を上げることによりこれを実現した。対局時には、プレイアウトを行わないモンテカルロ木探索という、タコが入ってないタコ焼きみたいなことを行う。
- ランダムプレイからスタート
Master以前はKGSの棋譜から教師あり学習を行い、これを初期値としていた。Zeroでは人間の棋譜を一切使用せず、ランダムに初期化されたパラメータから自己対局を開始するようになった。
AlphaGo Zeroの自己対局は以下の3要素から成り立つ。
- Optimisation(最適化)
直近50万対局から2048局面をサンプリングし、確率的勾配降下法(SGD)を用いて重みを更新する。具体的には、NNの確率分布(policy)とMCTSで求めた確率の類似性を最大化し、NNの勝率(value)と実際の勝率との誤差を最小化するようにパラメータを更新していく。
1000ステップごとにチェックポイントを設け、evaluatorで評価し次の自己対局で使用するか決定する。 - Evaluator(評価器)
400回の対局を行い強さを評価する。
勝率が55%(有意水準5%)より高い場合、これを新たに自己対局用のプレイヤーとする。 - Self-Play(自己対局)
evaluatorくんの御眼鏡に適った最強のAlphaGo同士で、MCTSを用いて25,000局の自己対局を行う。
この3プロセスを並列して学習を進めていく。
ちなみに、合法手などの囲碁そのものに関する情報は与えているが、その他の知識(自分の眼を潰す手など)は一切与えていない。
論文では、まずニューラルネットワークを20blocks(40層)にして学習を行った。
20blocksでは、36時間でv18と同等の強さになった。最終的に3日間で490万対局を行い、対局時のスペックが違う(v18は48TPUs, Zeroは4TPUs)にもかかわらずv18に100-0で勝ち越す強さになった。
次に40blocks(80層)に増やして学習を行った。
こちらは3日間でv18と同等の強さとなり、21日間でMasterと同等の強さになった。最終的に40日間で2900万局の対局を行い、Masterに89-11で勝ち越す強さになった。
学習の過程において、AlphaGoは人間の間で使われる様々な定石を発見した。しかし、最終的には独自の定石を好んで使ったらしい。
さらに、AlphaGoは学習の早い段階において囲碁の概念(布石、手筋、死活、コウ、ヨセ、攻め合い、先手、形、勢力と実利など)を次々と獲得していった。意外にも、人間の場合は最初に習うであろうシチョウは、かなり学習を進めるまで理解できなかった。
ハードウェア
バージョン | スペック | Eloレーティング[6] |
---|---|---|
AlphaGo Fan | 176GPUs | 3,144 |
AlphaGo Lee | 48TPUs | 3,739 |
AlphaGo Master | 4TPUs | 4,858 |
AlphaGo Zero | 4TPUs | 5,185 |
自己対局や李セドル戦においては一般的なGPUではなく、深層学習専用プロセッサーであるTPU(Tensor Processing Unit)が使用された。浮動小数点演算の精度を抑えることで演算に要するトランジスタを減らしており、消費電力あたりの性能が極めて高くなっている。第1世代のTPUでは対局(推論)専用であったが、2017年に発表された第2世代では学習時にも使えるようになった。
論文では、分散版(1202スレッド,GPU176基)と単体版(48スレッド,GPU8基)のレーティング差は250。
また、AlphaGo Leeにおいては分散版の単体版に対する勝率は70~75%ほどであるとしており、単体版でも十分に強いことが窺える。対局時のスペックばかり注目されるのに嫌気が差したのか、Master以降は単体版で動かしている。
上記のスペックははあくまで実行時(対局時)のものであり、学習時の重み更新や棋譜生成には依然として大量のGPU/TPUを必要とする。AlphaGo Zeroの自己対局には1手あたり0.4秒かかるので、平均200手で終局と仮定すると
29,000,000局 × 0.4秒 × 200手 ≒ 74年ほどかかる計算になる。
DeepMindは魔法(物理)を使って、これを40日で終わらせている。もちろん、この1手0.4秒というのは前述のTPUを使った場合である。2017年時点のコンシューマー向けGPU(GTX1080Ti)を使った場合は9.3秒ほどかかるらしいので、1基だと
29,000,000局 × 9.3秒 × 200手 ≒ 1710年かかる。ひぇぇ……
運用コストについて
AlphaGoの開発費については、様々な噂が存在する。
- 1年で30億円説
李セドル戦後にAlphaGoの運用コストは30億円(もしくは2年で60億円)であるという記事が話題をよんだが、根拠のないデマである。これはvCPU数とCPU数を混同していたり、異常な数のSSDを含めて計算するなど極めてずさんな見積もりによるものであった。
- 総額970億円説
"The Future of Go Summit"において、AlphaGoが今までに投じた総開発費用は60億人民元(約970億円)であるという情報が流れた。ただし、これは公式発表ではなく、あくまで一記者が非公式に聞いたところによるものである。
いずれにしろ、これらの話は推測であったり伝聞だったりするので、眉に唾をつけておくべきである。
名前について
AlphaGoの「Go」は日本語の「碁」に由来する、欧米圏で「囲碁」を示す語である。しかし、同じ漢字圏の中国語では囲碁は「囲棋」という単語であり、そもそも「碁」という字それ自体が中国ではほぼ使われないものとなっている(ちなみに韓国語では「パドゥク」という)。このため、AlphaGoが登場した際、中国では「Go」とはなんのことだ?と話題になり、同じ音である「狗」のことと解して、AlphaGoを犬にたとえる流れができ、そのようなイラストも出回った。
関連動画
Google DeepMind Challenge Match Lee Sedol vs AlphaGo
Match1 YouTube公式
https://www.youtube.com/watch?v=vFr3K2DORc8
Match2 YouTube公式
https://www.youtube.com/watch?v=l-GsfyVCBu0
Match3 YouTube公式
https://www.youtube.com/watch?v=qUAmTYHEyM8
Match4 YouTube公式
https://www.youtube.com/watch?v=yCALyQRN3hw
Match5 YouTube公式
https://www.youtube.com/watch?v=mzpW10DPHeQ
The Future of Go Summit
Match1 YouTube公式
https://www.youtube.com/watch?v=Z-HL5nppBnM
Match2 YouTube公式
https://www.youtube.com/watch?v=1U1p4Mwis60
Pair Go & Team Go YouTube公式
https://www.youtube.com/watch?v=V-_Cu6Hwp5U
Match3 YouTube公式
https://www.youtube.com/watch?v=ru0E7N0-kFE
関連商品
関連項目
関連リンク
- AlphaGo | DeepMind (公式サイト)
-
AlphaGo | Google DeepMind(以前の公式サイト・リンク切れ)
- AlphaGo 学習ツール (布石の勉強用ツール)
- Move Evaluation in Go Using Deep Convolutional Neural Networks(2015年の論文)
- Mastering the game of Go with deep neural networks and tree search(2016年の論文, AlphaGo Fan)
- Mastering the game of Go without human knowledge(2017年の論文, AlphaGo Zero)
脚注
- *持ち時間は各1時間、秒読み30秒、3回の考慮時間あり。
- *Tygem:コミ6目半、秒読み20秒、3回の考慮時間あり。ただし、27、29、30戦目のみ秒読み30秒。
- *野狐囲碁:コミ6目半、持ち時間各1分、秒読み30秒、3回の考慮時間あり。ただし、31戦目は秒読み20秒、54戦目は秒読み60秒。
- *55局目、陳燿燁九段の対局は孟泰齢六段との相談碁。
- *2つの理由により、人間同士の置碁よりも上手が勝ちやすい。
・Value Networkの設定は常にコミ7.5目であり、置碁用に特別に作られたものではない
・後述するように、自己対局では上手が大幅に勝ち越す
よって前バージョンに3子で勝てるからと言って、人間同士の3子ほど差があるわけではない。 - *これらのEloレーティングは自己対戦から算出されたので、実際の強さよりも過剰に高くなっている。例えば、Aさんと、1日だけ筋トレしたA'さんが腕相撲をした場合、一方が大幅に勝ち越すことが予想されるが、実際の強さは殆ど変わらない。同じ理屈で、特に自己対戦のみに基づくMasterとZeroのレーティングは不正確な数値となっている。
- 5
- 0pt