SMAC
文章目录
multi-objectives
runhistory 转换成 单个cost 的工具
RunHistoryLogScaledEncoder 基类: AbstractRunHistoryEncoder
通过重载 _build_matrix() 方法实现
数据收集用来做模型训练的方法
ConfigSelector
- 通过
self._collect_data()实现收集 - 通过
self._get_x_best()实现选取最优点 (X,y) 单目标 cost 数据
多目标代理模型类
MultiObjectiveModel
它不是自己可以直接预测多个目标,而是内部包含 len(multi_objectives) 个小的机器学习模型,分别预测每个目标
- 单独训练每个模型
- 单独预测每一个目标
- 多个模型的预测结果合在一起 –> 多目标预测
没有实现低层的多目标预测支持
- 和
v1.3.4一样,通过 multi_objective_algorithm 实现把多目标(Y)合成单个目标 cost (y) 虽然提供了一个 MultiObjectiveModel, 但是没有提供成套的,
训练+ =预测=基础工具支持X, y = ConfigSelector._collect_data()收集到的数据是单目标 cost,X, y- ConfigSelector._model.train 训练的是单cost y 的数据
incumbent_x_array, incumbent_value ConfigSelector._get_x_best(X)- 收集到的y, 内部也没有做多目标的检查和转换成单目标处理流程
SMBO 贝叶斯优化循环
SMBO.optimizer() 优化流程
主要流程环节
- SMBO.ask() 生成 config
SMBO._add_results() 添加样本点(执行结果)
- SMBO.tell()
文章作者
上次更新 2025-09-24 (360d44c)