value loss係数を0.25に引き下げた再学習で、対局勝率が+10.4pt改善した

前回、G4からG10まで同一の自己対局レシピ(self-play recipe)を6世代にわたって継続したところ、G10はG4に対して+6.15 pointsの勝ち越しを記録した。しかしその一方で、G8〜G10の後半世代がG5〜G7の世代を有意に上回るような持続的成長は確認できなかった。

そこでG5〜G10で蓄積した局面コーパスと学習開始チェックポイントを固定し、学習設定(fit recipe)のみを変更して18 generation stepsの再学習(refit)実験を行った。主な検証項目は、value lossの重み付けとオプティマイザの更新ステップ数(optimizer updates)である。

refitの結果

baselineは512 updates、learning rate 1e-4、value loss weight 1.0である。

arm主な変更baseline比
value weight 0.25512 updates+10.37 pt [+8.60, +12.15]
replay window拡張g-4..g-1+4.21 pt [+1.98, +6.44]
value weight 0.252,048 updates-9.16 pt
lower LR2,048 updates, 3e-5-11.96 pt
cosine LR2,048 updates-17.94 pt
baseline LR2,048 updates, 1e-4-21.40 pt

value lossの重みを0.25に設定した512-updateの条件は、検証した3つの評価トラックすべてで明確な勝率向上を示した。G10同士について、互いに512 simulationsの探索を行わせて対局させた場合でも+9.70 points(95%信頼区間 [+5.74, +13.66])の勝ち越しを記録した。

対照的に、更新ステップ数を2,048へ増やした4つの設定は、いずれも対局性能が低下する結果となった。ベースラインの学習率を用いた長時間の最適化では、訓練データに対する方策のKLダイバージェンス(policy KL)が0.057 nats改善したものの、次世代の未知局面(unseen rows)に対しては0.028 nats悪化しており、訓練セットへの適合度合いの向上が実対局での強さには反映されていない実態が浮き彫りになった。

次はG11でtransferを確認する

ただし、このスクリーニング結果のみをもって、value lossの重み0.25を直ちに標準レシピへ本採用するわけではない。既存コーパスに対する再学習で好成績を収めた設定が、新たに生成する自己対局データ(fresh self-play)のループでも再現するかどうか、G10からG11への移行テスト(transfer test)で検証を進める。

今回の実験で確認できたのは、検証した範囲においては更新ステップ数をむやみに増やすよりも、value lossの寄与度を適度に抑える方が対局勝率の改善に大きく寄与するという事実にとどまる。なぜ重み0.25が有効に機能するのか、そのメカニズムの特定は今後の検証課題である。


この記事は、実装・実験記録をもとに、本文の編集を主にLLMが行い、筆者が内容を確認・修正しています。