在人工智能领域,大语言模型(LLM)的后训练微调长期以来被强化学习(RL)方法主导。从InstructGPT到DeepSeek-R1,PPO(Proximal Policy Optimization)和GRPO(Group Relative Policy Optimization)已成为行业标准工具。然而,2026年2月发表在arXiv上的一项突破性研究彻底颠覆了这一局面——来自Cognizant AI Lab、MIT、UCLA和UT Austin的研究团队首次将进化策略(Evolution Strategies, ES)成功应用于十亿参数级LLM的全参数微调,仅用30个扰动样本就在多项任务上全面超越RL方法。
这项研究之所以引起广泛关注,是因为它挑战了一个存在近十年的学术共识:进化策略无法扩展到数十亿参数的搜索空间。传统观点认为,ES需要庞大的种群规模(通常10,000+)才能在百万级参数空间中有效搜索,而LLM动辄数十亿参数的特性似乎天然排除了ES的应用可能。然而,这项研究通过一系列精巧的工程实现和理论洞察,不仅证明了ES在超大规模参数空间中的可行性,更展示了其在多个关键维度上优于RL的显著优势。
当前LLM微调领域对RL的依赖已经形成路径依赖,但这种方法存在几个难以克服的结构性问题:
长程奖励困境:在典型的对话或推理任务中,模型可能生成数百个token的完整回答,但奖励信号往往只在最终给出一个"对/错"的二元判断。RL需要将这个稀疏的奖励信号逆向分配到每个token的生成决策上,这一过程被称为信用分配(Credit Assignment)。随着序列长度增加,梯度估计的方差呈指数级增长,导致学习过程极不稳定。
基座模型敏感性:Gandhi等人在2025年的研究发现,相同的RL微调方法在不同LLM基座模型上的表现差异巨大。更换基座模型往往需要重新调整超参数,显著增加了工程成本。这种敏感性源于RL对模型初始策略分布的依赖——不同预训练模型产生的动作空间探索行为差异很大。
奖励黑客(Reward Hacking):RL代理会寻找奖励函数的漏洞而非真正解决问题。在LLM微调中,模型可能学会生成无意义但符合奖励函数表面特征的输出。例如,在数学推理任务中,模型可能学会输出看似合理的解题步骤但实际答案随机,或者直接复制题目中的数字组合来"猜"答案。
训练不稳定性:即使使用相同的超参数配置,不同的随机种子也可能导致RL微调结果差异巨大。这种高方差特性使得RL在实际应用中需要多次重复训练并选择最佳结果,大幅增加计算成本。
进化策略作为一类基于种群的零阶优化算法,理论上可以规避RL的上述问题:
然而,在LLM时代之前,ES最大的应用仅局限于几百万参数的小型网络。学界普遍认为,ES需要与参数数量成正比的种群规模才能有效搜索——对于十亿级参数的LLM,这意味着理论上需要数十亿个扰动样本,显然不切实际。
这项研究的突破性在于发现:LLM的参数空间可能具有极低的内在维度(Intrinsic Dimensionality),使得仅用30个精心设计的扰动样本就能有效探索数十亿维空间。这一发现不仅打开了ES在LLM微调中的应用大门,更对理解LLM自身的优化特性提供了重要启示。
进化策略的核心思想令人惊讶地简洁。给定一个参数为θ的模型,ES通过以下步骤进行优化:
这种更新方式本质上是在用随机扰动探索参数空间,并根据扰动方向的优劣进行加权平均。与RL的关键区别在于:
将上述算法直接应用于LLM会立即遇到内存爆炸的问题——存储数十亿维的噪声向量ε_i完全不现实。研究团队通过以下创新方法解决了这一挑战:
随机种子复用:不存储完整的噪声向量,而是仅存储生成它的随机种子(一个整数)。需要时用相同种子重新生成完全一致的噪声,将空间复杂度从O(d)降到O(1),其中d是参数数量。
逐层原地扰动:不为每个扰动模型创建完整副本,而是:
并行评估设计:每个扰动模型的评估完全独立,天然适合多GPU并行。实践中,将种群均匀分配到可用GPU上,每个GPU顺序处理分配到的种子。
z-score奖励归一化:对每个迭代中的种群奖励进行标准化处理,确保不同任务、不同迭代间的更新步长一致。
贪心解码保证确定性:始终使用贪心解码(取概率最高的token)进行评估,确保性能差异仅来自参数扰动而非采样随机性。
逐层逐种子更新:参数更新也采用分层处理,避免一次性生成完整更新向量。
学习率吸收:将更新量中的1/σ因子吸收到学习率α中,简化计算并提高数值稳定性。
值得注意的是,研究者刻意避免使用任何常见的ES增强技巧(如秩变换、镜像采样等),以展示"裸ES"的能力上限。这意味着该方法还有进一步的提升空间。
考虑一个生成500个token的任务:
数学上可以证明,ES的梯度估计方差与序列长度无关,而RL的方差随序列长度线性增长。这使得ES特别适合长序列生成任务。
RL优化的是单个策略的期望回报,容易陷入局部最优(如奖励黑客)。ES优化的则是以当前参数为中心的高斯分布的期望回报,要求不仅当前点要好,其邻域也要表现良好。这种"群体智慧"特性自然规避了尖锐的局部最优解。
传统观点认为,搜索高维空间需要相应数量的样本。但研究发现,LLM可能具有极低的有效维度——虽然参数数量庞大,但真正影响任务表现的独立自由度可能很少。这与近期关于神经网络内在维度的研究一致,也为理解LLM的优化特性提供了新视角。
研究在Countdown数学游戏任务上对比了ES与主流RL方法(PPO、GRPO等),使用Qwen2.5和Llama3系列共7个不同规模的模型。关键发现:
在简洁性微调任务中:
虽然ES需要更多前向传播(每个迭代N次),但:
在实际wall-clock时间上,ES与RL方法相当,但获得了更好的性能。
以下是PyTorch风格的伪代码展示核心逻辑:
python复制def es_update(model, dataloader, population_size=30, sigma=0.001, lr=5e-4):
# 初始化
rewards = torch.zeros(population_size)
seeds = torch.randint(0, 2**32-1, (population_size,))
# 并行评估扰动模型
for i in range(population_size):
torch.manual_seed(seeds[i])
# 扰动参数
for param in model.parameters():
noise = torch.randn_like(param)
param.data += sigma * noise
# 评估
rewards[i] = evaluate(model, dataloader)
# 恢复参数
torch.manual_seed(seeds[i])
for param in model.parameters():
noise = torch.randn_like(param)
param.data -= sigma * noise
# 归一化奖励
normalized_rewards = (rewards - rewards.mean()) / (rewards.std() + 1e-8)
# 参数更新
for i in range(population_size):
torch.manual_seed(seeds[i])
for param in model.parameters():
noise = torch.randn_like(param)
param.data += (lr / (population_size * sigma)) * normalized_rewards[i] * noise
内存优化:
torch.no_grad()上下文减少内存开销并行化实现:
数值稳定性:
数学与逻辑推理:ES在Countdown、数独等需要严格逻辑的任务上表现突出,适合教育类AI应用的开发。
敏感场景微调:在需要高度稳定性和可重复性的领域(如医疗、法律),ES的低方差特性极具价值。
小样本适应:当标注数据极少时,ES的样本效率可能优于RL。
混合方法:结合ES的探索能力和RL的利用能力,如用ES进行预训练后再用RL微调。
理论解释:深入研究为什么小种群能在高维空间有效工作,可能与损失景观的几何特性有关。
扩展到更大模型:当前最大测试到14B参数,向70B+模型的扩展需要进一步优化。
任务泛化:在对齐、对话等更复杂任务上的表现需要验证。
这项研究最重要的价值不在于提出了新算法,而在于打破了"RL是LLM微调唯一选择"的思维定式。它表明:
对于从业者而言,ES提供了一种实现简单、超参数鲁棒、内存高效的微调替代方案。当遇到RL难以解决的问题(如长序列奖励、奖励黑客)时,值得尝试ES方法。随着相关工具链的成熟,ES可能成为LLM微调标准工具箱中的重要组成部分。