定义 / 核心思想
进化策略(Evolution Strategies, ES)是一类零阶(无梯度)黑盒优化方法:不依赖反向传播求梯度,而是在参数空间里采样一批扰动,根据每个扰动点的目标函数值(reward/loss)反推出一个“近似梯度“方向,再更新参数。
和传统遗传算法(GA)不同,ES 不做选择/交叉/变异这种离散的种群进化操作,而是维护一个连续分布(通常是各向同性高斯分布)的均值和方差,用采样估计自然梯度来更新均值——本质上更接近有限差分梯度估计,只是用了更聪明的(对称采样、rank-based fitness shaping 等)方差缩减技巧。
关键公式
以 OpenAI-ES(Salimans et al. 2017)为例,用协方差为 σ²I 的高斯分布在参数 θ 附近采样 n 个扰动 εᵢ,评估目标函数 F,更新规则:
1 | θ_{t+1} = θ_t + α / (n·σ) · Σᵢ F(θ_t + σ·εᵢ) · εᵢ |
直觉:如果某个扰动方向 εᵢ 带来了更高的 F,就把参数往这个方向多推一点;这其实是目标函数关于高斯分布均值的梯度的蒙特卡洛估计。
对称采样(mirrored sampling):同时评估 +εᵢ 和 -εᵢ,能显著降低估计方差,是实践中几乎必用的技巧。
常见理解误区
- ES 不是遗传算法:没有“种群淘汰/交叉“,是连续分布上的(近似)梯度估计。
- ES 的样本效率通常低于 SGD/Adam 这类一阶方法(需要更多次目标函数评估才能收敛),但优势在于:目标函数不需要可微(比如奖励是离散的、不连续的),且天然适合大规模并行(每个扰动的评估互相独立)。
- 参数量越大,需要的采样次数通常也越多(估计方差随参数维度增长),所以 ES 更常用在参数量相对可控、或允许海量并行评估的场景。
我在项目中的应用
在南方科技大学 CIAM 实验室的主要研究方向:ES 算法与模型融合算法的设计与改进研究(零阶优化是次要方向),从事算法研究而非单纯文献调研,论文投稿中。
TODO: 补充具体在做的 ES 变体、和模型融合结合的方式、目前的实验设置和结果。
参考资料
- Salimans et al., “Evolution Strategies as a Scalable Alternative to Reinforcement Learning” (2017)
- Wierstra et al., “Natural Evolution Strategies”