複雑なゲームの場合は人間が実際に打った棋譜などを膨大な量用意することになりますが、今回は○×ゲームという簡単なお題を使った練習なので、筆者が予め最善手を打った場合のデータを作成しておきました。 モデルの詳細 盤面のデータをニューラルネットに入力する際には、×は「-1」、○は「+1」、空いている場合は0として扱うことにします。○×ゲームの盤面は 9マスなので、ニューラルネットの最初の層のノード数は 9 個になります。 そして、全結合のネットワークを経て最終的には、×が勝つ確率・○が勝つ確率・引き分けの確率の3つの数値が出力されるというモデルです。 図3 学習モデルの概要 TensorFlow を使った実装 本稿で使用するサンプルコードのうち、TensorFlow で記述された学習用コード train.py の重要な部分について簡単に解説をしておきましょう。 TensorFlow にはニューラ
![第8回 TensorFlow で○×ゲームの AI を作ってみよう|Tech Book Zone Manatee](https://cdn-ak-scissors.b.st-hatena.com/image/square/88e4285befd03508fc6d0b9969d98d9be9d73f7f/height=288;version=1;width=512/https%3A%2F%2Fbook.mynavi.jp%2F%2Ffiles%2Ftopics%2F76390_ext_14_0.jpg)