|
1 | 1 | #keras3 (development version) |
2 | 2 |
|
3 | | -- Added S3 methods for JAX array:`str`,`as.array`,`as.double`,`as.integer`,`as.numeric`. |
4 | | - |
5 | | -- Added`str` S3 method for Keras Variables. |
6 | | - |
7 | | --`layer_reshape()` can now accept`-1` as a sentinel for an automatically calculated axis size. |
| 3 | +- Expanded numeric operations with`op_layer_normalization()`,`op_cbrt()`, |
| 4 | +`op_corrcoef()`,`op_deg2rad()`,`op_heaviside()`, the new`op_sparse_sigmoid()` |
| 5 | + plus matching`activation_sparse_sigmoid()`, and an`attn_logits_soft_cap` |
| 6 | + argument for`op_dot_product_attention()`. |
8 | 7 |
|
9 | | --Updated dependencies declared by`use_backend("jax", gpu=TRUE)` |
10 | | -for compatability with`keras-hub`. |
| 8 | +-Added signal window operations:`op_bartlett()`,`op_blackman()`, |
| 9 | +`op_hamming()`,`op_hanning()`, and`op_kaiser()`. |
11 | 10 |
|
12 | | -- Added training loop configuration helpers: |
13 | | -`config_max_epochs()`,`config_set_max_epochs()`,`config_max_steps_per_epoch()`, |
14 | | - and`config_set_max_steps_per_epoch()`. The caps can also be set via the |
15 | | -`KERAS_MAX_EPOCHS` and`KERAS_MAX_STEPS_PER_EPOCH` environment variables. |
16 | | - Added`config_is_nnx_enabled()` to check whether JAX NNX features are enabled. |
| 11 | +- Added`loss_categorical_generalized_cross_entropy()` for training with noisy |
| 12 | + labels. |
17 | 13 |
|
18 | 14 | - LoRA-enabled layers (`layer_dense()`,`layer_embedding()`,`layer_einsum_dense()`) |
19 | 15 | gain a`lora_alpha` argument to scale the adaptation delta independently of the |
20 | 16 | chosen rank. |
21 | 17 |
|
22 | | --`keras_variable()` now accepts a`synchronization` argument fordistributed |
23 | | -strategies. |
| 18 | +-Added complex-valued helpers: S3`Arg()` methods fortensors,`op_angle()`, |
| 19 | +and conversions`op_view_as_real()` /`op_view_as_complex()`. |
24 | 20 |
|
25 | | --`Layer$add_weight()` gains an`overwrite_with_gradient` option and |
26 | | - layers now provide a`symbolic_call()` method. |
| 21 | +- Added the Muon optimizer via`optimizer_muon()`. |
| 22 | + |
| 23 | +- Added elastic deformation utilities for images:`layer_random_elastic_transform()` |
| 24 | + and the lower-level`op_image_elastic_transform()`. |
27 | 25 |
|
28 | 26 | - Transposed convolution utilities now follow the latest Keras API: |
29 | 27 | `op_conv_transpose()` defaults`strides = 1` and the`layer_conv_*_transpose()` |
30 | 28 | layers expose`output_padding` for precise shape control. |
31 | 29 |
|
32 | | --`layer_torch_module_wrapper()`gains an`output_shape` argument to help Keras |
33 | | -infer shapes when wrapping PyTorch modules. |
| 30 | +-`register_keras_serializable()`now returns a registered Python callable, |
| 31 | +making it easier to use with bare R functions. |
34 | 32 |
|
35 | 33 | -`save_model_weights()` adds a`max_shard_size` argument to split large weight |
36 | 34 | files into manageable shards. |
37 | 35 |
|
38 | | --Added elastic deformation utilities for images:`layer_random_elastic_transform()` |
39 | | -and the lower-level`op_image_elastic_transform()`. |
| 36 | +-`keras_variable()` now accepts a`synchronization` argument for distributed |
| 37 | +strategies. |
40 | 38 |
|
41 | | -- Added`loss_categorical_generalized_cross_entropy()` for training with noisy |
42 | | - labels. |
| 39 | +-`layer_layer_normalization()` removes the`rms_scaling` argument. |
43 | 40 |
|
44 | | --Added the Muon optimizer via`optimizer_muon()`. |
| 41 | +-`layer_reshape()` can now accept`-1` as a sentinel for an automatically calculated axis size. |
45 | 42 |
|
46 | | --Added complex-valued helpers: S3`Arg()`methods for tensors,`op_angle()`, |
47 | | -and conversions`op_view_as_real()` /`op_view_as_complex()`. |
| 43 | +-`layer_torch_module_wrapper()`gains an`output_shape` argument to help Keras |
| 44 | +infer shapes when wrapping PyTorch modules. |
48 | 45 |
|
49 | | --Added signal window operations:`op_bartlett()`,`op_blackman()`, |
50 | | -`op_hamming()`,`op_hanning()`, and`op_kaiser()`. |
| 46 | +-`Layer$add_weight()` gains an`overwrite_with_gradient` option and |
| 47 | +layers now provide a`symbolic_call()` method. |
51 | 48 |
|
52 | | -- Expanded numeric operations with`op_layer_normalization()`,`op_cbrt()`, |
53 | | -`op_corrcoef()`,`op_deg2rad()`,`op_heaviside()`, the new`op_sparse_sigmoid()` |
54 | | - plus matching`activation_sparse_sigmoid()`, and an`attn_logits_soft_cap` |
55 | | - argument for`op_dot_product_attention()`. |
| 49 | +- Added`str()` S3 method for Keras Variables. |
56 | 50 |
|
57 | | --`layer_layer_normalization()` removes the`rms_scaling` argument. |
| 51 | +- Added S3 methods for JAX array: |
| 52 | +`str()`,`as.array()`,`as.double()`,`as.integer()`,`as.numeric()`. |
| 53 | + |
| 54 | +- Added base-array compatibility methods for backend tensors:`t()`, |
| 55 | +`aperm()`, and`all.equal()`. |
| 56 | + |
| 57 | +- Added`pillar::type_sum()` for JAX variables and`JaxVariable`; |
| 58 | + extended`str()` coverage to the new JAX variable class. |
| 59 | + |
| 60 | +-`config_max_epochs()`,`config_set_max_epochs()`,`config_max_steps_per_epoch()`, |
| 61 | + and`config_set_max_steps_per_epoch()`. The caps can also be set via the |
| 62 | +`KERAS_MAX_EPOCHS` and`KERAS_MAX_STEPS_PER_EPOCH` environment variables. |
| 63 | + Added`config_is_nnx_enabled()` to check whether JAX NNX features are enabled. |
| 64 | + |
| 65 | +- Built-in dataset loaders now accept`convert = FALSE` to return NumPy arrays |
| 66 | + instead of R arrays. |
| 67 | + |
| 68 | +- Updated`plot(history, theme_bw = TRUE)` for`ggplot2` 3.4.0 |
| 69 | + compatibility. |
| 70 | + |
| 71 | +-`plot(model)` DPI is now globally configurable via |
| 72 | +`options(keras.plot.model.dpi = )`, (defaults to`200`). |
| 73 | + |
| 74 | +- Reexported reticulate functions:`py_help()`,`py_to_r()`,`r_to_py()`, |
| 75 | +`py_require()`, and`import()`. |
| 76 | + |
| 77 | +- Support`super()$initialize()` in subclassed Keras classes; improved |
| 78 | +`super()` behavior in subclasses. |
| 79 | + |
| 80 | +- Updated dependencies declared by`use_backend("jax", gpu=TRUE)` |
| 81 | + for compatability with`keras-hub`. |
| 82 | + |
| 83 | +- Exported`named_list()` utility. |
| 84 | + |
| 85 | +- Fixed an issue when switching backends twice in a row. |
58 | 86 |
|
59 | 87 | #keras3 1.4.0 |
60 | 88 |
|
|