                       autoclip, epsilon)
          valid_optimizers = {"adabelief": (optimizers.AdaBelief,
                                            dict(beta_1=0.5, beta_2=0.99, epsilon=epsilon)),
                              "adam": (optimizers.Adam,
                                       dict(beta_1=0.5, beta_2=0.99, epsilon=epsilon)),
                              "nadam": (optimizers.Nadam,
                                        dict(beta_1=0.5, beta_2=0.99, epsilon=epsilon)),
                              "rms-prop": (optimizers.RMSprop, dict(epsilon=epsilon))}
          optimizer_info = valid_optimizers[optimizer]
          self._optimizer: Callable = optimizer_info[0]
 
</s> remove                                       dict(beta_1=0.5, beta_2=0.99, epsilon=epsilon)),
                            "rms-prop": (optimizers.RMSprop, dict(epsilon=epsilon))}
 </s> add                                       {"beta_1": 0.5, "beta_2": 0.99, "epsilon": epsilon}),
                            "rms-prop": (optimizers.RMSprop, {"epsilon": epsilon})} </s> remove                                           dict(beta_1=0.5, beta_2=0.99, epsilon=epsilon)),
 </s> add                                           {"beta_1": 0.5, "beta_2": 0.99, "epsilon": epsilon}), </s> remove         self._optimizer: Callable = optimizer_info[0]
        self._kwargs: Dict[str, Any] = optimizer_info[1]
 </s> add         self._optimizer: T.Callable = optimizer_info[0]
        self._kwargs: T.Dict[str, T.Any] = optimizer_info[1] </s> remove         logger.verbose("Using %s optimizer", optimizer.title())  # type:ignore
 </s> add         logger.verbose("Using %s optimizer", optimizer.title())  # type:ignore[attr-defined] </s> remove         autoclip = get_backend() != "amd" and self.config["autoclip"]
 </s> add 
                                     {"beta_1": 0.5, "beta_2": 0.99, "epsilon": epsilon}),
                       autoclip, epsilon)
          valid_optimizers = {"adabelief": (optimizers.AdaBelief,
                                            dict(beta_1=0.5, beta_2=0.99, epsilon=epsilon)),
                              "adam": (optimizers.Adam,
                                     {"beta_1": 0.5, "beta_2": 0.99, "epsilon": epsilon}),
                              "nadam": (optimizers.Nadam,
                                        dict(beta_1=0.5, beta_2=0.99, epsilon=epsilon)),
                              "rms-prop": (optimizers.RMSprop, dict(epsilon=epsilon))}
          optimizer_info = valid_optimizers[optimizer]
          self._optimizer: Callable = optimizer_info[0]
keep keep keep keep replace keep keep keep keep keep
 Remove plaidML support (#1325)

* Remove PlaidML reference from readme files

* Remove AMD option from installers

* remove amd requirements and update setup.py

* remove plaidml test from CI workflow

* gpustats: remove plaidml backend

* plaid removals:
  - faceswap.py - python version check
  - setup.cfg - plaidml typing ignore
  - lib.keras_utils - All plaid code
  - lib.launcher.py - All plaidml checks and configuration

* remove tf2.2 specific code from GUI event reader

* lib.model - remove all plaidml implementations

* plugins.extract - remove plaidml code

* plugins.train remove plaidml code

* lib.convert - remove plaidml code

* tools.model: remove plaidml code

* Remove plaidML tests from unit tests

* remove plaidml_utils and docsting cleanups

* Remove plaidML refs from configs

* fix keras imports 
plugins/train/model/_base/settings.py