PPOモデルにPUCT探索自己対局を重ねたら弱体化した
探索を省いたPPO自己対局により、初期モデルn5_s1に対する勝率は約1時間で5ポイント以上伸びた。しかし初動の急成長のあとは、学習の進みが緩やかになる。一方、PUCT探索を用いた自己対局ループは、計算負荷が大きい反面、先読みによる質の高い教師信号が得られる。そこで、PPOで基礎性能を高めたモデルを出発点としてPUCT探索ループへ繋げば、探索の強みを活かしてさらに強化できると考えた。
資格試験を通過した100反復のPPOモデル(2系統)を出発点とし、Colab L4での学習時間を約52分に揃えて2つの進め方を比較した。一方は探索ノイズ(ε=0.10)のもとでPUCT自己対局を16世代進める探索ループ、もう一方は同一条件のPPOをそのまま132反復(計232反復)継続するPPO継続である。評価には1手128回探索のPUCT-128を用い、直接対決および初期モデルn5_s1との対戦成績を測定した。
| 評価項目(PUCT-128) | 出発点 | 探索ループ(16世代) | PPO継続(132反復) |
|---|---|---|---|
| 直接対決(探索ループ vs PPO継続) | — | 43.7% | 56.3% |
初期モデルn5_s1に対する勝率 | 57.5% | 51.5% | 60.5% |
| 出発点からの勝率変化 | — | −6.0pt | +3.0pt |
結果は、探索ループ側の明確な劣後だった。直接対決において探索ループ側は43.7%にとどまり、初期モデルに対する勝率も出発点から6.0pt低下した。一方、PPOを継続した側は着実に3.0pt伸ばして勝率60.5%に達している。世代ごとの推移を追うと、探索ループ側は開始からわずか4世代で5.4pt落ち込み、16世代まで回しても回復しなかった。
| 探索ループの世代(512局面) | 0(出発点) | 4世代 | 8世代 | 12世代 | 16世代 |
|---|---|---|---|---|---|
n5_s1に対する勝率 | 58.9% | 53.5% | 51.2% | 51.0% | 51.5% |
| 出発点からの差 | — | −5.4pt | −7.7pt | −7.9pt | −6.0pt |
なぜ探索自己対局への移行が弱体化を招いたのか。学習条件の急激な変化が方策を損ねたと考えられる。PPOは学習率1e-5、クリッピング、KL制限による更新中断、スナップショットプールとの対戦など、方策の急変を抑える安全策を備えている。これに対し、探索ループはAdamWのモーメントを初期化し、学習率1e-4で自己対局の探索訪問分布に直接適合させる。この荒い更新によって、PPOで培った繊細な着手選択や局面評価が崩れたと見られる。実際、探索ループ移行後に方策エントロピーは1.2natsから1.4〜1.5natsへと広がり、候補手の絞り込みが甘くなっていた。なお、探索ノイズをε=0.10に抑えたことで山札予約の頻度は1局あたり0.7〜0.9回に収まっており、過度な山札予約が原因ではない。
探索を伴う自己対局は、PPOモデルへそのまま上乗せできる増幅器ではない。出発点へのアンカーや学習率の抑制がないまま探索ループへ繋ぐと、かえって方策を壊してしまう。当面はPPO単独での継続を標準とし、探索ループとの統合には学習率の引き下げや方策の急変を抑える緩和策が必要だと分かった。
この記事は、実装・実験記録をもとに、主にLLMが編集しています。