SlideShare uma empresa Scribd logo
1 de 12
Baixar para ler offline
AlphaGo の論文を読んで
株式会社クエステトラ
畠中晃弘
AlphaGo vs イ・セドル
 AlphaGoは Google DeepMind によって開発されたコンピュータ囲碁プログラム
 https://deepmind.com/alpha-go
 イ・セドル(李世ドル)
 世界最強の棋士の1人
 世界で1桁順位ぐらい
 日本の井山(囲碁七冠)より、ちょっと上ぐらい
 2016年3月に対局しAlpha GO の 4 勝 1敗 だった
 で、Alpha GO はどんなプログラムだったのか
そもそも 囲碁 はどうして難しいか
 コンピュータがすべての手を最後まで先読み(探索)することができたら、人間は勝てない
ただ、現在の技術では、全探索できない
 探索すべき、局面の推定数(ちなみに1テラは、10^12)
 オセロ 10^28
 チェス 10^50
 将棋 10^71
 囲碁(9路盤) 10^38
 囲碁(19路盤) 10^171
 全探索せずに先読みするためには、探索を途中で打ち切る必要
 打ち切るためには、「その局面が良いのか、悪いのか」「どの程度良いのか、悪いのか」
評価(評価関数)が必要
 囲碁は、オセロ・チェス・将棋と異なり、評価関数がうまくできない
 感覚的な部分が多く、論理的に説明できないことが多いらしい
 囲碁は2重に難しい
 2015年時点で、アマチュア有段レベルでしかなかった
ニューラルネットワーク
 Alpha GO は、ニューラルネットワークを用いている
 人間の脳は、ニューロンが多数、多層的に
つながりあってできている
 ニューロンを数学的にモデル化
脳と同じように多数つなげたものが
「ニューラルネットワーク」
 つまりニューラルネットワークとは、
「人間の脳」をコンピュータ上に再現したもの
 まさしく AI (人工知能)
 人間のマネができるように、テストデータで教育し、
賢くなったら実利用する
 もとが良くても、教育を間違えると、ロクなものにならない。人間と同じ。
AlphaGO のニューラルネットワーク
 AlphaGO では、3つのニューラルネットワークを育てている
 最初は、過去のプロ同士の対局データを元に学習
 各局面でどういう手を打つか、確率を計算できる
ニューラルネットワークを育成
 いわば、トッププロを「まねる」段階
 このネットワークを、以降、”SL Policy Network” と呼ぶ
 3000万の局面データで学習し、テストでは次の手を 57% 予測できるように
なった
強化学習 Reinforcement Learning
 強化学習を行い、2つ目のニューラルネットワークを育成
 強化学習をニューラルネットワークに適応したことが、Google DeepMind の大きな成果
 強化学習とは、
「エージェントが、現在の状態を観測し、取るべき行動を決定する問題」
を扱う機械学習
 「飼い犬のしつけ」「動物ショーのための訓練」は、解りやすい例
 ニューラルネットワークは、基本、教師あり学習。何が違うか。
 「目標」が与えられるだけで、知識(「正解」のテストデータ)が与えられない
 スポーツで言えば、コーチにレッスンを受けてまねるのが教師あり学習で、
我流でひたすら頑張るのが強化学習
 テストデータが要らないメリットがあるが、
学習に時間がかかるし、うまくいかない可能性も高い
ただ飛躍する、人間を大きく超える可能性も秘めている
 Google DeepMind の PingPong
https://deepmind.com/blog/deep-reinforcement-learning/
ニューラルネットワークの限界
 “SL Policy Network” は「プロをまねる」ニューラルネットワーク
 “SL Policy Network” 同士を対局させ、
ただ「勝つ」ことを目的に強化学習を実施
 最初は「マネ」。次は「我流」。ニューラルネットワークはとても人間くさい。
 このネットワークを、以降、”RL Policy Network” と呼ぶ
 アマチュア2段相当のプログラムに対して、85%勝てるようにはなった
 他の囲碁プログラムと同レベルになったが、トッププロに勝てるとは言えない
 想像だが、Google DeepMind はニューラルネットワークだけで勝つことが、
本当の望みだと思う
 なぜニューラルネットワークで、トッププロに勝てないのか(勝手な考察)
 モデルによって決まる限界があるのだろう
 アヒルをどれだけ頑張って育てても、ワシにはならない
 モデルや教育アルゴリズムの更なる進化が必要なのだと思う
プレイアウト (rollout)
 AlphaGO は、これまでの囲碁アルゴリズム研究に、ニューラルネットワークを応用したもの
 「モンテカルロ木探索」は、それまでの囲碁プログラムを劇的に進化させた探索アルゴリズム
 2008年に登場
 トッププロではないが、プロに初めて1勝することができた(トータルでは敗北)
 局面評価に、「プレイアウト」を導入
 囲碁は、オセロ・チェス・将棋と異なり、評価関数が難しい
 オープンソースの Gnu GO の評価関数は、職人芸と呼べるものであったらしい
それでもやっと、アマチュア初段に至っているかどうか
 プレイアウトとは、(禁じ手を除いて)お互いランダムに終局まで打つこと
 囲碁やオセロは、チェス・将棋と異なり、ランダムに打っても終局するという特徴がある
 次の候補局面のそれぞれから、プレイアウトを実施
 プレイアウトを複数行い、勝率をその局面の評価値とする
 プレイアウト回数が多いほど、正確な評価値となる
 終局が近いほど、正確な評価値となる
 評価値(勝率)が最も高くなる手を選ぶ
モンテカルロ木探索 (Monte Calro Tree Search)
 単純にプレイアウトを導入しただけでは、1つの先読みでしかない
 相手もランダムに打つことを想定しているため、相手にとって
「明らかに良い手が1つで、他は全部悪くなる」局面がある場合、
その方向に進んでしまう
改良したものが、「モンテカルロ木探索」
 有望な(勝率が高い)候補局面ほど、プレイアウト回数を増やす
 何度かプレイアウトを行えば、勝率に差が出てくる
 勝率が高いものほど、よりプレイアウトが行われるように
 ある局面でのプレイアウト回数が一定値を超えた場合、
その局面だけ更に先読みするように
 相手の番手の場合は、勝率が低い候補ほど、プレイアウト回数を増やす
トータルで見ると、有望な方向に先読みが進んでいく
この「モンテカルロ木探索」をベースに、2008 年以降、研究が進んでいた
 優先してプレイアウトを行う局面の選択に、囲碁の知識を入れる
 プレイアウトで、完全にランダムに打つのではなく、人間がパターンを用意する
 ニューラルネットワークに打たせることも考えられるが、AlphaGO はそうではない
AlphaGO の3つのニューラルネットワーク
 AlphaGO はモンテカルロ木探索に、3つのニューラルネットワークを応用したアルゴリズム
 最後の3つ目として、局面を評価するだけの、ニューラルネットワークを作成
 “SL Policy Network” “RL Policy Network” は、次の候補手を予測(推薦)するもの
 「囲碁は、オセロ・チェス・将棋と異なり、評価関数が難しい」という問題に、
ニューラルネットワークで取り組んだ
 学習データは2種類
 過去のプロ同士の対局データ (SL Policy Network と同じ)
 “RL Policy Network” 同士を対局させ、それによってできた対局データ
 局面の履歴と最終結果(勝利/敗北)から、
各局面からの勝率を予測するニューラルネットワークを作成
 全部で3つのニューラルネットワークができた
1. SL Policy Network (プロの手を予測するニューラルネットワーク)
2. RL Policy Network (SL Policy Network を強化学習で強くしたもの)
3. Value Network (局面からの勝率を予測するニューラルネットワーク)
AlphaGO のモンテカルロ木探索
 全部で3つのニューラルネットワーク
1. SL Policy Network (プロの手を予測するニューラルネットワーク)
2. RL Policy Network (SL Policy Network を強化学習で強くしたもの)
3. Value Network (局面からの勝率を予測するニューラルネットワーク)
 最初は “SL Policy Network” で、プロが打ちそうな手を優先して、
各局面の評価を実施
 徐々に、勝利確率の高い局面を優先するように切り替わる
 “RL Policy Network” でない理由は、
“SL Policy Network” を採用した方が強かったから
 各局面の評価において、 “Value Network” の結果とプレイアウトの結果の平均を採用
 “Value Network” だけでない理由は、2つの平均の方が強かったから
 プレイアウトは「実際に試している」という点で、“Value Network” より優れているところが
ある?
 1マシン版 (CPU 48 GPU 8) に加えて、分散版 (CPU 1202 GPU 176) を作成
 1マシン版より分散版の方が、探索範囲が広く強い
まとめと参考文献
 AlphaGO は、これまでの囲碁アルゴリズムの研究に、
ニューラルネットワークを応用したもの
 大枠は、モンテカルロ木探索
 3つのニューラルネットワークを作成し、1と 3 の2つを利用
1. プロの次の手を予測するニューラルネットワーク
2. 1 のニューラルネットワークを強化学習したもの
3. 局面の勝利確率を計算するニューラルネットワーク
 確かに「コンピュータが人間に勝利した」と言えるが、
「AI が 人間に勝利した」とまでは言えない(と思う)
 Mastering the game of Go with deep neural networks and tree search
Nature 529, 484-489, 28 Jan 2016
 モンテカルロ木探索-コンピュータ囲碁に革命を起こした新手法
情報処理、vol.49, No.6, 2008
 ディープラーニングを用いたコンピュータ囲碁 ~ Alpha Go の技術と展望 ~
情報処理, vol.57, No.4, 2016

Mais conteúdo relacionado

Mais procurados

Mais procurados (20)

研究効率化Tips Ver.2
研究効率化Tips Ver.2研究効率化Tips Ver.2
研究効率化Tips Ver.2
 
[DL輪読会]Attention Is All You Need
[DL輪読会]Attention Is All You Need[DL輪読会]Attention Is All You Need
[DL輪読会]Attention Is All You Need
 
ニューラルネットと深層学習の歴史
ニューラルネットと深層学習の歴史ニューラルネットと深層学習の歴史
ニューラルネットと深層学習の歴史
 
You Only Look One-level Featureの解説と見せかけた物体検出のよもやま話
You Only Look One-level Featureの解説と見せかけた物体検出のよもやま話You Only Look One-level Featureの解説と見せかけた物体検出のよもやま話
You Only Look One-level Featureの解説と見せかけた物体検出のよもやま話
 
[DL輪読会]Pay Attention to MLPs (gMLP)
[DL輪読会]Pay Attention to MLPs	(gMLP)[DL輪読会]Pay Attention to MLPs	(gMLP)
[DL輪読会]Pay Attention to MLPs (gMLP)
 
平面グラフと交通ネットワークのアルゴリズム
平面グラフと交通ネットワークのアルゴリズム平面グラフと交通ネットワークのアルゴリズム
平面グラフと交通ネットワークのアルゴリズム
 
TensorFlowで逆強化学習
TensorFlowで逆強化学習TensorFlowで逆強化学習
TensorFlowで逆強化学習
 
強化学習 DQNからPPOまで
強化学習 DQNからPPOまで強化学習 DQNからPPOまで
強化学習 DQNからPPOまで
 
多人数不完全情報ゲームにおけるAI ~ポーカーと麻雀を例として~
多人数不完全情報ゲームにおけるAI ~ポーカーと麻雀を例として~多人数不完全情報ゲームにおけるAI ~ポーカーと麻雀を例として~
多人数不完全情報ゲームにおけるAI ~ポーカーと麻雀を例として~
 
[DL輪読会]V-MPO: On-Policy Maximum a Posteriori Policy Optimization for Discrete...
[DL輪読会]V-MPO: On-Policy Maximum a Posteriori Policy Optimization for Discrete...[DL輪読会]V-MPO: On-Policy Maximum a Posteriori Policy Optimization for Discrete...
[DL輪読会]V-MPO: On-Policy Maximum a Posteriori Policy Optimization for Discrete...
 
AHC-Lab M1勉強会 論文の読み方・書き方
AHC-Lab M1勉強会 論文の読み方・書き方AHC-Lab M1勉強会 論文の読み方・書き方
AHC-Lab M1勉強会 論文の読み方・書き方
 
強化学習における好奇心
強化学習における好奇心強化学習における好奇心
強化学習における好奇心
 
introduction to double deep Q-learning
introduction to double deep Q-learningintroduction to double deep Q-learning
introduction to double deep Q-learning
 
Transformerを多層にする際の勾配消失問題と解決法について
Transformerを多層にする際の勾配消失問題と解決法についてTransformerを多層にする際の勾配消失問題と解決法について
Transformerを多層にする際の勾配消失問題と解決法について
 
深層強化学習と実装例
深層強化学習と実装例深層強化学習と実装例
深層強化学習と実装例
 
強化学習初心者が強化学習でニューラルネットワークの設計を自動化してみたい
強化学習初心者が強化学習でニューラルネットワークの設計を自動化してみたい強化学習初心者が強化学習でニューラルネットワークの設計を自動化してみたい
強化学習初心者が強化学習でニューラルネットワークの設計を自動化してみたい
 
20171128分散深層学習とChainerMNについて
20171128分散深層学習とChainerMNについて20171128分散深層学習とChainerMNについて
20171128分散深層学習とChainerMNについて
 
みんなが知らない pytorch-pfn-extras
みんなが知らない pytorch-pfn-extrasみんなが知らない pytorch-pfn-extras
みんなが知らない pytorch-pfn-extras
 
簡単な算数でできる文章校正
簡単な算数でできる文章校正簡単な算数でできる文章校正
簡単な算数でできる文章校正
 
SSII2021 [TS2] 深層強化学習 〜 強化学習の基礎から応用まで 〜
SSII2021 [TS2] 深層強化学習 〜 強化学習の基礎から応用まで 〜SSII2021 [TS2] 深層強化学習 〜 強化学習の基礎から応用まで 〜
SSII2021 [TS2] 深層強化学習 〜 強化学習の基礎から応用まで 〜
 

Mais de Akihiro HATANAKA

Mais de Akihiro HATANAKA (20)

Deep Neural Network の教師なし学習 (MIJS 分科会資料)
Deep Neural Network の教師なし学習 (MIJS 分科会資料)Deep Neural Network の教師なし学習 (MIJS 分科会資料)
Deep Neural Network の教師なし学習 (MIJS 分科会資料)
 
強化学習とは (MIJS 分科会資料 2016/10/11)
強化学習とは (MIJS 分科会資料 2016/10/11)強化学習とは (MIJS 分科会資料 2016/10/11)
強化学習とは (MIJS 分科会資料 2016/10/11)
 
Questetra ハンズオンセミナー ビギナー向け業務プロセス設計 2016/09/14
Questetra ハンズオンセミナー ビギナー向け業務プロセス設計 2016/09/14Questetra ハンズオンセミナー ビギナー向け業務プロセス設計 2016/09/14
Questetra ハンズオンセミナー ビギナー向け業務プロセス設計 2016/09/14
 
Questetra ハンズオンセミナー ビギナー向け業務プロセス設計 2016/06/15
Questetra ハンズオンセミナー ビギナー向け業務プロセス設計 2016/06/15Questetra ハンズオンセミナー ビギナー向け業務プロセス設計 2016/06/15
Questetra ハンズオンセミナー ビギナー向け業務プロセス設計 2016/06/15
 
Questetra ハンズオンセミナー ビギナー向け業務プロセス設計 2016/05/11
Questetra ハンズオンセミナー ビギナー向け業務プロセス設計 2016/05/11Questetra ハンズオンセミナー ビギナー向け業務プロセス設計 2016/05/11
Questetra ハンズオンセミナー ビギナー向け業務プロセス設計 2016/05/11
 
Questetra ハンズオンセミナー ビギナー向け業務プロセス設計 2016/03/09
Questetra ハンズオンセミナー ビギナー向け業務プロセス設計 2016/03/09Questetra ハンズオンセミナー ビギナー向け業務プロセス設計 2016/03/09
Questetra ハンズオンセミナー ビギナー向け業務プロセス設計 2016/03/09
 
Questetra ハンズオンセミナー ビギナー向け業務プロセス設計 2016/02/10
Questetra ハンズオンセミナー ビギナー向け業務プロセス設計 2016/02/10Questetra ハンズオンセミナー ビギナー向け業務プロセス設計 2016/02/10
Questetra ハンズオンセミナー ビギナー向け業務プロセス設計 2016/02/10
 
Questetra ハンズオンセミナー ビギナー向け業務プロセス設計 2015/11/25
Questetra ハンズオンセミナー ビギナー向け業務プロセス設計 2015/11/25Questetra ハンズオンセミナー ビギナー向け業務プロセス設計 2015/11/25
Questetra ハンズオンセミナー ビギナー向け業務プロセス設計 2015/11/25
 
Questetra ハンズオンセミナー ビギナー向け業務プロセス設計 2015/11/11
Questetra ハンズオンセミナー ビギナー向け業務プロセス設計 2015/11/11Questetra ハンズオンセミナー ビギナー向け業務プロセス設計 2015/11/11
Questetra ハンズオンセミナー ビギナー向け業務プロセス設計 2015/11/11
 
二要素認証を実現する
二要素認証を実現する二要素認証を実現する
二要素認証を実現する
 
Questetra ハンズオンセミナー ビギナー向け業務プロセス設計 2015/10/14
Questetra ハンズオンセミナー ビギナー向け業務プロセス設計 2015/10/14Questetra ハンズオンセミナー ビギナー向け業務プロセス設計 2015/10/14
Questetra ハンズオンセミナー ビギナー向け業務プロセス設計 2015/10/14
 
Questetra ハンズオンセミナー ビギナー向け業務プロセス設計 2015/09/09
Questetra ハンズオンセミナー ビギナー向け業務プロセス設計 2015/09/09Questetra ハンズオンセミナー ビギナー向け業務プロセス設計 2015/09/09
Questetra ハンズオンセミナー ビギナー向け業務プロセス設計 2015/09/09
 
Questetra ハンズオンセミナー ビギナー向け業務プロセス設計 2015/07/15
Questetra ハンズオンセミナー ビギナー向け業務プロセス設計 2015/07/15Questetra ハンズオンセミナー ビギナー向け業務プロセス設計 2015/07/15
Questetra ハンズオンセミナー ビギナー向け業務プロセス設計 2015/07/15
 
Questetra ハンズオンセミナー ビギナー向け業務プロセス設計 2015/06/10
Questetra ハンズオンセミナー ビギナー向け業務プロセス設計 2015/06/10Questetra ハンズオンセミナー ビギナー向け業務プロセス設計 2015/06/10
Questetra ハンズオンセミナー ビギナー向け業務プロセス設計 2015/06/10
 
Questetra ハンズオンセミナー ビギナー向け業務プロセス設計 2015/05/12
Questetra ハンズオンセミナー ビギナー向け業務プロセス設計 2015/05/12Questetra ハンズオンセミナー ビギナー向け業務プロセス設計 2015/05/12
Questetra ハンズオンセミナー ビギナー向け業務プロセス設計 2015/05/12
 
Questetra ハンズオンセミナー ビギナー向け業務プロセス設計 その2 2015/03/11
Questetra ハンズオンセミナー ビギナー向け業務プロセス設計 その2 2015/03/11Questetra ハンズオンセミナー ビギナー向け業務プロセス設計 その2 2015/03/11
Questetra ハンズオンセミナー ビギナー向け業務プロセス設計 その2 2015/03/11
 
Questetra ハンズオンセミナー ビギナー向け業務プロセス設計 その1
Questetra ハンズオンセミナー ビギナー向け業務プロセス設計 その1Questetra ハンズオンセミナー ビギナー向け業務プロセス設計 その1
Questetra ハンズオンセミナー ビギナー向け業務プロセス設計 その1
 
Questetra ハンズオンセミナー ビギナー向け業務プロセス設計 その2 2015/02/09
Questetra ハンズオンセミナー ビギナー向け業務プロセス設計 その2 2015/02/09Questetra ハンズオンセミナー ビギナー向け業務プロセス設計 その2 2015/02/09
Questetra ハンズオンセミナー ビギナー向け業務プロセス設計 その2 2015/02/09
 
Questetra ハンズオンセミナー ビギナー向け業務プロセス設計 その1 2015/01/15
Questetra ハンズオンセミナー ビギナー向け業務プロセス設計 その1 2015/01/15Questetra ハンズオンセミナー ビギナー向け業務プロセス設計 その1 2015/01/15
Questetra ハンズオンセミナー ビギナー向け業務プロセス設計 その1 2015/01/15
 
Questetra ハンズオンセミナー ビギナー向け業務プロセス設計 その1 2014/12/10
Questetra ハンズオンセミナー ビギナー向け業務プロセス設計 その1 2014/12/10Questetra ハンズオンセミナー ビギナー向け業務プロセス設計 その1 2014/12/10
Questetra ハンズオンセミナー ビギナー向け業務プロセス設計 その1 2014/12/10
 

AlphaGo の論文を読んで (MIJS 分科会資料 2016/11/08)

  • 2. AlphaGo vs イ・セドル  AlphaGoは Google DeepMind によって開発されたコンピュータ囲碁プログラム  https://deepmind.com/alpha-go  イ・セドル(李世ドル)  世界最強の棋士の1人  世界で1桁順位ぐらい  日本の井山(囲碁七冠)より、ちょっと上ぐらい  2016年3月に対局しAlpha GO の 4 勝 1敗 だった  で、Alpha GO はどんなプログラムだったのか
  • 3. そもそも 囲碁 はどうして難しいか  コンピュータがすべての手を最後まで先読み(探索)することができたら、人間は勝てない ただ、現在の技術では、全探索できない  探索すべき、局面の推定数(ちなみに1テラは、10^12)  オセロ 10^28  チェス 10^50  将棋 10^71  囲碁(9路盤) 10^38  囲碁(19路盤) 10^171  全探索せずに先読みするためには、探索を途中で打ち切る必要  打ち切るためには、「その局面が良いのか、悪いのか」「どの程度良いのか、悪いのか」 評価(評価関数)が必要  囲碁は、オセロ・チェス・将棋と異なり、評価関数がうまくできない  感覚的な部分が多く、論理的に説明できないことが多いらしい  囲碁は2重に難しい  2015年時点で、アマチュア有段レベルでしかなかった
  • 4. ニューラルネットワーク  Alpha GO は、ニューラルネットワークを用いている  人間の脳は、ニューロンが多数、多層的に つながりあってできている  ニューロンを数学的にモデル化 脳と同じように多数つなげたものが 「ニューラルネットワーク」  つまりニューラルネットワークとは、 「人間の脳」をコンピュータ上に再現したもの  まさしく AI (人工知能)  人間のマネができるように、テストデータで教育し、 賢くなったら実利用する  もとが良くても、教育を間違えると、ロクなものにならない。人間と同じ。
  • 5. AlphaGO のニューラルネットワーク  AlphaGO では、3つのニューラルネットワークを育てている  最初は、過去のプロ同士の対局データを元に学習  各局面でどういう手を打つか、確率を計算できる ニューラルネットワークを育成  いわば、トッププロを「まねる」段階  このネットワークを、以降、”SL Policy Network” と呼ぶ  3000万の局面データで学習し、テストでは次の手を 57% 予測できるように なった
  • 6. 強化学習 Reinforcement Learning  強化学習を行い、2つ目のニューラルネットワークを育成  強化学習をニューラルネットワークに適応したことが、Google DeepMind の大きな成果  強化学習とは、 「エージェントが、現在の状態を観測し、取るべき行動を決定する問題」 を扱う機械学習  「飼い犬のしつけ」「動物ショーのための訓練」は、解りやすい例  ニューラルネットワークは、基本、教師あり学習。何が違うか。  「目標」が与えられるだけで、知識(「正解」のテストデータ)が与えられない  スポーツで言えば、コーチにレッスンを受けてまねるのが教師あり学習で、 我流でひたすら頑張るのが強化学習  テストデータが要らないメリットがあるが、 学習に時間がかかるし、うまくいかない可能性も高い ただ飛躍する、人間を大きく超える可能性も秘めている  Google DeepMind の PingPong https://deepmind.com/blog/deep-reinforcement-learning/
  • 7. ニューラルネットワークの限界  “SL Policy Network” は「プロをまねる」ニューラルネットワーク  “SL Policy Network” 同士を対局させ、 ただ「勝つ」ことを目的に強化学習を実施  最初は「マネ」。次は「我流」。ニューラルネットワークはとても人間くさい。  このネットワークを、以降、”RL Policy Network” と呼ぶ  アマチュア2段相当のプログラムに対して、85%勝てるようにはなった  他の囲碁プログラムと同レベルになったが、トッププロに勝てるとは言えない  想像だが、Google DeepMind はニューラルネットワークだけで勝つことが、 本当の望みだと思う  なぜニューラルネットワークで、トッププロに勝てないのか(勝手な考察)  モデルによって決まる限界があるのだろう  アヒルをどれだけ頑張って育てても、ワシにはならない  モデルや教育アルゴリズムの更なる進化が必要なのだと思う
  • 8. プレイアウト (rollout)  AlphaGO は、これまでの囲碁アルゴリズム研究に、ニューラルネットワークを応用したもの  「モンテカルロ木探索」は、それまでの囲碁プログラムを劇的に進化させた探索アルゴリズム  2008年に登場  トッププロではないが、プロに初めて1勝することができた(トータルでは敗北)  局面評価に、「プレイアウト」を導入  囲碁は、オセロ・チェス・将棋と異なり、評価関数が難しい  オープンソースの Gnu GO の評価関数は、職人芸と呼べるものであったらしい それでもやっと、アマチュア初段に至っているかどうか  プレイアウトとは、(禁じ手を除いて)お互いランダムに終局まで打つこと  囲碁やオセロは、チェス・将棋と異なり、ランダムに打っても終局するという特徴がある  次の候補局面のそれぞれから、プレイアウトを実施  プレイアウトを複数行い、勝率をその局面の評価値とする  プレイアウト回数が多いほど、正確な評価値となる  終局が近いほど、正確な評価値となる  評価値(勝率)が最も高くなる手を選ぶ
  • 9. モンテカルロ木探索 (Monte Calro Tree Search)  単純にプレイアウトを導入しただけでは、1つの先読みでしかない  相手もランダムに打つことを想定しているため、相手にとって 「明らかに良い手が1つで、他は全部悪くなる」局面がある場合、 その方向に進んでしまう 改良したものが、「モンテカルロ木探索」  有望な(勝率が高い)候補局面ほど、プレイアウト回数を増やす  何度かプレイアウトを行えば、勝率に差が出てくる  勝率が高いものほど、よりプレイアウトが行われるように  ある局面でのプレイアウト回数が一定値を超えた場合、 その局面だけ更に先読みするように  相手の番手の場合は、勝率が低い候補ほど、プレイアウト回数を増やす トータルで見ると、有望な方向に先読みが進んでいく この「モンテカルロ木探索」をベースに、2008 年以降、研究が進んでいた  優先してプレイアウトを行う局面の選択に、囲碁の知識を入れる  プレイアウトで、完全にランダムに打つのではなく、人間がパターンを用意する  ニューラルネットワークに打たせることも考えられるが、AlphaGO はそうではない
  • 10. AlphaGO の3つのニューラルネットワーク  AlphaGO はモンテカルロ木探索に、3つのニューラルネットワークを応用したアルゴリズム  最後の3つ目として、局面を評価するだけの、ニューラルネットワークを作成  “SL Policy Network” “RL Policy Network” は、次の候補手を予測(推薦)するもの  「囲碁は、オセロ・チェス・将棋と異なり、評価関数が難しい」という問題に、 ニューラルネットワークで取り組んだ  学習データは2種類  過去のプロ同士の対局データ (SL Policy Network と同じ)  “RL Policy Network” 同士を対局させ、それによってできた対局データ  局面の履歴と最終結果(勝利/敗北)から、 各局面からの勝率を予測するニューラルネットワークを作成  全部で3つのニューラルネットワークができた 1. SL Policy Network (プロの手を予測するニューラルネットワーク) 2. RL Policy Network (SL Policy Network を強化学習で強くしたもの) 3. Value Network (局面からの勝率を予測するニューラルネットワーク)
  • 11. AlphaGO のモンテカルロ木探索  全部で3つのニューラルネットワーク 1. SL Policy Network (プロの手を予測するニューラルネットワーク) 2. RL Policy Network (SL Policy Network を強化学習で強くしたもの) 3. Value Network (局面からの勝率を予測するニューラルネットワーク)  最初は “SL Policy Network” で、プロが打ちそうな手を優先して、 各局面の評価を実施  徐々に、勝利確率の高い局面を優先するように切り替わる  “RL Policy Network” でない理由は、 “SL Policy Network” を採用した方が強かったから  各局面の評価において、 “Value Network” の結果とプレイアウトの結果の平均を採用  “Value Network” だけでない理由は、2つの平均の方が強かったから  プレイアウトは「実際に試している」という点で、“Value Network” より優れているところが ある?  1マシン版 (CPU 48 GPU 8) に加えて、分散版 (CPU 1202 GPU 176) を作成  1マシン版より分散版の方が、探索範囲が広く強い
  • 12. まとめと参考文献  AlphaGO は、これまでの囲碁アルゴリズムの研究に、 ニューラルネットワークを応用したもの  大枠は、モンテカルロ木探索  3つのニューラルネットワークを作成し、1と 3 の2つを利用 1. プロの次の手を予測するニューラルネットワーク 2. 1 のニューラルネットワークを強化学習したもの 3. 局面の勝利確率を計算するニューラルネットワーク  確かに「コンピュータが人間に勝利した」と言えるが、 「AI が 人間に勝利した」とまでは言えない(と思う)  Mastering the game of Go with deep neural networks and tree search Nature 529, 484-489, 28 Jan 2016  モンテカルロ木探索-コンピュータ囲碁に革命を起こした新手法 情報処理、vol.49, No.6, 2008  ディープラーニングを用いたコンピュータ囲碁 ~ Alpha Go の技術と展望 ~ 情報処理, vol.57, No.4, 2016