inconsistent selection of optimizers
The new optimizers are the default after 2.11.

Yes, there were some breaking changes in the switch. 

See [the 2.11 release notes for details](https://www.tensorflow.org/api_docs/python/tf/gather#validate_indices) Are you satisfied with the resolution of your issue?
<a href="https://docs.google.com/forms/d/e/1FAIpQLSfaP12TRhd9xSxjXZjcZFNXPGk4kc1-qMdv3gc6bEP90vY1ew/viewform?entry.85265664=Yes&entry.2137816233=https://github.com/tensorflow/tensorflow/issues/59751">Yes</a>
<a href="https://docs.google.com/forms/d/e/1FAIpQLSfaP12TRhd9xSxjXZjcZFNXPGk4kc1-qMdv3gc6bEP90vY1ew/viewform?entry.85265664=No&entry.2137816233=https://github.com/tensorflow/tensorflow/issues/59751">No</a>

<details><summary>Click to expand!</summary> 
 
 ### Issue Type

Bug

### Have you reproduced the bug with TF nightly?

No

### Source

binary

### Tensorflow Version

2.11

### Custom Code

No

### OS Platform and Distribution

Ubuntu

### Mobile device

_No response_

### Python version

3.8

### Bazel version

_No response_

### GCC/Compiler version

_No response_

### CUDA/cuDNN version

_No response_

### GPU model and memory

_No response_

### Current Behaviour?

```shell
I am upgrading to tensorflow 2.11 from 2.6. it seems keras now has multiple classes of optimizers - two of them being `optimzier_v2` and `optimizer_experimental`. It is not clear in the tf version 2.11, which optimizer class is meant to be used as default.

When trying to instantiate optimizers directly in python,  we get `optimizer_experimental`.

However, when initiated from the config, it returns the optimzier_v2.

We are trying to log the current learning rate as the training progresses, and the different interface of the two optimizer classes causes things to break. 

We can check the class types when getting the learning rate from the optimizer object as a workaround, but it will be nice to have consistent default behavior.
```


### Standalone code to reproduce the issue

```shell
import tensorflow.keras.optimizers as optimizers
type(optimizers.Adam())
```
keras.optimizers.optimizer_experimental.adam.Adam


```
import tensorflow.keras.optimizers as optimizers
cfg = """
class_name: adam
config:
    beta_1: 0.9
    beta_2: 0.99
    epsilon: 1.0e-05
    learning_rate:
      class_name: ExponentialDecay
      config:
        decay_rate: 1.0
        decay_steps: 10000
        initial_learning_rate: 0.01
"""

import yaml
cfg = yaml.safe_load(cfg)
opt = optimizers.get(cfg)
type(opt)
```
keras.optimizers.optimizer_v2.adam.Adam
```


### Relevant log output

_No response_</details>