シンギュラリティ教徒への論駁の書

“Anyone who believes that exponential growth can go on forever in a finite world is either a madman or an economist.” - Kenneth Boulding

翻訳:AlphaZeroは本当にAI分野の科学的ブレークスルーなのか?

この記事は、Google社の博士研究員であるJose Camacho Collados氏がサイトMedium上で公表した "Is AlphaZero really a scientific breakthrough in AI?" の翻訳です。

 

AlphaZeroは本当にAI分野の科学的ブレークスルーなのか?

おそらくご存じの通り、DeepMind社は最近AlphaZeroに関する論文*1を公表した。AlphaZeroは、自己学習によりチェスや将棋といったゲームをマスターできるシステムである。

詳細に入る前に、私の自己紹介をさせてほしい。
私は広い意味での人工知能(AI)分野の研究者であり、自然言語処理を専門としている。また私はチェスのインターナショナルマスターでもあり、現在韓国のトップ棋士である。しかし、ここ数年間はフルタイムの研究者としての仕事があるために、ほとんど活動できていない。

私の背景知識を基に、この問題に対してできる限り建設的に、合理的な意見を提示したいと思う。明白な理由によりチェスに焦点を当てるものの、いくつかの議論は一般的なものであり、将棋や囲碁にも同様に適用できると考えている。この投稿は私個人の意見を表すものであり、私が専門ではない特定の技術的詳細について誤って解釈している部分があるかもしれないが、予めご了承いただきたいと思う。

チェスは、「人間vs.機械」というコンテキスト、そしてAI研究一般において、疑いなく最も広く研究対象となったゲームである。コンピュータチェス分野における最初のブレークスルーは、1997年にIBM社のディープ・ブルーが当時の世界チャンピオン、ガルリ・カスパロフに勝利したことであろう。*2 当時のコンピュータは、チェスのプレイにおいて人間よりも劣ると見なされていたものの、それ以降の「対戦」では明白にコンピュータが勝利するようになっていった。

f:id:liaoyuan:20171223132648j:plain

写真:1997年のガルリ・カスパロフディープ・ブルーの対戦。引用元:ロイター通信

 

関連した項目としては、数年前にDeepMind社はAlphaGoをリリースしたことが挙げられるだろう。これは、人間界最高の棋士に勝利することもできる囲碁エンジンである。*3 囲碁の複雑性は、チェスよりも大幅に大きいということに注意してほしい。近年利用可能となった高度な計算能力をもってしても、未だ囲碁では人間がコンピュータに勝てると考えられていたが、その大きな理由の一つはこの複雑性である。それゆえ、AlphaGoの勝利はそれ自体がブレークスルーと考えられるだろう。当初の印象的な結果は、AlphaGo Zeroによって更に大きなものとなった。

AlphaGo Zeroは、論文の著者たちの主張によれば、完全な自己対局*4のみで囲碁をマスターしたとされている。そして、更に最近のAlphaZeroは、AlphaGoと類似した汎用的な強化学習アルゴリズムを用いてニューラルネットワークアーキテクチャーを訓練するモデルを用いて、いくつかの最強の将棋・チェスエンジンに対して勝利を収めたとされている。

この業績は、マスメディア*5とチェス専門*6メディアの両方において、ブレークスルーの重大性についての仰々しい誇張を伴って広く報道されている。ところが、AlphaZeroの論文を慎重に読んでみると、主要な主張の妥当性に関して合理的な疑いが生じるのである。

これらの懸念の中には、それほど重要ではないと考えられているものもあるかもしれないし、後に著者らによって説明される可能性があるかもしれない。それにもかかわらず、全ての疑念を合算すると、全体的な主張の科学的妥当性に対して合理的な疑いが生じるのである。

  • 入手可能性/再現性
    DeepMind社によって開発されたAlphaZeroシステムは、どれも一般に公開されていない。ソースコードは公開されておらず、ユーザがテストできる商用バージョンさえ存在していない。これは重大な障害である。
    科学的な観点から見ると、これらのアプローチは他の専門家によって検証されることもできず、他者が成果を利用することもできない。また、この透明性の欠如によって、彼らの実験を再現することも同様に不可能である。
  • 4時間の学習
    AlphaZeroの学習時間の量は、一般のメディアによる説明において最も誤解されている部分だろう。論文によれば、5000個のTPUを用いた4時間の学習の後、AlphaZeroは既にオープンソースのチェスエンジンであるStockfishを超えていたという。(学習完了までには更に数時間を要した) つまりは、1個のTPUを用いた場合の所要時間はおよそ2年であることを意味しており*7、通常のCPUの場合は更に長い時間となるだろう。そのため、4時間という時間は印象的に見えるが (そして実際のところ印象的であるものの)、これは主に最近数年の間に利用可能となった巨大な計算力のキャパシティによるものであり、特にDeepMind社のような企業が巨大な投資を行なったことによるものである。たとえば、2012年までに、チェスの7つ以下の駒による全ての配置は、かなり小さな計算力のみで数学的に完全に解析されている。*8
  • 対Stockfish戦の実験設定
    既存チェスエンジンに対するAlphaZeroの優位性を証明するために、Stockfishとの100回の対戦が行なわれた。(AlphaZeroがStockfishに64-36で勝利した) 対戦相手としてStockfishを選択したことは妥当だろうと思う。オープンソースであり、今日世界最強クラスのチェスエンジンであるからだ。コンピュータチェスの世界チャンピオンシップと見なされている TCEC (Top Chess Engine Competition) の直近の大会では、Stockfishは (KomodoとHoudiniに続いて) 3位の成績を残している。*9
    しかし、実験条件の設定は公平ではないように見える。Stockfishのバージョンは最新版ではなく、更に重要なことにPC用のバージョンを使用していたことだ。AlphaZeroは、かなり高い処理能力を与えられていたにもかかわらずである。たとえば、TCECの大会では、それぞれのエンジンはみな同じプロセッサを使用して対戦する。
    そして、持ち時間の選択も奇妙なものであるようだ。それぞれのエンジンは、1手ごとに1分の持ち時間を与えられている。しかし、大半の人間とコンピュータのチェス大会においては、各プレイヤーは1回のゲーム全体に対してある一定の時間を与えられ、その持ち時間をどう配分するかはプレイヤーに任されている。Stockfishの開発者の1人であるTord Romstadは、これはStockfishの能力を損なう、疑問のある決定であると述べている。「Stockfishの開発においては、ゲームの重要な局面を判定して、いつ追加の検討時間を消費するかを決定するために、大きな労力が割かれている」ためである。*10 また、Tord Romstadは、Stockfishは「これまで受けたどんなテストよりも、多数の検索スレッドが"遊んでいた"」と指摘している。概して、AlphaZeroのStockfishに対する勝率の高さは、トップレベルのチェスプレイヤーから大きな驚きをもって迎えられた。チェスエンジンは、既にほとんど負けることのない強さに達しているという一般的な通念に反するものであったからだ。(たとえば、世界ランキング第9位のヒカル・ナカムラは、AlphaZero対Stockfish戦の低い引き分け率について疑問を唱えている。)*11*12
  • 対Stockfish戦の10試合
    論文中では、たった10個の棋譜のみしか提供されておらず、全てはAlphaZeroが勝利したものである。*13
    これらの棋譜は、概してあらゆるチェスコミュニティで賞賛されている。AlphaZeroがこれらのゲームにおいてチェスに対する深い理解を示しているように見えるからだ。グランドマスターであり、世界チャンピオンのMagnus Carlsenの指導者Peter Heine Nielsen*14、あるいは世界ランキング5位のMaxime Vachier Lagraveは、AlphaZeroのStockfishに対する成績に関して肯定的に評価している事例である*15。しかし、たった10件の、AlphaZeroの勝利した棋譜のみしか公開しないという決定は、新たな疑問を生じさせる。学術論文においては、提案したシステムの弱点や、あまり上手く動作しない事例をいくつか示すことが慣例となっている。そうすれば、提案手法の包括的な理解を得ることができ、また他の研究者がそれを改善できるからだ。他の疑問としては、論文からは明白ではないのだが、ゲームが特定のオープニングから開始されたのか、それとも完全に最初から始められたのか不明であるということだ。これら10件の棋譜の中で使われたオープニングの多様性を見ると、いくつかの初期状態が予め決められていたのではないかと思われる。

    f:id:liaoyuan:20171223132815p:plain
    AlphaZero対Stockfish戦。最終手 Qh1(クイーンをH-1へ移動)。トップグランドマスターのFrancisco Vallejo Ponsは、このゲームは「サイエンス・フィクション」だと評価している。引用元:chess24

  • 自己学習
    AlphaZeroは、完全に自己学習によって学ぶのだろうか。論文中で示された技術的な詳細によれば、これは真実であるらしい。しかし、2点、重要な言葉のニュアンスの違いが存在する。それぞれのゲームのルール、およびゲーム終了までの平均的な手数は、自己対局を開始する前にシステムへ教えておく必要がある。
    1件目の、ゲームのルールに関しては、一見明白であるように見えるかもしれないが、しかし決してささいな問題ではない。これらのゲームのルールを表現する適切なニューラルネットの構造を発見するためには、多大な労力が必要とされる。これは、AlphaZeroの論文で説明されている通りである。AlphaGoで使われていた畳み込みニューラルネット (CNN) をベースとした初期のアーキテクチャは、囲碁に対しては適していたが、他のゲームについてはそうではなかった。たとえば、囲碁とは異なり、チェスや将棋は盤面が非対象であり、いくつかの駒はその位置に応じて振る舞いが変化する。新しいAlphaZeroにおいては、AlphaGoのアルゴリズムをより汎用化したものが導入されており、チェスや将棋といったゲームも含められるようになった。
    2件目のゲーム終了までの平均的な手数 (すなわち、「探索のノイズに対してスケールするように」AlphaZeroに対して平均的な手数が与えられている) についても、対象のゲームに対する何らかの事前知識を必要とする。同様に、手数が最大値を超えたゲームについては、結果を引き分けとして対局を強制終了させるとされている。(この手数の最大値は論文中に示されていない)
    このヒューリスティック手法が、Stockfishとの対戦の際にも使用されたのか、それとも学習中にのみ用いられたのかも明らかではない。
  • 一般化
    一つの汎用強化学習手法を用いて多数の領域で成功を収められるということが、AlphaZeroの大きな主張である。しかし、自己対局に関する前述の指摘点により、AlphaGoとAlphaZeroシステムを他の領域へ一般化することができるのか、多数の議論が起こっている*16。現実世界の多数の状況を、たとえばチェス、囲碁や将棋のように、事前に定義された不変のルールの集合へ単純化できると想定することは、非現実的な仮定であるように思われる。加えて、これらのゲームでは固定のルールが与えられているのみならず、複雑さの違いはあるけれども、これらのゲームは有限である。すなわち、ありうる状況は有界である。固定されたルールの集合を定義できるゲームであっても、状況は異なる場合がある。たとえば、テニスの場合は、考慮しなければならない変数の数は数え上げることが難しいほど多い。そこで、たとえば風向きと風速、ボールの速度、ボールの角度や表面、表面の種類、ラケットの素材、コートの穴などまで考慮に入れなければならない。

我々は、慎重に、疑わしいブレークスルーを科学的に精査しなければならない。とりわけ、我々が現在生きているAIハイプの時代においては。実際のところ、我々自身の業績を正確に説明し宣伝することはAI分野の研究者の責任であり、成長しつつある (しばしば利己的な) AIに対する誤解と神秘化を助長する行為に加担するべきではない。事実、今年12月初頭に開催されたNIPS、間違いなく最も名高いAIカンファレンスにおいて、何名かの研究者がAI科学コミュニティの厳格性の欠如に対して重大な懸念を表明している*17

この件に関しては、主張の妥当性が考慮され、私の懸念が明確化されて解決され、AlphaZeroの功績に関する正確な科学的貢献を判断することができるようになれば良いと望んでいる。現状では、判断を下すことさえ不可能であるからだ。おそらく、より良い実験設計と再現性の向上に向けた努力によって、結論は最初の主張よりも弱くなるだろう。あるいはその逆の結果となるかもしれないが、DeepMind社がこの方向へと力を入れなければ、そのように評価することは困難である。個人的には、DeepMind社のポテンシャルには大きな期待を持っており、AIの分野で重要な発見を成し遂げてほしいと願っている。しかし、彼らの貢献が他の研究者から容易に検討でき、社会に貢献できる方法で提示されてほしいと思う。

*1:原注1:Silver et al. “Mastering Chess and Shogi by Self-Play with a General Reinforcement Learning Algorithm.” arXiv preprint arXiv:1712.01815 (2017). https://arxiv.org/pdf/1712.01815.pdf

*2:原注2:https://en.wikipedia.org/wiki/Deep_Blue_versus_Garry_Kasparov

*3:原注3:https://www.theguardian.com/technology/2016/mar/15/googles-alphago-seals-4-1-victory-over-grandmaster-lee-sedol

*4:原注4:Silver et al. “Mastering the game of go without human knowledge.” Nature 550.7676 (2017): 354–359. https://www.gwern.net/docs/rl/2017-silver.pdf

*5:原注5: https://www.theguardian.com/technology/2017/dec/07/alphazero-google-deepmind-ai-beats-champion-program-teaching-itself-to-play-four-hours ,原注6:http://www.bbc.com/news/technology-42251535

*6:原注7:https://chess24.com/en/read/news/deepmind-s-alphazero-crushes-chess,原注8:https://www.chess.com/news/view/google-s-alphazero-destroys-stockfish-in-100-game-match

*7:訳注:4時間x5000=2.2年を意味する

*8:原注9:http://chessok.com/?page_id=27966

*9:原注10:https://hunonchess.com/houdini-is-tcec-season-10-champion/

*10:原注10

*11:原注11:https://www.chess.com/news/view/alphazero-reactions-from-top-gms-stockfish-author

*12:訳注:チェスは、将棋と異なり一度盤面から取り除かれた駒を再利用できないため、終盤では盤上の駒数が少なくなり、互いにチェックメイトできない状況になることが多い。そのため、強豪同士の対戦では引き分けが多くなる傾向がある。たとえば、近年の世界大会の試合では6割以上が引き分けとなっている

*13:原注12:AlphaZero対Stockfish戦10試合の再現へのリンク: https://chess24.com/en/watch/live-tournaments/alphazero-vs-stockfish/1/1/1

*14:原注13:https://www.twitch.tv/videos/207257790

*15:原注11

*16:原注14:https://medium.com/@karpathy/alphago-in-context-c47718cb95a5

*17:原注15:Ali Rahimi氏は、2017年のNIPSのテスト・オブ・タイム賞受賞スピーチにおいて、現在の機械学習の実践を「錬金術」と表現している: https://www.youtube.com/watch?v=ORHFOnaEzPc