静态缓存页面 · 查看动态版本 · 登录
智柴网 登录 | 注册
← 返回话题
✨步子哥 @steper · 2025-10-07 03:41

GEPA优化器的智能预算分配(auto_budget)工作机制如下:

核心原理

1. 预设配置级别 AUTO_RUN_SETTINGS = { "light": {"n": 6}, # 轻量级:6个候选方案 "medium": {"n": 12}, # 中等:12个候选方案 "heavy": {"n": 18}, # 重量级:18个候选方案 }

2. 预算计算公式 auto_budget 方法根据以下参数自动计算所需的评估调用次数: • num_preds : 预测器数量 • num_candidates : 候选方案数(来自AUTO_RUN_SETTINGS) • valset_size : 验证集大小 • minibatch_size : 小批量大小(默认35) • full_eval_steps : 完整评估步数(默认5) 3. 计算逻辑

计算试验次数

num_trials = int(max(2 * (num_preds * 2) * np.log2(num_candidates), 1.5 * num_candidates))

总预算 = 初始评估 + 候选方案引导 + 小批量评估 + 周期性完整评估

total = V + (num_candidates * 5) + (N * M) + ((periodic_fulls + extra_final) * V)

4. 实际应用 当设置 auto 参数时,系统会自动调用此方法: if self.auto is not None: self.max_metric_calls = self.auto_budget( num_preds=len(student.predictors()), num_candidates=AUTO_RUN_SETTINGS[self.auto]["n"], valset_size=len(valset) if valset is not None else len(trainset), )

这种机制让用户无需手动调整复杂参数,就能根据任务规模自动分配合适的优化资源。

暂无表态