Releases: keras-team/keras-tuner
Releases Β· keras-team/keras-tuner
Release v1.3.4
Bug fixes
- If you have a protobuf version > 3.20, it would through an error when import KerasTuner. It is now fixed.
Release v1.3.3
- KerasTuner would install protobuf 3.19 with
protobuf<=3.20
. We want to install3.20.3
, so we changed it toprotobuf<=3.20.3
. It is now fixed.
Full Changelog: v1.3.2...v1.3.3
Release v1.3.2
Bug fixes
- It use to install
protobuf
4.22.1 if install with TensorFlow 2.12, which is not compatible with KerasTuner. We limited theprotobuf
version to <=3.20, which is compatible with all TensorFlow versions so far.
Full Changelog: v1.3.1...v1.3.2
Release v1.3.1
Bug fixes
- The
Tuner.results_summary()
did not print error messages for failed trials and did not displayObjective
information correctly. It is now fixed. - The
BayesianOptimization
would break when not specifying thenum_initial_points
and overriding.run_trial()
. It is now fixed. - TensorFlow 2.12 would break because the different protobuf version. It is now fixed.
New Contributors
Full Changelog: v1.3.0...v1.3.1
Release v1.3.0
Breaking changes
- Removed
Logger
andCloudLogger
and the related arguments inBaseTuner.__init__(logger=...)
. - Removed
keras_tuner.oracles.BayesianOptimization
,keras_tuner.oracles.Hyperband
,keras_tuner.oracles.RandomSearch
, which were actuallyOracle
s instead ofTuner
s. Please usekeras_tuner.oracles.BayesianOptimizationOracle
,keras_tuner.oracles.HyperbandOracle
,keras_tuner.oracles.RandomSearchOracle
instead. - Removed
keras_tuner.Sklearn
. Please usekeras_tuner.SklearnTuner
instead.
New features
keras_tuner.oracles.GridSearchOracle
is now available as a standaloneOracle
to be used with custom tuners.
Full Changelog: 1.2.1...v1.3.0
Release v1.2.1
Bug fixes
- The resume feature (
overwrite=False
) would crash in 1.2.0. This is now fixed.
New Contributors
Full Changelog: 1.2.0...1.2.1
Release v1.2.0
Release v1.2.0
Breaking changes
- If you implemented your own
Tuner
, the old use case of reporting results withOracle.update_trial()
inTuner.run_trial()
is deprecated. Please return the metrics inTuner.run_trial()
instead. - If you implemented your own
Oracle
and overridedOracle.end_trial()
, you need to change the signature of the function fromOracle.end_trial(trial.trial_id, trial.status)
toOracle.end_trial(trial)
. - The default value of the
step
argument inkeras_tuner.HyperParameters.Int()
is changed toNone
, which was1
before. No change in default behavior. - The default value of the
sampling
argument inkeras_tuner.HyperParameters.Int()
is changed to"linear"
, which wasNone
before. No change in default behavior. - The default value of the
sampling
argument inkeras_tuner.HyperParameters.Float()
is changed to"linear"
, which was
None
before. No change in default behavior. - If you explicitly rely on protobuf values, the new protobuf bug fix may affect you.
- Changed the mechanism of how a random sample is drawn for a hyperparameter. They now all start from a random value between 0 and 1, and convert the value to a random sample.
New features
- A new tuner is added,
keras_tuner.GridSearch
, which can exhaust all the possible hyperparameter combinations. - Better fault tolerance during the search. Added two new arguments to
Tuner
andOracle
initializers,max_retries_per_trial
andmax_consecutive_failed_trials
. - You can now mark a
Trial
as failed byraise keras_tuner.FailedTrialError("error message.")
inHyperModel.build()
,HyperModel.fit()
, or your model build function. - Provides better error messages for invalid configs for
Int
andFloat
type hyperparameters. - A decorator
@keras_tuner.synchronized
is added to decorate the methods inOracle
and its subclasses to synchronize the concurrent calls to ensure thread safety in parallel tuning.
Bug fixes
- Protobuf was not converting Boolean type hyperparameter correctly. This is now fixed.
- Hyperband was not loading the weights correctly for half-trained models. This is now fixed.
KeyError
may occur if usinghp.conditional_scope()
, or theparent
argument for hyperparameters. This is now fixed.num_initial_points
of theBayesianOptimization
should defaults to3 * dimension
, but it defaults to 2. This is now fixed.- It would through an error when using a concrete Keras optimizer object to override the
HyperModel
compile arg. This is now fixed. - Workers might crash due to
Oracle
reloading when running in parallel. This is now fixed.
New Contributors
- @Firas-RHIMI made their first contribution in #711
- @HanxiaoLyu made their first contribution in #746
- @leleogere made their first contribution in #794
- @LuNoX made their first contribution in #815
Full Changelog: 1.1.3...1.2.0
Release v1.2.0 RC0
Breaking changes
- If you implemented your own
Tuner
, the old use case of reporting results withOracle.update_trial()
inTuner.run_trial()
is deprecated. Please return the metrics inTuner.run_trial()
instead. - If you implemented your own
Oracle
and overridedOracle.end_trial()
, you need to change the signature of the function fromOracle.end_trial(trial.trial_id, trial.status)
toOracle.end_trial(trial)
. - The default value of the
step
argument inkeras_tuner.HyperParameters.Int()
is changed toNone
, which was1
before. No change in default behavior. - The default value of the
sampling
argument inkeras_tuner.HyperParameters.Int()
is changed to"linear"
, which wasNone
before. No change in default behavior. - The default value of the
sampling
argument inkeras_tuner.HyperParameters.Float()
is changed to"linear"
, which wasNone
before. No change in default behavior. - If you explicitly rely on protobuf values, the new protobuf bug fix may affect you.
- Changed the mechanism of how a random sample is drawn for a hyperparameter. They now all start from a random value between 0 and 1, and convert the value to a random sample.
New features
- A new tuner is added,
keras_tuner.GridSearch
, which can exhaust all the possible hyperparameter combinations. - Better fault tolerance during the search. Added two new arguments to
Tuner
andOracle
initializers,max_retries_per_trial
andmax_consecutive_failed_trials
. - Provides better error messages for invalid configs for
Int
andFloat
type hyperparameters. - A decorator
@keras_tuner.synchronized
is added to decorate the methods inOracle
and its subclasses to synchronize the concurrent calls to ensure thread safety in parallel tuning.
Bug fixes
- Protobuf was not converting Boolean type hyperparameter correctly. This is now fixed.
- Hyperband was not loading the weights correctly for half-trained models. This is now fixed.
KeyError
may occur if usinghp.conditional_scope()
, or theparent
argument for hyperparameters. This is now fixed.num_initial_points
of theBayesianOptimization
should defaults to3 * dimension
, but it defaults to 2. This is now fixed.
New Contributors
- @Firas-RHIMI made their first contribution in #711
- @HanxiaoLyu made their first contribution in #746
- @leleogere made their first contribution in #794
- @LuNoX made their first contribution in #815
Full Changelog: 1.1.3...1.2.0rc0
Release v1.1.3
Summary
Bug fixes to better support AutoKeras.
What's Changed
- Fixed issue #677 by @Anselmoo in #678
- Adopt safe model and trial saving practices in the multi-worker setting by @jamesmullenbach in #684
- tuner_utils: use datetime to calculate elapsed time by @mebeim in #690
- Add pre_create_trial callback by @jamesmullenbach in #695
- Multi-worker file writing checks by @jamesmullenbach in #694
- Update actions.yml by @haifeng-jin in #698
- Add "declare_hyperparameters" to HyperModel by @jamesmullenbach in #696
- Record best epoch info with update_trial by @haifeng-jin in #706
New Contributors
- @Anselmoo made their first contribution in #678
- @jamesmullenbach made their first contribution in #684
- @mebeim made their first contribution in #690
Full Changelog: 1.1.2...1.1.3
Release v1.1.3RC0
What's Changed
- Fixed issue #677 by @Anselmoo in #678
- Adopt safe model and trial saving practices in the multi-worker setting by @jamesmullenbach in #684
- tuner_utils: use datetime to calculate elapsed time by @mebeim in #690
- Add pre_create_trial callback by @jamesmullenbach in #695
- Multi-worker file writing checks by @jamesmullenbach in #694
- Update actions.yml by @haifeng-jin in #698
- Add "declare_hyperparameters" to HyperModel by @jamesmullenbach in #696
- Record best epoch info with update_trial by @haifeng-jin in #706
New Contributors
- @Anselmoo made their first contribution in #678
- @jamesmullenbach made their first contribution in #684
- @mebeim made their first contribution in #690
Full Changelog: 1.1.2...1.1.3rc0