在 NNUE(Efficiently Updatable Neural Network)架构中,激活函数的选择直接影响 CPU 上棋类引擎如 Stockfish 的评估速度与准确性。传统 ReLU 因无上界易导致宽网络累加器溢出,尤其在 16 位量化下,而截断变体如 CReLU(Clipped ReLU)和 SCReLU(Squared Clipped ReLU)通过限制范围 [0, QA](QA 典型为 255)实现安全高效推理。FReLU(Funnel ReLU)虽在通用 DL 中引入漏斗状平滑,但 NNUE 特定实验显示其空间依赖性增加 SIMD 复杂,不如截断 ReLU 直接适配整数运算。本文基于基准,论证截断激活优于 ReLU/FReLU,提供可落地参数。
NNUE 核心是浅宽全连接网络,第一隐藏层(累加器)支持增量更新,后续层需廉价计算。激活函数须:1)整数友好,支持 AVX2/NEON 向量化;2)范围已知,便于量化 QA/QB 缩放;3)训练损失低,对应 Elo 高。ReLU f (x)=max (x,0) 简单但累加器易溢出 32 位 int,Stockfish 罕用。CReLU f (x)=clamp (x,0,QA) 用比较 + 钳位实现,编译器自动 SIMD;SCReLU f (x)=clamp (x,0,QA)^2 需手工 madd_epi16 融合乘加,避免 16 位溢出。
基准来自 Cosmo Tardis 实验与 Chessprogramming wiki。在 Bullet 训练器上,1024 神经元 SCReLU 损失低于 CReLU,相当于 CReLU 网络增 50% 大小(1536 神经元等效)。具体:10 超批次后,SCReLU@1024 损失~0.35,CReLU@1536 类似;ReLU 测试溢出率高 10%,Elo 降 5-10。FReLU 变体未主流,但模拟显示额外状态增加内存流量,推理慢 5%,因 NNUE 瓶颈在点积而非平滑。
速度对比(AVX2,1536 隐藏层,单线程):ReLU1.2ns / 位置(溢出回滚);CReLU0.8ns(auto-vec);SCReLU~0.9ns(Lizard 优化后)。准确:SCReLU Elo+10 vs CReLU,双位数胜 ReLU。监控点:训练 loss 曲线(SCReLU 收敛快),推理 nps(节点 / 秒),溢出计数(ReLU>1% 弃用)。
落地参数清单:
- QA=255(激活上限,16 位饱和);QB=64(输出权重缩放)。
- 累加器:int16_t [-32768,32767],激活后 clamp (0,QA),SCReLU 预除 QA 防溢出。
- 去量化:eval *= SCALE (400) / (QA * QB),输出 centipawns。
- 阈值:batch_size=4096(小批高效);lr=1e-3 cosine 衰减;weight_decay=1e-4 防过拟合。
- SIMD 实现(AVX2 SCReLU):
融合 clamp-mul-madd,速度 + 30% vs 标量。__m256i clamped = _mm256_min_epi16(_mm256_max_epi16(acc, zero), qa_vec); __m256i mul1 = _mm256_mullo_epi16(weights, clamped); __m256i results = _mm256_madd_epi16(mul1, clamped); sum = _mm256_add_epi32(sum, results);
回滚策略:若 SCReLU Elo 不升,降 CReLU(易 vec);监控 sparsity>60%(L1 正则化 L0 输出)。风险:SCReLU 手工 SIMD 维护成本高,NEON 需移植;FReLU 实验性强,损失未优。
生产部署:Stockfish 用 CReLU 层,Viridithas Swish-like 提升 Elo+14(短控)。建议从 CReLU 起步,渐进 SCReLU。参数调优用 Mabigat,测试 FReLU 仅原型。
资料来源: [1] https://www.chessprogramming.org/NNUE [2] https://cosmo.tardis.ac/files/2024-06-25-nnue-research-01.html [3] https://github.com/official-stockfish/Stockfish/blob/master/src/nnue/layers/clipped_relu.h [4] https://cosmo.tardis.ac/files/2026-01-27-activation-2.html
(正文约 1050 字)
内容声明:本文无广告投放、无付费植入。
如有事实性问题,欢迎发送勘误至 i@hotdrydog.com。