Meta 宣布其优化平台 Ax 进入稳定版本(Ax 1.0)。Ax 是一个开源平台,面向研究人员与工程师,旨在将机器学习用于复杂且资源消耗高的实验与优化工作。过去几年里,Meta 在内部用 Ax 改进 AI 模型、加速机器学习研究、调优生产基础设施等。
面向复杂配置的“自适应实验”
Ax 特别适用于需要理解并优化 AI 模型或其他复杂系统配置的场景:当配置组合数量巨大时,几乎不可能用线性穷举的方式完成评估。Meta 研究人员将解决思路归结为自适应实验(adaptive experimentation):系统按序评估配置,并利用先前评估得到的洞察来引导后续探索,从而更高效地搜索解空间。
自适应实验非常有用,但运行成本也不低。它不仅需要用到更复杂的机器学习方法来驱动优化,还依赖专门的基础设施来管理实验状态、自动化编排、提供分析与诊断能力等。
Meta 表示,Ax 在内部覆盖了多类“黑盒优化”问题,包括但不限于:
- 机器学习中的超参数优化与架构搜索
- 寻找训练 AI 模型的最优数据混合比例
- 基础设施调参
- 编译器 flag 优化等
用 Ax 优化 LLM:提示词与示例选择
Ax 的一个有代表性的落地是优化大语言模型(LLM)。Meta 研究人员提供了较为完整的上手介绍,展示如何用 Ax:
- 写出更有效的 Prompt(提示词优化)
- 选择更合适的 few-shot 示例(让模型“遵循”的范例更有效)
- 在多轮试验中持续迭代改进效果
多目标优化:指标权衡与约束
在真实优化任务中,研究者往往需要同时提升多个目标指标,并满足约束与护栏(guardrails)。Meta 举例称,他们使用 Ax 做“多目标优化”,在提升模型准确率的同时,尽量降低资源消耗。
不只给最优点:让优化过程可解释、可诊断
除“找到更优配置”外,Ax 也被用于帮助用户理解被优化系统本身。Ax 提供一组分析能力(图、表等),用于:
- 跟踪优化随时间的进展
- 通过帕累托前沿(Pareto frontier)展示多指标之间的权衡
- 可视化 1~2 个参数在输入空间内的影响
- 通过敏感性分析解释各输入参数对结果贡献度
技术底座:PyTorch + BoTorch 的贝叶斯优化
Ax 使用贝叶斯优化(Bayesian optimization),基于 PyTorch 与 BoTorch 迭代测试候选配置。其核心流程是构建替代模型(surrogate model),用来挑选“最值得下一次评估”的配置,循环往复,直到达到目标或耗尽算力预算。
典型的替代模型是高斯过程(Gaussian process):它能够在数据点很少的情况下做出预测,并给出带不确定性的估计。
从工程实践角度看,Ax 的价值还在于其 API 表达能力与默认策略设计:既能描述复杂搜索空间,又能处理多目标、约束、噪声观测;同时支持并行评估与随时中止。对于不想成为优化专家的实践者,Ax 也提供了较合理的默认配置,使高级优化技术更易用。
生态对比:Ax 之外的替代方案与编排集成
Ax 并非唯一的开源黑盒自适应优化平台。常见替代方案包括 SMAC、Nevergrad、Optuna、Dragonfly 等。Meta 研究人员认为,Ax 在能力覆盖面上更广,例如可对参数与结果施加约束、并能更好处理噪声测量。
此外,Ax 及其替代方案通常还能与编排/调参框架集成,例如 Ray Tune 与 Hydra,便于将优化流程接入现有训练与实验流水线。对于需要在 Python 生态中进行大规模实验管理与模型调参的团队,这类集成往往能显著降低落地成本。
|