evox.problems.hpo_wrapper
¶
模块内容¶
类¶
用于 |
|
用于超参数优化(HPO)的监视器,记录在优化过程中迄今为止发现的最佳适应度。 |
|
超参数优化(HPO)问题。 |
|
API¶
- class evox.problems.hpo_wrapper.HPOMonitor(num_repeats: int = 1, fit_aggregation: Optional[Callable[[torch.Tensor, int], torch.Tensor]] = _mean_fit_aggregation)[源代码]¶
Bases:
evox.core.Monitor
,abc.ABC
用于
HPOProblem.workflow.monitor
中的超参数优化(HPO)监控的基类。初始化
初始化 ModuleBase。
- 参数:
*args -- 可变长度参数列表,传递给父类的初始化函数。
**kwargs -- 任意关键字参数,传递给父类初始化器。
Attributes: static_names (list): A list to store static member names.
- class evox.problems.hpo_wrapper.HPOFitnessMonitor(num_repeats: int = 1, fit_aggregation: Optional[Callable[[torch.Tensor, int], torch.Tensor]] = _mean_fit_aggregation, multi_obj_metric: Optional[Callable] = None)[源代码]¶
Bases:
evox.problems.hpo_wrapper.HPOMonitor
用于超参数优化(HPO)的监视器,记录在优化过程中迄今为止发现的最佳适应度。
初始化
初始化 HPO 适应度监控器。
- 参数:
multi_obj_metric -- 用于多目标优化的度量函数,在单目标优化中不使用。目前,我们仅支持多目标优化的“IGD”或“HV”。默认为None。
- class evox.problems.hpo_wrapper.HPOProblemWrapper(iterations: int, num_instances: int, workflow: evox.core.Workflow, num_repeats: int = 1, copy_init_state: bool = False)[源代码]¶
Bases:
evox.core.Problem
超参数优化(HPO)问题。
Example
algo = SomeAlgorithm(...) prob = SomeProblem(...) monitor = HPOFitnessMonitor() workflow = StdWorkflow(algo, prob, monitor=monitor) hpo_prob = HPOProblemWrapper(iterations=..., num_instances=...) params = hpo_prob.get_init_params() # alter `params` ... hpo_prob.evaluate(params) # execute the evaluation # ...
初始化
初始化 HPO 问题包装器。
- 参数:
iterations -- 在优化过程中要执行的迭代次数。
num_instances -- 在优化过程中并行执行的实例数量,即外层算法的种群大小。
workflow -- 在优化过程中使用的工作流。必须由 core.jit_class 包装。
num_repeats -- 每个实例重复评估过程的次数。默认值为1。
copy_init_state -- 是否为每次评估复制工作流的初始状态。默认为 True。如果您的工作流包含对初始状态中的张量进行原地修改的操作,则应将其设置为 True。否则,您可以将其设置为 False 以节省内存。
- class evox.problems.hpo_wrapper.HPOData[源代码]¶
Bases:
typing.NamedTuple
- workflow_step: Callable[[Dict[str, torch.Tensor]], Tuple[Dict[str, torch.Tensor]]]¶
None
- compiled_workflow_step: Callable[[Dict[str, torch.Tensor]], Tuple[Dict[str, torch.Tensor]]]¶
None
- state_keys: List[str]¶
None
- buffer_keys: Optional[List[str]]¶
None