ディープラーニングを使ったコンピュータ将棋
以前からディープラーニングを使ったコンピュータ将棋に興味を抱いていたが、
書籍が高価なことと新たな環境構築が必要なことから二の足を踏んでいた。
そんな時、技術書典マーケットで以下の手ごろな価格のブックレットを発見した。
環境構築
必要な環境は
⚫ Python 3.6.5(Anaconda3 5.2.0 64bit)以上
⚫ TensorFlow r1.13.1
⚫ CUDA 10.0
⚫ cuDNN 7.4.1 以上
とのことであったが、
Windows10のconda仮想環境で2021/2/20に構築できたのは、以下であった。
$ conda list -n tfgpu114
anaconda 2020.07 py36_0
cshogi 0.1.1 pypi_0 pypi
cudatoolkit 10.0.130 0
cudnn 7.6.5 cuda10.0_0
python 3.6.10 h9f7ef89_2
tensorflow-gpu 1.14.0 h0d30ee6_0
ノートPC: MSI GP62 6QE Leopard Pro
学習
2015-2018年のfloodgateの棋譜を、教師あり学習での事前学習を行ったところ、
モデル作成完了まで半日以上かかった。
なお、GPU1080だと4時間程度との記載があった。
推論
将棋所にエンジン登録するバッチファイルmcts_player.batのカスタマイズに手こずった。
@echo off cd D:\Develop\Shogi\dlshogi-zero call D:\anaconda3\Scripts\activate.bat tfgpu114 python -O -m dlshogi_zero.usi.usi_mcts_player 2>NUL
今後
ディープラーニングの画像認識は比較的理解しやすいが、
強化学習は、わたしには難解でその内容自体をおいおい理解できるようになりたいと思う。