Oracle 类keras_tuner.Oracle(
objective=None,
max_trials=None,
hyperparameters=None,
allow_new_entries=True,
tune_new_entries=True,
seed=None,
max_retries_per_trial=0,
max_consecutive_failed_trials=3,
)
实现超参数优化算法。
在并行调优设置中,只有一个 Oracle 实例。工作进程将通过 gPRC 调用 Oracle 方法与中心化的 Oracle 实例进行通信。
Trial 对象通常用作 gPRC 调用之间的通信包,以便在工作进程 Tuner 实例和 Oracle 之间传递信息。例如,Oracle.create_trial() 返回一个 Trial 对象,而 Oracle.end_trial() 在其参数中接受一个 Trial。
在通过 gRPC 调用时,同一个 Trial 实例的新副本会被重新构建。当工作进程 Tuner 中的 Trial 对象通过调用 Oracle.end_trial() 传回 Oracle 时,它们会被同步到 Oracle 中的原始副本。
参数
keras_tuner.Objective 实例,或一个 keras_tuner.Objective 对象和字符串的列表。如果是一个字符串,将推断优化的方向(最小化或最大化)。如果是一个 keras_tuner.Objective 对象列表,我们将最小化所有目标的总和以进行最小化,或最大化所有目标的总和以进行最大化。当 Tuner.run_trial() 或 HyperModel.fit() 返回一个单一的浮点数作为要最小化的目标时,objective 参数是可选的。max_trial 个模型之前中断搜索。HyperParameters 实例。可用于覆盖(或预先注册)搜索空间中的超参数。hyperparameters 中指定的超参数条目添加到搜索空间。如果为 false,则将使用这些参数的默认值。默认为 True。hyperparameters 中列出的超参数条目。默认为 True。Trial 的最大次数。Trial 的最大数量。达到此数量时,搜索将停止。当重试均未成功时,Trial 将被标记为失败。wrapped_func 函数keras_tuner.Oracle.create_trial()
wrapped_func 函数keras_tuner.Oracle.end_trial()
get_best_trials 方法Oracle.get_best_trials(num_trials=1)
返回最佳 Trial。
get_state 方法Oracle.get_state()
返回此对象的当前状态。
此方法在 save 期间被调用。
返回
作为状态的可序列化对象字典。
set_state 方法Oracle.set_state(state)
设置此对象的当前状态。
此方法在 reload 期间被调用。
参数
score_trial 方法Oracle.score_trial(trial)
评估一个已完成的 Trial。
此方法可以在子类中被覆盖,以提供一组超参数值的评分。此方法在 end_trial 中对已完成的 Trial 调用。
参数
Trial 对象。populate_space 方法Oracle.populate_space(trial_id)
为试验填充超参数空间。
此方法应在子类中被覆盖,并在 create_trial 中调用,以便用值填充超参数空间。
参数
返回
一个字典,包含“values”和“status”键,“values”是参数名称到建议值的映射,“status”应为“RUNNING”(试验可以正常开始)、“IDLE”(Oracle 正在等待某些内容,无法创建试验)或“STOPPED”(Oracle 已完成搜索,不应创建新试验)之一。
wrapped_func 函数keras_tuner.Oracle.update_trial()