ネットワークの変遷
アーキテクチャ変更と実測結果の記録です。現在構造は アーキテクチャ、初期診断は 構造分析 を参照してください。
初期形
基準構成は pair16_d128_o3_h512。固有トークンを 2 視点で読み、3 次までのべき和、16 チャネルのペア表、1 隠れ層、価値・方策ヘッドを持ちます。v3 で policy_from を追加しました。
設計上の条件は、W1 より前をトークン和として表し、差分更新を壊さないことです。
A–E
| 案 | 変更 | 狙い | 推論コスト |
|---|---|---|---|
| A | pair_dim / order | 基準要素の寄与を測る | 構成依存 |
| B | hidden2 | ヘッドを深くする | 全結合層を追加 |
| C | moment_dim | チャネル間の二次相互作用 | W1 拡大 + 更新計算 |
| D | 平行移動共有ペア学習 | 学習効率 | 書き出し後は 0 |
| E | field_dim | マス単位の文脈 | W1 拡大 + 方策フィールド |
B — 第2隠れ層
h2N は W1 後に ReLU 層を 1 段追加します。差分更新は壊しませんが、全評価ノードで追加計算が必要です。
C — 二次モーメント
mN は M = Σ v(z)v(z)ᵀ を保持します。トークン和なので差分更新でき、通常の要素ごとの対称多項式にはないチャネル間相互作用を渡せます。
D — 平行移動共有
学習時だけペア行を共有し、駒種と相対変位を利用します。書き出し時に通常のペア表へ焼き込むため、エンジン側の形式は変わりません。
E — 盤面フィールド
fN は A[s] = Σ K[token,s] を保持します。集約後もマス単位の情報を残し、方策が移動先の文脈を直接読めるようにします。
A–E の測定
1エポックの教師あり重みを Simulations = 0 で総当たりし、探索を除いた方策品質を比較しました。8 構成は同じ乱数シードとコーパスで独立に学習しています。
方策のみ総当たり — 2026-08-25
| 構成 | おおよその Elo | 方策 top1 | 価値符号一致率 |
|---|---|---|---|
| field4 | +50 | 37.1% | 69.0% |
| field2 | +31 | 36.6% | 68.2% |
| base | +12 | 36.0% | 69.6% |
| order2 | ~0 | 36.4% | 69.4% |
| pairtie | ~−1 | 36.3% | 70.2% |
| moment16 | −8 | 36.3% | 69.0% |
| pair0 | −35 | 36.0% | 70.5% |
| hidden2-256 | −49 | 35.4% | 69.8% |
結論:
- 盤面フィールドは有効。
field2/field4だけが初期形を明確に上回った。 - ペア表は有効。 削除すると弱くなった。
- 第2隠れ層は悪化。
hidden2=256は最下位。 - 二次モーメントは改善しなかった。
- 3 次 → 2 次は、この方策のみ試験ではほぼ差がなかった。
- 平行移動共有はほぼ中立。推論コスト 0 という利点は残る。
この結果はその重み群だけに適用します。後日の検証は別重みなので、順位が違っても矛盾とは扱いません。ネットワーク比較 を参照してください。
速度は別に測る
hidden2、moment、field は評価ノードごとの計算を増やします。本番構成は方策 Elo や検証値だけでなく、同一時間条件の Elo で判断します。現在速度は ベンチマーク を正本とします。
後続の集約案
A–E の結果から、単純にヘッドを深くするより W1 より前での情報集約を重視する方向へ移りました。
| 案 | 内容 | 状態 |
|---|---|---|
| F | lseN: log-sum-exp ペアチャネル | 実装済み |
| G | ks: RMS 正規化で捨てる大きさを保持 | 実装済み |
| H | ハッシュ分割集約 | 未実装 |
| I | トークンごとの 周辺ペア和 | 未実装 |
| J | 1 手先のペア差分 | 未実装 |
| K | 出力バケット / ゲート付きヘッド | 未実装 |
| L | 視点間の積プーリング | 未実装 |
| M | 学習時のみのペア因子分解 | 未実装 |
F — log-sum-exp
通常のペアチャネルは有効な 780 行を合計するため、1 つの重要な関係が薄まる可能性があります。lseN は既存 N チャネルを
log Σ exp(θ_pair)へ振り替えます。表幅は増やしません。exp(θ) を書き出し時に表へ焼き込むため、差分更新は従来どおり加減算で行えます。
G — 大きさを残す
ks は正規化後の方向に加え、log(rms(block)) をヘッドへ渡します。将棋では駒の総数が常に 40 なので、ブロックの大きさも局面情報になり得ます。
後続測定
2026-08-26 の共通検証には lse4、ks、lse4ks が含まれますが、全指標で一貫した勝者は出ていません。CE と top1 が異なる順位を作ります。ネットワーク比較 を参照してください。
pair64full も top1 は高い一方 CE は悪く、単一指標だけで構成を決められない例になっています。
現在の切り替え
現在はさらに次を使えます。
kp/halfkp— NNUE 特徴量空間nnue— NNUE 書き出し互換の演算split— 固有トークンのべき和を自駒・相手駒で分離
これらは元の F–M とは別に追加された現行機能です。定義は アーキテクチャ、KP / HalfKP の測定は NNUE特徴量比較 を参照してください。
DLManaka との違い
Manaka と DLManaka は同じ 2,187 方策ラベルを使いますが、最初の表現が違うため速度の稼ぎ方も異なります。
Manaka
トークン寄与を小さいアキュムレータへ集約し、1 手で変わった部分だけを差分更新します。その代わり、集約方法によって盤面の空間情報を失いやすくなります。
DLManaka
9×9 の空間特徴マップを残差 CNN の最後まで保持します。畳み込み・非線形層・SE により変化が広がるため、Manaka のような小さい加算状態だけでは更新できません。局面全体を GPU バッチで再評価します。
比較
| Manaka | DLManaka | |
|---|---|---|
| 主対象 | CPU | GPU |
| 局面状態 | 小さい加算アキュムレータ | 空間特徴マップ |
| 差分更新 | あり | なし |
| バッチ | 補助的 | 重要 |
| 空間情報 | 盤面フィールドなしでは圧縮される | CNN 全体で保持 |
現在の速度値は 共通ベンチマーク を正本とします。
論点は、Manaka が差分更新の利点を残しながら、どこまで空間情報と方策品質を取り戻せるかです。