ray.tune.search.Searcher#
- class ray.tune.search.Searcher(metric: str | None = None, mode: str | None = None)[源代码]#
基类:
object
用于包装建议算法的抽象类。
自定义算法可以通过重写
suggest
方法轻松扩展此类,为试验提供生成的参数。任何实现
__init__
的子类也必须调用此类构造函数:super(Subclass, self).__init__(...)
。为了跟踪建议及其相应的评估,方法
suggest
将传递一个 trial_id,该 ID 将用于后续的通知。并非所有实现都支持多目标。
给 Tune 开发者的注意:如果添加了新的搜索器,请更新
air/_internal/usage.py
。- 参数:
metric – 训练结果目标值属性。如果是列表,则为训练结果目标值属性的列表。
mode – 如果字符串为 {min, max} 之一。如果是列表,则为最大值和最小值的列表,确定目标是最小化还是最大化指标属性。必须与指标的类型匹配。
class ExampleSearch(Searcher): def __init__(self, metric="mean_loss", mode="min", **kwargs): super(ExampleSearch, self).__init__( metric=metric, mode=mode, **kwargs) self.optimizer = Optimizer() self.configurations = {} def suggest(self, trial_id): configuration = self.optimizer.query() self.configurations[trial_id] = configuration def on_trial_complete(self, trial_id, result, **kwargs): configuration = self.configurations[trial_id] if result and self.metric in result: self.optimizer.update(configuration, result[self.metric]) tuner = tune.Tuner( trainable_function, tune_config=tune.TuneConfig( search_alg=ExampleSearch() ) ) tuner.fit()
开发者API: 此API可能会在Ray的次要版本之间发生变化。
方法
传递从已单独评估的点获得的结果。
传递已单独评估的试验结果。
试用完成的通知。
训练期间结果的通知(可选)。
恢复此搜索算法的状态
从给定的 checkpoint_dir 恢复搜索器的状态。
将状态保存到此搜索算法的路径。
自动将给定的搜索器保存到 checkpoint_dir。
设置此搜索器可以运行的最大并发试验次数。
将搜索属性传递给搜索器。
查询算法以检索下一组参数。
属性
训练结果目标值属性。
指定是否最小化或最大化指标。