OpenAI の巨大なテキスト生成言語モデル GPT-2 は、ゲームのルールに関する事前知識がなくてもチェスをプレイできます。
最初はかなり奇妙に思えるかもしれません。結局のところ、このシステムは、1、2文のプロンプトを受けて、テキストの断片を吐き出すことでよく知られています。
GPT-2 は Reddit のリンクから収集した約 800 万の新聞記事と Web ページでトレーニングされており、言語の一般的なパターンを学習して、多少意味不明な部分があっても、ほぼ文法的に正しく、ある程度一貫性のある、説得力のある独自の文章を生成できることが強みです。
しかし、チェスのゲームはテキスト文字列として表現され、特定のルールも持つため、GPT-2で解析可能です。エンジニアのショーン・プレッサー氏とグワーン・ブランウェン氏は、特定の形式で十分な訓練データを入力すれば、チェスをプレイできるように調整できることに気付きました。
「キングベースから収集した240万のゲームでこれを訓練した。キングベースは、ポータブルゲーム表記法(PGN)でチェスの駒の位置を表すデータセットである」とプレッサー氏はThe Registerに語った。
PGNは、チェス盤のすべての行に1から8までの数字を、すべての列にaからhまでの小文字を割り当てます。キング、クイーン、ルーク、ビショップ、ナイトの駒にはすべて大文字が割り当てられます。例えば、「Nf3」は、ナイトが盤上のf3の位置に動いたことを示します。
GPT-2 は、Google の Cloud TPU チップ 140 個を使用して 24 時間かけて 240 万回のシーケンスでトレーニングされた後、チェスのルールを理解したりチェス盤を見たりすることなく、以前に見た動きをコピーして再現することを学習しました。
GPT-2は、各ゲームの開始時にのみ対戦するのが本当に難しいです。
一見すると素晴らしいように聞こえるかもしれませんが、他のニューラルネットワークと同様に、トレーニングデータにはある程度の過剰適合が生じます。10~13手ほどで、無効な手を打ち始めます。
「明らかにポーンが邪魔になっているのに、ルークを特定の場所に移動させようとするような動作をします」とプレッサー氏は述べた。その結果、GPT-2は長期戦に苦戦し、主にゲーム序盤で効果を発揮する。
「人間と対戦すると、このゲームは序盤の指し手に関しては達人のように振舞いますが、そのスキルレベルは急速に落ちてしまいます。序盤の指し手を記憶しているのかもしれません。プロプレイヤーも同じように、序盤に打てる指し手が限られているため、記憶しているのです」と彼は付け加えた。
しかし、この機械が単に過去に見たことを繰り返すだけではないことを示す、興味深い兆候がいくつかある。「機械は動的に反応します。異なるオープニングバリエーションでスタートすれば、反応も変わります。また、非常に奇妙な動きに直面した場合、例えばクイーンをすぐに差し出すような場合、ほとんどの場合、機械はそれを受けます。」
プレッサー氏とブランウェン氏は、盤上のさまざまな駒をすべて追跡することがますます困難になると、GPT-2 の能力は急落すると考えています。
よし、賢いAIさん。ビデオゲームなら人間に勝てるでしょう。でも、ジェンガみたいな現実世界のパズルはどうですか? ああ、いや、無理です
続きを読む
「例えば、F3にナイトと言った場合、そのナイトがどこから移動したかは参照されません」とプレッサー氏はエル・レグ紙に語った。
「人間であるあなたは、その騎士がいたであろう場所が限られているため、それがわかるかもしれません。私たちはPGN記法で訓練しましたが、長い代数記法で訓練すると、AIシステムが各駒がどこへ移動するかだけでなく、どこから移動してきたかも理解できるようになるため、より効果的になると考えています。」
2人はまた、学習プロセスに自己対戦、つまり機械自身と対戦させる手法を取り入れたいと考えている。GPT-2は、簡単すぎず難しすぎないレベルのゲームをプレイするように調整することができ、時間の経過とともに改善が見られるようであれば、それはGPT-2がゲームのルールを本当に学習できるという兆候となる。
最終的には、GPT-2がチェスプレイヤーとしてどれほど優れているかを、Eloレーティングを計算することで測定するために、人気のチェスエンジンであるStockfishに挑戦したいと考えています。それまでの間は、こちらの手順に従ってGPT-2と対戦することができます。®