DeepMindのAlphaGo Zeroがいかにして自己学習し、世界チャンピオンのAI AlphaGoを打ち破ったか

Table of Contents

DeepMindのAlphaGo Zeroがいかにして自己学習し、世界チャンピオンのAI AlphaGoを打ち破ったか

分析DeepMind は本日、プロの囲碁プレイヤーを圧倒した人工知能プログラム AlphaGo の、よりスリムで強力なバージョンである AlphaGo Zero について説明した論文を発表しました。

囲碁は、複雑なだけでなく、可能な手の数(チェスの 10 の170 倍)が宇宙の原子の数よりも多いため、コンピューターが習得するのが難しいゲームだと考えられていました。

しかし、AlphaGo Zeroの前身であるAlphaGoは、18回の世界チャンピオンに輝いたイ・セドルと、現世界ランキング1位の柯潔を圧倒しました。今年初めに柯潔に勝利した後、DeepMindはAlphaGoが今後の大会から引退することを発表しました。

今、さらに優れた対戦相手が登場しています。AlphaGo Zeroは、AlphaGoのほんのわずかな時間でトレーニングしただけで、AlphaGoを100対0で破ったと伝えられています。そして、AlphaGoとは異なり、人間同士の対戦を観察することで学習したわけではありません。Zeroのニューラルネットワークは、強化学習の古い手法である「自己対戦」を利用しています。

機械1、人間0:アルファ碁が世界最高の囲碁棋士を初戦で圧倒

続きを読む

AlphaGo Zeroは基本的に自分自身と対戦します。トレーニング中は、テーブルの両側に配置され、同じソフトウェアの2つのインスタンスが互いに対戦します。対局は、碁盤上に散らばった白と黒の石が、開始位置からランダムな一連の手順を経て配置された状態から始まります。2人のコンピュータープレイヤーには、碁盤上の各石の位置に至るまでの一連の手順が与えられ、それぞれが次の一連の手順を複数考え出し、それぞれの手順で勝てる確率を推定するよう指示されます。

つまり、黒のプレイヤーは次の手を4つの連鎖で考え、3番目の連鎖が最も成功すると予測できる。白のプレイヤーは独自の連鎖を考え、最初の選択肢が最も強いと考える。

次に、最善の連鎖から次の一手が打たれ、コンピュータープレイヤーは上記の手順を繰り返し、強さ順にランク付けされた一連の手を生み出します。この動作を何度も繰り返すことで、ソフトウェアはゲームを感覚的に理解し、どの戦略が最も強力であるかを内部化します。

旧式のAlphaGoは、囲碁のシナリオをプレイするために、計算量の多いモンテカルロ木探索に依存していました。ノードとブランチは、AlphaGoが実際にプレイするために必要な量よりもはるかに大きな木を作成しました。強化学習と人間による教師あり学習を組み合わせることで、「価値」と「方策」のニューラルネットワークが構築され、探索木を用いてゲーム戦略を実行しました。このソフトウェアは、人間同士のゲームで行われた3000万手から学習し、様々な工夫やトリックを活用して勝利を導きました。例えば、ゼロから構築するのではなく、マスターレベルの人間のプレイヤーから訓練されました。

AlphaGo Zeroは専門家の指導なしにゼロからスタートしました。そして、はるかに効率的です。AlphaGoが複数のマシンと48個のTPUを使用するのに対し、Zeroは1台のコンピュータとGoogleのカスタムTPU1チップ4個のみを使用して対戦を行います。Zeroは人間のゲームプレイに依存せず、対戦数も少ないため、モンテカルロ木探索の規模も小さくなっています。また、自己対戦アルゴリズムは、価値ニューラルネットワークと方策ニューラルネットワークの両方を1つに統合し、64個のGPUと19個のCPUを用いて数日間で約500万回の自己対戦を行うことで学習しました。比較すると、AlphaGoがイ・セドルに勝つには数か月の学習と1,920個のCPUと280個のGPUが必要でした。

AlphaGo Zeroは、人間の介入なしに、布石の序盤戦術やいわゆる「死活」といった囲碁理論における古典的な一手を自ら発見しました。詳細はNature誌、またはこちらの論文をご覧ください。スタンフォード大学のコンピュータサイエンス学者、バラス・ラムスンダル氏が、より技術的な点についてこちらで要約しています。

セルフプレイは楽しい

セルフプレイは強化学習において確立された手法であり、バックギャモン、チェス、ポーカー、スクラブルのプレイを機械に学習させるために利用されてきました。AlphaGoの主任研究者であるデビッド・シルバー氏は、対戦相手の難易度が常に適切なため、セルフプレイは効果的な手法だと述べています。

「ですから、最初は非常に未熟な状態から始まります」と彼は言った。「しかし、学習プロセスのあらゆる段階で、その時点のパフォーマンスレベルにぴったりと合った対戦相手、いわばスパーリングパートナーが現れるのです。最初は非常に弱い選手ですが、時が経つにつれて徐々に強くなっていきます。」

芸術的な風景を背景にAIロボットを後ろから見た写真。写真はSHuttertockより

AI専門家は、120年以内にあなたの仕事が自動化される可能性があると予測している

続きを読む

OpenAIの研究者らも、同じ手法を使ってボットにDota 2をプレイするトレーニングを実験し、競争的なセルフプレイに関する論文を先週発表した。

OpenAIの研究科学者であるティム・サリマンズ氏は、The Registerに対し、セルフプレイとは「エージェントは強化学習タスクにおいて、手作業でコーディングされていない行動を学習できるが、学習した行動の洗練度は環境の洗練度によって制限される」ことを意味すると説明した。エージェントが特定の環境で知的な行動を学習するには、その環境は挑戦的でなければならないが、挑戦しすぎてはいけない。

競争要素は、エージェントに自身の弱点を明示的に探させる。弱点が発見されれば、エージェントはそれを改善できる。セルフプレイでは、エージェントが解決するタスクの難易度は常に適切だが、時間の経過とともに制限がなくなる。対戦相手は常に改善できるため、タスクは常に難しくなる可能性があるからだ。

囲碁をマスターするのは素晴らしいことですが、セルフプレイは他に何に役立つのでしょうか?今のところ、ボードゲーム以外ではあまり役に立ちません。AlphaGo Zeroでは解けない問題、例えばStarcraftのような隠れ状態や不完全情報を持つゲームなどがあり、セルフプレイがより高度な課題に成功する可能性は低いでしょう。

しかし、AIの一部の分野では、自己対戦アプローチは価値のあるものとなるだろう。サリマンス氏は次のように述べた。「強化学習アルゴリズムがより強力になるにつれ、人工知能開発におけるボトルネックは、十分に洗練されたタスクと環境の開発へと徐々に移行していくでしょう。たとえ非常に才能のある人でも、適切な環境に触れなければ、優れた知性は育たないでしょう。」

DeepMindは、このアプローチが囲碁のようなゲームと類似した特性を持つより広範なシナリオに一般化できる可能性があると考えています。タンパク質の折り畳み、エネルギー消費の削減、新素材の探索など、一連の行動を正しい順序で実行する必要があるタスクや問題の計画に役立つ可能性があります。®

Discover More