2017年12月5日に投稿されたGoogle DeepMind社のグループによるプレプリント論文「Mastering Chess and Shogi by Self-Play with a General Reinforcement Learning Algorithm」(以下、Silver論文)が大きな話題となっています。DeepMind社は、以前、深層学習と強化学習により、囲碁の専門知識を使わずに最強の囲碁ソフトAlphaGo Zeroを作り上げて、大きな衝撃を与えました。今回の論文では、AlphaGo Zeroと同様の手法(以下、AlphaZero)をチェスと将棋に適用し、それぞれ“世界最強”ソフトを作成したということを報告しています。この“世界最強”の部分については、現在、様々な論議がなされているところでありますが、この論文で重要なのは「汎用的な枠組みによって専用系に匹敵する結果が得られた」という点であろうかと思われますので、この部分は論文の重要性には影響しないと思われます(正確性には影響するかもしれません)。

今回は、取り急ぎ、Silver論文で個人的に衝撃を受けたことについて書いておきたいと思います。論文を読んで半ば衝動的に書いている記事ですので、いつも以上に“あわてんぼう”な内容を含んでいるかもしれませんが、ご容赦ください。

深層学習による評価関数は多層のネットワークで表現されるような大量の計算を伴う関数(少し専門的な書き方では非線形関数)になっています。ここで、関数というのは変数(局面等の情報)を入力すると値(評価値)を返すもののことです。従来の将棋の評価関数も“大量の計算を伴う関数”という点では同じなのですが、こちらは線形和(係数をかけて足し合わせる計算、ネットワークでいうと1層に相当)が基本であり、深層学習によるものは非線形であることが特徴になります。

このため、深層学習による評価関数は大量の並列的な計算を行わなければならず、コア数の多い特殊な計算機(GPU)で計算を行うわけですが、それでも従来の評価関数よりも計算に時間がかかります。計算機自体の作りが違うので単純な比較は難しいのですが、例えば、Silver論文の計算機環境では、1秒間に読める局面の数(NPS)はelmoが3500万程度であるのに対し、AlphaZeroは4万程度であり、千倍くらいの違いがあります。

NPSが千倍も違うのに強さが互角(※細かいことは置いておいて大雑把に書きます)だというのは驚きの結果であり、深層学習の優秀さを示していると感じられる方が多いかと思われますが、筆者が衝撃を受けたのは実はその点ではありません。

elmo等の従来の将棋ソフトはミニマックス探索(アルファベータ探索)を行って、評価値を改善しています。ミニマックス探索については、以下の解説記事をご参照ください。

ここで見方を変えて、探索による改善までを含めて“評価関数”だとして再定義すると、実は従来の将棋ソフトの“評価関数”も膨大な計算の非線形関数であったと再解釈することができます。この定義なら、同じような規模の非線形関数として、AlphaZeroの評価関数との比較がしやすくなります。

この観点から、Silver論文の結果を見ると(※AlphaZeroの探索部分がelmoの探索の一部と打ち消すようにelmoの“評価関数”の定義を調整したとして)、AlphaZeroの深層学習による評価関数と探索(の一部)を含めて再定義されたelmoの“評価関数”が、ものすごく大雑把に書いて、同程度の計算量で同程度の精度であったと解釈することができると思われます(※詳細には実物で検証しないと何とも言えませんが)。

ここで注意しなければならないのは、深層学習のものは将棋専用の設計が行われていない一方で、従来の将棋ソフトのものは将棋専用に作られているという点です。通常、特化/専門化による最適化は改良する方に働くはずであり(そうでなければ最適化として機能していません)、大幅な改良になることもよくあります。

このため、もし将棋においてミニマックス探索が十分に有効であるのならば、深層学習による汎用型評価関数はミニマックス探索による改善を含む従来型の“評価関数”には及ばないはずなのですが(※これまで筆者が将棋における深層学習の有効性にやや否定的であったのは、これが理由です)、Silver論文の結果はそうなっていません。

すなわち、Silver論文の結果は、将棋(やチェス)におけるミニマックス探索の有効性に疑問を投げかけるものであると解釈することができると思われます。

従来、将棋ソフトにおいて、ミニマックス探索は経験的に優れた手法であると信じられていました。これは、先駆者であるチェスソフトでも同様です。実際に探索を深くしていく(思考時間を増やしていく)とレートが向上するということは、このブログでも紹介してきた通りです。

この定説的な知見を見なさなければならないかもしれないというのは、個人的に非常に衝撃的であり、エキサイティングな結果であると感じています。

さて、Silver論文の5頁では、ミニマックス探索よりもモンテカルロ木探索(MCTS)が優れているとして、思考時間に対するレートの伸びを比較しています(図2)。ただ、これは評価関数の精度やNPSが全く異なるものの比較であり、探索部以外の条件が著しく異なってしまっているため、この主張は論理的に成立しないものと思われます。もしかすると出版される際には消えているかもしれません。

ただ、論文執筆側からすると、このように少し無理がある主張というのは、はっきりとは言えない(すぐにデータで証明できない)が研究過程での経験的に何らかの確からしい感覚があって主張しておきたいという場合があり、後で結果的に重要になることがあります。研究においては、科学的な正確性と重要性が異なることがあるわけです。

ミニマックス探索の有効性について、DeepMindグループの疑問と筆者の私的解釈における疑問がどの程度、重なっているのかは分かりませんが、いずれにしても今後、この問題は大いに議論され、研究されることになるかと思われます。

以上、今回は、取り急ぎ、Silver論文で個人的に衝撃を受けたことについて記しました。

次回は、簡単な数理模型を使って、ミニマックス探索の有効性について改めて考え直してみたいと思います。

  • 次の記事:「ミニマックス法の有効性 2:誤差を含む模型解析例」