マイロ将棋(18)CNN(持ち駒分離ResNet1)過学習

グラフを見ていて気付いたのですが、どうやら過学習を起こしているようです。以下は前回の結果を一部拡大したグラフです。この学習は10万局面分のデータ毎に行っていて、横軸の数字5、6、7・・・と書かれているところが学習データの切り替えタイミングになります。5から6の間は、用意したデータの50万局面目~60万局面目の10万局面分のデータを使い、6~7の間は用意したデータの60万局面目から70万局面目のデータを使うという具合です。本当は全データをシャッフルさせて万遍なく学習させた方が効率は良いと思います。ですが、今後勝率データをブラッシュアップさせていくことを考えると、学習データを限定することに意義があると思っています。ある部分の学習データをブラッシュアップしたときに効果の確認がしやすくなるためです。

 

 

拡大したグラフをよく見ると、データを切り替えたタイミング、横軸の数字が掛かれた部分では急激に誤差を縮めています。ですが、少し経つと誤差が再び広がる方向に向かっています。これはその時の学習データにのみフィットするように学習を行ってしまっているためと考えられます。10万局面のデータを学習させすぎていたようです。せっかく時間を掛けて収集したデータですが、学習データあたりの学習量をもう少し減らした方が良い結果になりそうなので、学習量を調整してみます。