Releases: keras-team/keras
Keras Release 2.11.0 RC2
What's Changed
Full Changelog: v2.11.0-rc1...v2.11.0-rc2
Keras Release 2.11.0 RC1
Please see the release history at https://github.com/tensorflow/tensorflow/releases/tag/v2.11.0-rc1 for more details.
What's Changed
- Fix TypeError positional argument when LossScalerOptimizer is used conjointly with tfa wrappers by @lucasdavid in #16332
- Add type check to axis by @sachinprasadhs in #16208
- minor documention fix by @bmatschke in #16331
- Fix typos in data_adapter.py by @taegeonum in #16326
- Add
exclude_from_weight_decay
to AdamW by @markub3327 in #16274 - Switching learning/brain dependency to OSS compatible test_util by @copybara-service in #16362
- Typo fix in LSTM docstring by @peskaf in #16364
- Copy loss and metric to prevent side effect by @drauh in #16360
- Denormalization layer by @markub3327 in #16350
- Fix
reset_states
not working when invoked within atf.function
in graph mode. by @copybara-service in #16400 - Reduce the complexity of the base layer by pulling out the logic related to handling call function args to a separate class. by @copybara-service in #16375
- Add subset="both" functionality to {image|text}_dataset_from_directory() by @Haaris-Rahman in #16413
- Fix non-float32 efficientnet calls by @hctomkins in #16402
- Fix prediction with structured output by @itmo153277 in #16408
- Add reference to resource variables. by @sachinprasadhs in #16409
- added audio_dataset.py by @hazemessamm in #16388
- Fix Syntax error for combined_model.compile of WideDeepModel by @gadagashwini in #16447
- Missing
f
prefix on f-strings fix by @code-review-doctor in #16459 - Update CONTRIBUTING.md by @rthadur in #15998
- adds split_dataset utility by @prakashsellathurai in #16398
- Support increasing batch size by @markus-hinsche in #16337
- Add ConvNeXt models by @sayakpaul in #16421
- Fix OrthogonalRegularizer to implement the (1,1) matrix norm by @Kiwiakos in #16521
- fix: weight keys so that imagenet init works by @sayakpaul in #16528
- Preprocess input correction by @AdityaKane2001 in #16527
- Fix typo in documentation by @sushreebarsa in #16534
- Update index_lookup.py by @tilakrayal in #16460
- update codespaces bazel install by @haifeng-jin in #16575
- reduce too long lines in engine/ by @haifeng-jin in #16579
- Fix typos by @eltociear in #16568
- Fix mixed precision serialization of group convs by @lgeiger in #16571
- reduce layers line-too-long by @haifeng-jin in #16580
- resolve line-too-long in root directory by @haifeng-jin in #16584
- resolve line-too-long in metrics by @haifeng-jin in #16586
- resolve line-too-long in optimizers by @haifeng-jin in #16587
- resolve line-too-long in distribute by @haifeng-jin in #16594
- resolve line-too-long in integration_test by @haifeng-jin in #16599
- resovle line-too-long in legacy-tf-layers by @haifeng-jin in #16600
- resolve line-too-long in initializers by @haifeng-jin in #16598
- resolve line-too-long in api by @haifeng-jin in #16592
- resolve line-too-long in benchmarks by @haifeng-jin in #16593
- resolve line-too-long in feature_column by @haifeng-jin in #16597
- resolve line-too-long in datasets by @haifeng-jin in #16591
- resolve line-too-long in dtensor by @haifeng-jin in #16595
- resolve line-too-long in estimator by @haifeng-jin in #16596
- resolve line-too-long in applications by @haifeng-jin in #16590
- resolve line-too-long in mixed_precision by @haifeng-jin in #16605
- resolve line-too-long in models by @haifeng-jin in #16606
- resolve line-too-long in premade_models by @haifeng-jin in #16608
- resolve line-too-long in tests by @haifeng-jin in #16613
- resolve line-too-long in testing_infra by @haifeng-jin in #16612
- resolve line-too-long in saving by @haifeng-jin in #16611
- resolve line-too-long in preprocessing by @haifeng-jin in #16609
- resolve line-too-long in utils by @haifeng-jin in #16614
- Optimize L2 Regularizer (use tf.nn.l2_loss) by @szutenberg in #16537
- let the linter ignore certain lines, prepare to enforce line length by @haifeng-jin in #16617
- Fix typo by @m-ahmadi in #16607
- Explicitely set
AutoShardPolicy.DATA
forTensorLike
datasets by @lgeiger in #16604 - Fix all flake8 errors by @haifeng-jin in #16621
- Update lint.yml by @haifeng-jin in #16648
- Fix typo error of tf.compat.v1.keras.experimental for export and load model by @gadagashwini in #16636
- Fix documentation in keras.datasets.imdb by @luckynozomi in #16673
- Update init.py by @Wehzie in #16557
- Fix documentation in keras.layers.attention.multi_head_attention by @balvisio in #16683
- Fix missed parameter from AUC config by @weipeilun in #16499
- Fix bug for KerasTensor._keras_mask should be None by @haifeng-jin in #16689
- Fixed some spellings by @synandi in #16693
- Fix batchnorm momentum in ResNetRS by @shkarupa-alex in #16726
- Add variable definitions in optimizer usage example by @miker2241 in #16731
- Fixed issue #16749 by @asukakenji in #16751
- Fix usage of deprecated Pillow interpolation methods by @neoaggelos in #16746
- π Add typing to some callback classes by @gabrieldemarmiesse in #16692
- Add support for Keras mask & causal mask to MultiHeadAttention by @ageron in #16619
- Update standard name by @chunduriv in #16772
- Fix error when labels contains brackets when plotting model by @cBournhonesque in #16739
- Fixing the incorrect link in input_layer.py by @tilakrayal in #16767
- Formatted callback.py to render correctly by @jvishnuvardhan in #16765
- Fixed typo in docs by @ltiao in #16778
- docs: Fix a few typos by @timgates42 in #16789
- Add ignore_class to sparse crossentropy and IoU by @lucasdavid in #16712
- Updated f-string method by @cyai in #16799
- Fix NASNet input shape computation by @ianstenbit in #16818
- Fix incorrect ref. to learning_rate_schedule during module import by @lucasdavid in #16813
- Fixing the incorrect link in backend.py by @tilakrayal in #16806
- Corrected DepthwiseConv1D docstring by @AdityaKane2001 in #16807
- Typo and grammar: "recieved" by @ehrencrona in #16814
- Fix typo in doc by @DyeKuu in #16821
- Update README.md by @freddy1020 in #16823
- Updated f-string method by @cyai in #16775
- Add
is_legacy_optimizer
to optimizer config to keep saving/loading consistent. by @copybara-service in #16842 - Used Flynt to update f-string method by @cyai in #16774
- CONTRIBUTING.md file updated by @nivasgopi30 in ...
Keras Release 2.10.0
Please see the release history at https://github.com/tensorflow/tensorflow/releases/tag/v2.10.0 for more details.
Full Changelog: v2.9.0...v2.10.0
Keras Release 2.10.0 RC1
Please see the release history at https://github.com/tensorflow/tensorflow/releases/tag/v2.10.0-rc3 for more details.
What's Changed
- Fix TypeError positional argument when LossScalerOptimizer is used conjointly with tfa wrappers by @lucasdavid in #16332
- Add type check to axis by @sachinprasadhs in #16208
- minor documention fix by @bmatschke in #16331
- Fix typos in data_adapter.py by @taegeonum in #16326
- Add
exclude_from_weight_decay
to AdamW by @markub3327 in #16274 - Switching learning/brain dependency to OSS compatible test_util by @copybara-service in #16362
- Typo fix in LSTM docstring by @peskaf in #16364
- Copy loss and metric to prevent side effect by @drauh in #16360
- Denormalization layer by @markub3327 in #16350
- Fix
reset_states
not working when invoked within atf.function
in graph mode. by @copybara-service in #16400 - Reduce the complexity of the base layer by pulling out the logic related to handling call function args to a separate class. by @copybara-service in #16375
- Add subset="both" functionality to {image|text}_dataset_from_directory() by @Haaris-Rahman in #16413
- Fix non-float32 efficientnet calls by @hctomkins in #16402
- Fix prediction with structured output by @itmo153277 in #16408
- Add reference to resource variables. by @sachinprasadhs in #16409
- added audio_dataset.py by @hazemessamm in #16388
- Fix Syntax error for combined_model.compile of WideDeepModel by @gadagashwini in #16447
- Missing
f
prefix on f-strings fix by @code-review-doctor in #16459 - Update CONTRIBUTING.md by @rthadur in #15998
- adds split_dataset utility by @prakashsellathurai in #16398
- Support increasing batch size by @markus-hinsche in #16337
- Add ConvNeXt models by @sayakpaul in #16421
- Fix OrthogonalRegularizer to implement the (1,1) matrix norm by @Kiwiakos in #16521
- fix: weight keys so that imagenet init works by @sayakpaul in #16528
- Preprocess input correction by @AdityaKane2001 in #16527
- Fix typo in documentation by @sushreebarsa in #16534
- Update index_lookup.py by @tilakrayal in #16460
- update codespaces bazel install by @haifeng-jin in #16575
- reduce too long lines in engine/ by @haifeng-jin in #16579
- Fix typos by @eltociear in #16568
- Fix mixed precision serialization of group convs by @lgeiger in #16571
- reduce layers line-too-long by @haifeng-jin in #16580
- resolve line-too-long in root directory by @haifeng-jin in #16584
- resolve line-too-long in metrics by @haifeng-jin in #16586
- resolve line-too-long in optimizers by @haifeng-jin in #16587
- resolve line-too-long in distribute by @haifeng-jin in #16594
- resolve line-too-long in integration_test by @haifeng-jin in #16599
- resovle line-too-long in legacy-tf-layers by @haifeng-jin in #16600
- resolve line-too-long in initializers by @haifeng-jin in #16598
- resolve line-too-long in api by @haifeng-jin in #16592
- resolve line-too-long in benchmarks by @haifeng-jin in #16593
- resolve line-too-long in feature_column by @haifeng-jin in #16597
- resolve line-too-long in datasets by @haifeng-jin in #16591
- resolve line-too-long in dtensor by @haifeng-jin in #16595
- resolve line-too-long in estimator by @haifeng-jin in #16596
- resolve line-too-long in applications by @haifeng-jin in #16590
- resolve line-too-long in mixed_precision by @haifeng-jin in #16605
- resolve line-too-long in models by @haifeng-jin in #16606
- resolve line-too-long in premade_models by @haifeng-jin in #16608
- resolve line-too-long in tests by @haifeng-jin in #16613
- resolve line-too-long in testing_infra by @haifeng-jin in #16612
- resolve line-too-long in saving by @haifeng-jin in #16611
- resolve line-too-long in preprocessing by @haifeng-jin in #16609
- resolve line-too-long in utils by @haifeng-jin in #16614
- Optimize L2 Regularizer (use tf.nn.l2_loss) by @szutenberg in #16537
- let the linter ignore certain lines, prepare to enforce line length by @haifeng-jin in #16617
- Fix typo by @m-ahmadi in #16607
- Explicitely set
AutoShardPolicy.DATA
forTensorLike
datasets by @lgeiger in #16604 - Fix all flake8 errors by @haifeng-jin in #16621
- Update lint.yml by @haifeng-jin in #16648
- Fix typo error of tf.compat.v1.keras.experimental for export and load model by @gadagashwini in #16636
- Fix documentation in keras.datasets.imdb by @luckynozomi in #16673
- Update init.py by @Wehzie in #16557
- Fix documentation in keras.layers.attention.multi_head_attention by @balvisio in #16683
- Fix missed parameter from AUC config by @weipeilun in #16499
- Fix bug for KerasTensor._keras_mask should be None by @haifeng-jin in #16689
- Fixed some spellings by @synandi in #16693
- Fix batchnorm momentum in ResNetRS by @shkarupa-alex in #16726
- Add variable definitions in optimizer usage example by @miker2241 in #16731
- Fixed issue #16749 by @asukakenji in #16751
- Fix usage of deprecated Pillow interpolation methods by @neoaggelos in #16746
- π Add typing to some callback classes by @gabrieldemarmiesse in #16692
- Add support for Keras mask & causal mask to MultiHeadAttention by @ageron in #16619
- Update standard name by @chunduriv in #16772
- Fix error when labels contains brackets when plotting model by @cBournhonesque in #16739
- Fixing the incorrect link in input_layer.py by @tilakrayal in #16767
- Formatted callback.py to render correctly by @jvishnuvardhan in #16765
- Fixed typo in docs by @ltiao in #16778
- docs: Fix a few typos by @timgates42 in #16789
- Add ignore_class to sparse crossentropy and IoU by @lucasdavid in #16712
- Updated f-string method by @cyai in #16799
- Fix NASNet input shape computation by @ianstenbit in #16818
- Fix incorrect ref. to learning_rate_schedule during module import by @lucasdavid in #16813
- Fixing the incorrect link in backend.py by @tilakrayal in #16806
- Corrected DepthwiseConv1D docstring by @AdityaKane2001 in #16807
- Typo and grammar: "recieved" by @ehrencrona in #16814
- Fix typo in doc by @DyeKuu in #16821
- Update README.md by @freddy1020 in #16823
- Updated f-string method by @cyai in #16775
- Add
is_legacy_optimizer
to optimizer config to keep saving/loading consistent. by @copybara-service in #16842 - Add
is_legacy_optimizer
to optimizer config to keep saving/loading β¦ by @qlzh727 in #16856
New Cont...
Keras Release 2.9.0
Please see the release history at https://github.com/tensorflow/tensorflow/releases/tag/v2.9.0 for more details.
Full Changelog: v2.8.0...v2.9.0
Keras Release 2.9.0 RC2
Keras Release 2.9.0 RC1
What's Changed
Full Changelog: v2.9.0-rc0...v2.9.0-rc1
Keras Release 2.9.0 RC0
Please see https://github.com/tensorflow/tensorflow/blob/r2.9/RELEASE.md for Keras release notes.
Major Features and Improvements
tf.keras
:- Added
tf.keras.applications.resnet_rs
models. This includes theResNetRS50
,ResNetRS101
,ResNetRS152
,ResNetRS200
,ResNetRS270
,ResNetRS350
andResNetRS420
model architectures. The ResNetRS models are based on the architecture described in Revisiting ResNets: Improved Training and Scaling Strategies - Added
tf.keras.optimizers.experimental.Optimizer
. The reworked optimizer gives more control over different phases of optimizer calls, and is easier to customize. We provide Adam, SGD, Adadelta, AdaGrad and RMSprop optimizers based ontf.keras.optimizers.experimental.Optimizer
. Generally the new optimizers work in the same way as the old ones, but support new constructor arguments. In the future, the symbolstf.keras.optimizers.Optimizer
/Adam
/etc will point to the new optimizers, and the previous generation of optimizers will be moved totf.keras.optimizers.legacy.Optimizer
/Adam
/etc. - Added L2 unit normalization layer
tf.keras.layers.UnitNormalization
. - Added
tf.keras.regularizers.OrthogonalRegularizer
, a new regularizer that encourages orthogonality between the rows (or columns) or a weight matrix. - Added
tf.keras.layers.RandomBrightness
layer for image preprocessing. - Added APIs for switching between interactive logging and absl logging. By default, Keras always writes the logs to stdout. However, this is not optimal in a non-interactive environment, where you don't have access to stdout, but can only view the logs. You can use
tf.keras.utils.disable_interactive_logging()
to write the logs to ABSL logging. You can also usetf.keras.utils.enable_interactive_logging()
to change it back to stdout, ortf.keras.utils.is_interactive_logging_enabled()
to check if interactive logging is enabled. - Changed default value for the
verbose
argument ofModel.evaluate()
andModel.predict()
to"auto"
, which defaults toverbose=1
for most cases and defaults toverbose=2
when used withParameterServerStrategy
or with interactive logging disabled. - Argument
jit_compile
inModel.compile()
now applies toModel.evaluate()
andModel.predict()
. Settingjit_compile=True
incompile()
compiles the model's training, evaluation, and inference steps to XLA. Note thatjit_compile=True
may not necessarily work for all models. - Added DTensor-related Keras APIs under
tf.keras.dtensor
namespace. The APIs are still classified as experimental. You are welcome to try it out. Please check the tutoral and guide on https://www.tensorflow.org/ for more details about DTensor.
- Added
What's Changed
- Update_OptimizerV2.py by @sachinprasadhs in #15819
- Use
assign_sub
when computingmoving_average_update
by @lgeiger in #15773 - Document the verbose parameter in EarlyStopping by @ThunderKey in #15817
- Fix LSTM and GRU cuDNN kernel failure for RaggedTensors. by @foxik in #15756
- A tiny problem in an AttributeError message in base_layer.py by @Aujkst in #15847
- Update training_generator_test.py by @sachinprasadhs in #15876
- Minor correction in RegNet docs by @AdityaKane2001 in #15901
- add scoring methods in Luong-style attention by @old-school-kid in #15867
- refactoring code with List Comprehension by @idiomaticrefactoring in #15924
- added clarifying statement to save_model example text by @soosung80 in #15930
- Update base_conv.py by @AdityaKane2001 in #15943
- Update global_clipnorm by @sachinprasadhs in #15938
- Update callbacks.py by @Cheril311 in #15977
- Applied correct reshaping to metric func sparse_top_k by @dfossl in #15997
- Keras saving/loading: Add a custom object saving test to verify the
keras.utils.register_keras_serializable
flows we are expecting users to follow work, and will continue to work with the new design and implementation coming in. by @copybara-service in #15992 - Metric accuracy bug fixes - Metrics Refactor proposal by @dfossl in #16010
- Make
classifier_activation
argument accessible for DenseNet and NASNet models by @adrhill in #16005 - Copy image utils from keras_preprocessing directly into core keras by @copybara-service in #15975
- Update
keras.callbacks.BackupAndRestore
docs by @lgeiger in #16018 - Updating the definition of an argument in the text_dataset_from_directory function by @shraddhazpy in #16012
- Remove deprecated TF1 Layer APIs
apply()
,get_updates_for()
,get_losses_for()
, and remove theinputs
argument in theadd_loss()
method. by @copybara-service in #16046 - Fixed minor typos by @hdubbs in #16071
- Fix typo in documentation by @futtetennista in #16082
- Issue #16090: Split input_shapes horizontally in utils.vis_utils.plot_model by @RicardFos in #16096
- Docker env setup related changes by @shraddhazpy in #16040
- Fixed EfficientNetV2 b parameter not increasing with each block. by @sebastian-sz in #16145
- Updated args of train_on_batch method by @jvishnuvardhan in #16147
- Binary accuracy bug fixes - Metric accuracy method refactor by @dfossl in #16083
- Fix the corner case for dtensor model layout map. by @copybara-service in #16170
- Fix typo in docstring for
DenseFeatures
by @gadagashwini in #16165 - Fix typo in Returns Section by @chunduriv in #16182
- Some tests misusing assertTrue for comparisons fix by @code-review-doctor in #16073
- Add .DS_Store to .gitignore for macOS users by @tsheaff in #16198
- Solve memory inefficiency in RNNs by @atmguille in #16174
- Update README.md by @ahmedopolis in #16259
- Fix documentation text being mistakenly rendered as code by @guberti in #16253
- Allow single input for merging layers Add, Average, Concatenate, Maximum, Minimum, Multiply by @foxik in #16230
- Mention image dimensions format in image_dataset_from_directory by @nrzimmermann in #16232
- fix thresholded_relu to support list datatype by @old-school-kid in #16277
- Implement all tf interpolation upscaling methods by @Mahrkeenerh in #16249
New Contributors
- @lgeiger made their first contribution in #15773
- @ThunderKey made their first contribution in #15817
- @Aujkst made their first contribution in #15847
- @idiomaticrefactoring made their first contribution in #15924
- @soosung80 made their first contribution in #15930
- @Cheril311 made their first contribution in #15977
- @dfossl made their first contribution in #15997
- @adrhill made their first contribution in #16005
- @shraddhazpy made their first contribution in #16012
- @hdubbs made their first contribution in #16071
- @futtetennista made their first contribution in #16082
- @RicardFos made their first contribution in #16096
- @gadagashwini made their first contribution in #16165
- @chunduriv made their first contribution in #16182
- @code-review-doctor made their first contribution in #16073
- @tsheaff made their first contribution in #16198
- @atmguille made their first contribution in #16174
- @ahmedopolis made their first contribution in #16259
- @guberti made their first contribution in #16253
- @nrzimmermann made their first contribution in #16232
- @Mahrkeenerh made their first contribution in #16249
Full Changelog: v2.8.0-rc0...v2.9.0-rc0
Keras Release 2.8.0
Please see the release history at https://github.com/tensorflow/tensorflow/releases/tag/v2.8.0 for more details.
Keras Release 2.8.0 RC1
What's Changed
Full Changelog: v2.8.0-rc0...v2.8.0-rc1