3駒関係の評価関数の限界について

Aperyの評価関数がそろそろサチって(飽和して)きたのではないかと噂されています。平岡さんのこのようなツイートもあります。

・自己対局では強くなっていたのに他のソフトとの対局において勝率が下がる。
・短い持ち時間の対局では強くなっていたのに長い持ち時間での対局では勝率が下がる。

これらはどういう理屈で起きるのでしょうか?

例えば、駒の当たり(相手の駒に見方の駒の利きがあって、自分の手番であればその駒が取れる状態)に加点すると、駒の当たりになっている局面に対して評価関数は高めの評価値を出すようになります。

高めの評価値である以上、そちら方面を重点的に探索するようになります。終盤ではこのようなことがプラスに作用するので、短い持ち時間で即終盤に突入するような将棋では、このような加点によって勝率は上がります。

ところが長い持ち時間においてはこのような加点は、局面評価としてそもそも適切ではなく、結果的に弱くなることがあります。

短い持ち時間と長い持ち時間と比較して、勝率が下がるのは簡単に言うとだいたいこんな原因です。

また、同じソフト同士の対局であれば、駒の当たりを高めに評価したほうが、詰みに絡むような局面(駒が当たっていることが多い)においてわずかに先まで読めるので、見かけの勝率が上がることがあります。しかし、他のソフトと対局させてみると、読み筋そのものが違うので、相手よりわずかに先まで読めていることにはならず、(そのような不適切な加点だと)勝率はむしろ下がります。

もともと、Apery(WCSC26)の評価関数は、プロの棋譜から学習したもので、学習棋譜が足りないがために、適切な値がついていないところは結構ありました。そこに適切な値をつけることで+R150ぐらいは強くなる(なった)のが現状ですが、ここらへんで3駒関係の評価関数としての表現の限界に近くなっているので、終盤に出現しやすい特徴に加点すると序盤が弱くなる、みたいな現象が起こります。

あちらを立てればこちらが立たず、みたいな状態ですね。

私のほうではdepth 3で教師局面を生成して学習を回していたのですが(平岡さんはdepth 6)、だいたいこのへんでサチっていましたので、このへんが限界に近いところなのだとは思っています。ここからあとどれだけの雑巾が絞れるのかはよくわかりません。depthを上げると雑巾がさらに絞れるのかどうかも…。

ここからは機械学習のコンペティションのように、学習手法を変えたり、学習率を調整したりして、わずかな雑巾を絞り合う厳しい世界が待っているのかも知れませんね。

3駒関係の評価関数の限界について」への5件のフィードバック

  1. 他のソフトとの対局では、局面の点数のつけ方におかしい点があると、そこに付け込まれてしまう。自己対局では、両者とも「局面の点数のつけ方におかしい点」をおかしいと思わにので、付け込まれることはない

    短い持ち時間だと、水平線効果をごまかせるようなのが勝率が高い。長い持ち時間だと、水平線効果をごまかす必要があまり無い。

  2. 羽生さんは10手先を当てるのは不可能とか言ってましたので、Depth10まで学習させればいいんじゃないかな。(適当)

    評価パラメータの味付けは60手までを重点的にやればどうだろう。
    この間の定跡対局で対技巧推移を見ていると、
    初手~30手:評価+300だと技巧が定跡自爆した感じで100手以内に詰ましています(勝率100%)
    初手~30手:評価+150を60手までで+300に伸ばしている棋譜なら内容は完封状態で130手くらいで詰ましています(勝率100%)
    初手~30手:評価+150を60手までキープ出来るとそのまま流れをつかんで160手くらいで詰ましています(勝率90%)
    31手~60手間で評価+-100以内だと長手数になりやすい。どっちが勝つか分からない(勝率50%)
    これらがトータルして勝率7割超えでした。

    • > 評価パラメータの味付けは60手までを重点的にやればどうだろう。

      60手目までだと入玉の形が出てこないのでまずいような気がします。

  3. 評価値が1次元なのが気になってます。

    中盤以降、将棋の局面評価は自玉の安全度と敵玉の安全度の2次元で図るべきで、
    有利か不利か、攻めるべきか守るべきかの評価はその後だと思います。

    有利不利ではなく、玉の安全度を3駒関係で学習する
    2次元評価マップから有利不利への1次元評価に変換する戦略テーブルを学習する
    という2段階が必要になりますが。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です