DeepLearningによる将棋の学習7~フィルタ数の変更~

 フィルタ数を256にして実験してみました。

 損失の比が1:1の場合

Epoch Total Loss Policy Loss Value Loss Move Accuracy Value Accuracy
1 3.9012 3.3180 0.5833 0.2844 0.6544
2 3.4626 2.8997 0.5630 0.3194 0.6710
3 3.2766 2.7227 0.5539 0.3407 0.6819
4 3.1787 2.6200 0.5587 0.3514 0.6841
5 3.1518 2.5581 0.5938 0.3606 0.6776
6 3.1222 2.5166 0.6057 0.3661 0.6785
7 3.1237 2.4928 0.6309 0.3681 0.6770
8 3.1259 2.4712 0.6547 0.3718 0.6764
9 3.1711 2.4665 0.7046 0.3728 0.6740
10 3.1869 2.4692 0.7177 0.3742 0.6748
11 3.2392 2.4728 0.7664 0.3733 0.6735
12 3.2619 2.4747 0.7872 0.3741 0.6717
13 3.2887 2.4768 0.8119 0.3761 0.6696

 損失の比が1:0.01の場合

Epoch Total Loss Policy Loss Value Loss Move Accuracy Value Accuracy
1 3.3156 3.3090 0.6593 0.2834 0.5909
2 2.8898 2.8834 0.6388 0.3241 0.6097
3 2.7190 2.7127 0.6262 0.3418 0.6196
4 2.6072 2.6010 0.6199 0.3549 0.6245
5 2.5365 2.5303 0.6135 0.3603 0.6298
6 2.4879 2.4818 0.6082 0.3686 0.6344
7 2.4555 2.4495 0.6045 0.3722 0.6367
8 2.4368 2.4307 0.6018 0.3753 0.6388
9 2.4318 2.4259 0.5982 0.3756 0.6418
10 2.4138 2.4078 0.5952 0.3798 0.6441
11 2.4311 2.4251 0.5946 0.3785 0.6441
12 2.4338 2.4278 0.5929 0.3803 0.6452
13 2.4469 2.4410 0.5937 0.3783 0.6453
14 2.4570 2.4511 0.5925 0.3789 0.6469
15 2.4788 2.4729 0.5911 0.3769 0.6468
16 2.4921 2.4862 0.5890 0.3783 0.6484
17 2.5086 2.5027 0.5892 0.3781 0.6487

 グラフでは

 損失が1:1の場合 f:id:tokumini:20180423151142p:plain

 損失が1:0.01の場合 f:id:tokumini:20180423151205p:plain

損失最小の時点での結果

比(Move:Value) Total Loss Policy Loss Value Loss Move Accuracy Value Accuracy
1:1 3.1222 2.5166 0.6057 0.3661 0.6785
1:0.01 2.4138 2.4078 0.5952 0.3798 0.6441

 損失が1:1のとき、PolicyとValueでピークがあってないように見えるのが気になるんですね。その点1:0.01にすると無理やりValueの変化を小さくできているような……。しかしValueがまだ学習できるような感じにも見えます。この中間くらいでしょうかね。

 澤田さんの本を読んでも思ったのですが、目的意識もないままによくわからない実験を繰り返しているのは良くないですね。何かしらの仮説があって、それを検証するような実験を行いたいです。

 まぁしかしいろいろなネットワークを試していた結果、結局5ブロックのCNNで良いんじゃないかとわかってきたのは成果なのかもしれません。

 そろそろ強化学習の方に手を付けていきたいと思っていますが……。