Hyperband 工具集
smac.intensifier.hyperband_utils #
determine_HB #
确定一个 Hyperband 轮次
参数#
min_budget : float 每个试验的最小预算 (保真度单位) max_budget : float 每个试验的最大预算 (保真度单位) eta : int, 默认为 3 控制逐次减半每轮丢弃配置比例的输入。
返回值#
dict 关于 Hyperband 轮次的信息 "max_iterations" "n_configs_in_stage" "budgets_in_stage" "trials_used" "budget_used" "number_of_brackets"
源代码位于 smac/intensifier/hyperband_utils.py
determine_hyperband_for_multifidelity #
determine_hyperband_for_multifidelity(
total_budget: float,
min_budget: float,
max_budget: float,
eta: int = 3,
) -> dict
根据总预算确定应该进行多少个 Hyperband 轮次
参数#
total_budget : float 完整优化的总预算 (保真度单位) min_budget : float 每个试验的最小预算 (保真度单位) max_budget : float 每个试验的最大预算 (保真度单位) eta : int, 默认为 3 控制逐次减半每轮丢弃配置比例的输入。
返回值#
dict 关于一个 Hyperband 轮次的信息 "max_iterations" "n_configs_in_stage" "budgets_in_stage" "trials_used" "budget_used" "number_of_brackets" 关于整个优化的信息 "n_trials" "total_budget" "eta" "min_budget" "max_budget"
源代码位于 smac/intensifier/hyperband_utils.py
get_n_trials_for_hyperband_multifidelity #
get_n_trials_for_hyperband_multifidelity(
total_budget: float,
min_budget: float,
max_budget: float,
eta: int = 3,
print_summary: bool = True,
) -> int
计算多保真优化所需的试验次数
指定总预算,然后计算这相当于多少个试验。
参数#
total_budget : float 完整优化的总预算 (保真度单位)。一个保真度单位可以是一个 epoch 或数据集大小的一部分。 min_budget : float 每个试验的最小预算 (保真度单位) max_budget : float 每个试验的最大预算 (保真度单位) eta : int, 默认为 3 控制逐次减半每轮丢弃配置比例的输入。
返回值#
int 指定总预算所需的试验次数
源代码位于 smac/intensifier/hyperband_utils.py
print_hyperband_summary #
print_hyperband_summary(hyperband_info: dict) -> None
打印 MultiFidelityFacade 中使用的 Hyperband 摘要
参数#
hyperband_info : dict 关于 Hyperband 的信息字典