SlideShare une entreprise Scribd logo
1  sur  12
Télécharger pour lire hors ligne
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

Contenu connexe

Tendances

語の分散表現と上位下位関係―研究動向と今後への試案―
語の分散表現と上位下位関係―研究動向と今後への試案―語の分散表現と上位下位関係―研究動向と今後への試案―
語の分散表現と上位下位関係―研究動向と今後への試案―
Washio Koki
 
PyOpenCLによるGPGPU入門
PyOpenCLによるGPGPU入門PyOpenCLによるGPGPU入門
PyOpenCLによるGPGPU入門
Yosuke Onoue
 

Tendances (20)

【DL輪読会】Emergence of maps in the memories of blind navigation agents
【DL輪読会】Emergence of maps in the memories of blind navigation agents【DL輪読会】Emergence of maps in the memories of blind navigation agents
【DL輪読会】Emergence of maps in the memories of blind navigation agents
 
SSII2018TS: 3D物体検出とロボットビジョンへの応用
SSII2018TS: 3D物体検出とロボットビジョンへの応用SSII2018TS: 3D物体検出とロボットビジョンへの応用
SSII2018TS: 3D物体検出とロボットビジョンへの応用
 
パワポ版の落合先生流論文要旨のテンプレートを作ったので配布する
パワポ版の落合先生流論文要旨のテンプレートを作ったので配布するパワポ版の落合先生流論文要旨のテンプレートを作ったので配布する
パワポ版の落合先生流論文要旨のテンプレートを作ったので配布する
 
[DL輪読会]Attention Is All You Need
[DL輪読会]Attention Is All You Need[DL輪読会]Attention Is All You Need
[DL輪読会]Attention Is All You Need
 
AHC-Lab M1勉強会 論文の読み方・書き方
AHC-Lab M1勉強会 論文の読み方・書き方AHC-Lab M1勉強会 論文の読み方・書き方
AHC-Lab M1勉強会 論文の読み方・書き方
 
語の分散表現と上位下位関係―研究動向と今後への試案―
語の分散表現と上位下位関係―研究動向と今後への試案―語の分散表現と上位下位関係―研究動向と今後への試案―
語の分散表現と上位下位関係―研究動向と今後への試案―
 
強化学習その2
強化学習その2強化学習その2
強化学習その2
 
ゼロから始める深層強化学習(NLP2018講演資料)/ Introduction of Deep Reinforcement Learning
ゼロから始める深層強化学習(NLP2018講演資料)/ Introduction of Deep Reinforcement Learningゼロから始める深層強化学習(NLP2018講演資料)/ Introduction of Deep Reinforcement Learning
ゼロから始める深層強化学習(NLP2018講演資料)/ Introduction of Deep Reinforcement Learning
 
強化学習アルゴリズムPPOの解説と実験
強化学習アルゴリズムPPOの解説と実験強化学習アルゴリズムPPOの解説と実験
強化学習アルゴリズムPPOの解説と実験
 
優れた問いを見つける(中京大学講演)
優れた問いを見つける(中京大学講演)優れた問いを見つける(中京大学講演)
優れた問いを見つける(中京大学講演)
 
最新リリース:Optuna V3の全て - 2022/12/10 Optuna Meetup #2
最新リリース:Optuna V3の全て - 2022/12/10 Optuna Meetup #2最新リリース:Optuna V3の全て - 2022/12/10 Optuna Meetup #2
最新リリース:Optuna V3の全て - 2022/12/10 Optuna Meetup #2
 
深層学習時代の自然言語処理
深層学習時代の自然言語処理深層学習時代の自然言語処理
深層学習時代の自然言語処理
 
探索と活用の戦略 ベイズ最適化と多腕バンディット
探索と活用の戦略 ベイズ最適化と多腕バンディット探索と活用の戦略 ベイズ最適化と多腕バンディット
探索と活用の戦略 ベイズ最適化と多腕バンディット
 
【論文調査】XAI技術の効能を ユーザ実験で評価する研究
【論文調査】XAI技術の効能を ユーザ実験で評価する研究【論文調査】XAI技術の効能を ユーザ実験で評価する研究
【論文調査】XAI技術の効能を ユーザ実験で評価する研究
 
セクシー女優で学ぶ画像分類入門
セクシー女優で学ぶ画像分類入門セクシー女優で学ぶ画像分類入門
セクシー女優で学ぶ画像分類入門
 
SSII2021 [TS2] 深層強化学習 〜 強化学習の基礎から応用まで 〜
SSII2021 [TS2] 深層強化学習 〜 強化学習の基礎から応用まで 〜SSII2021 [TS2] 深層強化学習 〜 強化学習の基礎から応用まで 〜
SSII2021 [TS2] 深層強化学習 〜 強化学習の基礎から応用まで 〜
 
PyOpenCLによるGPGPU入門
PyOpenCLによるGPGPU入門PyOpenCLによるGPGPU入門
PyOpenCLによるGPGPU入門
 
モデルアーキテクチャ観点からのDeep Neural Network高速化
モデルアーキテクチャ観点からのDeep Neural Network高速化モデルアーキテクチャ観点からのDeep Neural Network高速化
モデルアーキテクチャ観点からのDeep Neural Network高速化
 
CV分野におけるサーベイ方法
CV分野におけるサーベイ方法CV分野におけるサーベイ方法
CV分野におけるサーベイ方法
 
レコメンド研究のあれこれ
レコメンド研究のあれこれレコメンド研究のあれこれ
レコメンド研究のあれこれ
 

Plus de Akihiro HATANAKA

Plus 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