今回は自己対戦棋譜からの学習について少し書いてみます。
自己対戦棋譜からの学習についてですが、学習棋譜の数が少ないと弱くなります。また、自己対戦のときの持ち時間が少ないと弱いプレイヤーとなり、棋譜の質が下がるのでこの場合も弱くなります。
自己対戦→学習→自己対戦→…のイテレーション(反復)の時間を最小化しようと思ったとき、学習時間は棋譜の数には依らないものとしても、
・生成する棋譜の数
・棋譜の質(自己対戦のときの持ち時間)
の2つのパラメーターを最適な値に持っていく必要があります。
棋譜の数が少なかったり、自己対戦の持ち時間が少なかったりすると1回のイテレーションによって強くなるどころか弱くなりかねないからです。
また、この1回のイテレーションにより、R(棋力)がいくら上がるのかというのも考慮した上で、最小の時間でRが最大あがる値を決めたいです。
このへんの最適値が見つかれば、一種のブレイクスルーになるかも知れません。
つまり、現状、floodgateでもR3000以上の強いソフト同士の対局棋譜というのは数万局程度しかないわけですが、これでは3駒関係を学習させるには全然足りない(50万局ぐらいは欲しい)ので、これを補える可能性が出てきます。
例えば、強いソフトで対局させた1手0.1秒の対局棋譜でも十分ということがわかれば、50万局ぐらいすぐに(?)用意できますしね。
まあ、上の2パラメーターの最適値は、評価関数の形や探索部に依存するので、一般化するのは難しいかも知れませんが…落ち着いたら、実験してみようと思っています。
そういえばふと思ったのですが、やねうら王miniはどうしてこの名前なのでしょう?
やねうら王
ひようら王
ひまうら王
ブラうら王
と来れば、miniうら王 が命名規則的に正しいような……。
それは、このあと、やねうら王nanoとかやねうら王touchとかを公開するための伏線…。
大丈夫ですか?
かなりオオカミオジサンモードになってるような?
やねうら王miniを年内に公開するので、まずは鎮座して待たれよ。
学習用の棋譜は、全盤面食わせたいところですが、そんなことは言ってられないですよね。
そこで、どういう棋譜が優れているかという基準になるんでしょうか。
プロの棋譜を使っても件のAwakeのようにメタられてやられてしまうこともあり得るわけで、いかにバグを通さない格子ネットを構成するかという点にあるかもと思います。
そのためには、同じ棋譜の連続ではたぶん無理なので、メタに対するメタを振り続けるのがいいのかもしれませんが、テクニカルな手ばかりということにもなるのかもしれませんね。
ある程度限定数のメタに対するメタを循環させて反復学習してみるとかどうでしょうか。
黄金の棋譜サイクルが見つかったら相当面白いと思います。