Pythonによる深層学習でオセロAIを作ります. オセロの局面を入力としたときに次の一手を言い当てる方策ネットワーク,その局面からの勝率(局面の価値)を予想する価値ネットワークを棋譜を訓練データとして学習する方法と 深層強化学習によるオセロAIの実装を紹介します. 実際にオセロAIと対局してみたい方はこちら 深層学習にはTensorFlow 深層強化学習にはTF-Agentsを利用します.
与えられた局面から次の一手を予想する方策ネットワークを作ることを目標とします. そこそこの強さ(?)のAIが出来上がります.
与えられた局面から勝率を予想する価値ネットワークを作ることを目標とします. そんなに予測精度は高くなりません.
方策ネットワークと価値ネットワークを同時に学習することで予測精度の向上を図ります. 残念ながら精度は上がりませんでしたが,TensorflowのFunctional APIを使ったマルチタスク学習の簡単な実装例があります.
8×8オセロで犯した失敗や試したこととその結果についてまとめています.
ネットから棋譜を得ることのできない6×6のオセロについて深層学習と強化学習の考え方の融合である深層強化学習を使うことでオセロAIを実装します. 実装にはTF-Agentsを利用します.
参考にした書籍やサイトなどを紹介しています. ぶっちゃけ私の書いた文章を読むよりもここで紹介している書籍やサイトを読む方が効率がいいと思います.