Oracle classkeras_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,
)
Implements a hyperparameter optimization algorithm.
In a parallel tuning setting, there is only one Oracle instance. The
workers would communicate with the centralized Oracle instance with gPRC
calls to the Oracle methods.
Trial objects are often used as the communication packet through the gPRC
calls to pass information between the worker Tuner instances and the
Oracle. For example, Oracle.create_trial() returns a Trial object, and
Oracle.end_trial() accepts a Trial in its arguments.
New copies of the same Trial instance are reconstructed as it going
through the gRPC calls. The changes to the Trial objects in the worker
Tuners are synced to the original copy in the Oracle when they are
passed back to the Oracle by calling Oracle.end_trial().
Arguments
keras_tuner.Objective instance, or a list of
keras_tuner.Objectives and strings. If a string, the direction of
the optimization (min or max) will be inferred. If a list of
keras_tuner.Objective, we will minimize the sum of all the
objectives to minimize subtracting the sum of all the objectives to
maximize. The objective argument is optional when
Tuner.run_trial() or HyperModel.fit() returns a single float as
the objective to minimize.max_trial models have been tested if the search space has
been exhausted.HyperParameters instance. Can be used to
override (or register in advance) hyperparameters in the search
space.hyperparameters should be added to the search space, or not. If
not, then the default value for these parameters will be used.
Defaults to True.hyperparameters.
Defaults to True.Trial if the trial crashed or the results are
invalid.Trials. When this number is reached,
the search will be stopped. A Trial is marked as failed when none
of the retries succeeded.wrapped_func functionkeras_tuner.Oracle.create_trial()
wrapped_func functionkeras_tuner.Oracle.end_trial()
get_best_trials methodOracle.get_best_trials(num_trials=1)
Returns the best Trials.
get_state methodOracle.get_state()
Returns the current state of this object.
This method is called during save.
Returns
A dictionary of serializable objects as the state.
set_state methodOracle.set_state(state)
Sets the current state of this object.
This method is called during reload.
Arguments
score_trial methodOracle.score_trial(trial)
Score a completed Trial.
This method can be overridden in subclasses to provide a score for
a set of hyperparameter values. This method is called from end_trial
on completed Trials.
Arguments
Trial object.populate_space methodOracle.populate_space(trial_id)
Fill the hyperparameter space with values for a trial.
This method should be overridden in subclasses and called in
create_trial in order to populate the hyperparameter space with
values.
Arguments
Returns
A dictionary with keys "values" and "status", where "values" is a mapping of parameter names to suggested values, and "status" should be one of "RUNNING" (the trial can start normally), "IDLE" (the oracle is waiting on something and cannot create a trial), or "STOPPED" (the oracle has finished searching and no new trial should be created).
wrapped_func functionkeras_tuner.Oracle.update_trial()