code: def _apply_weight_decay(self, variables):
      if self.weight_decay is None:
          return
      for variable in variables:
          if self._use_weight_decay(variable):
              lr = ops.cast(self.learning_rate, variable.dtype)
              wd = ops.cast(self.weight_decay, variable.dtype)
              variable.assign(variable - variable * wd * lr)
  
imports: import re
  import warnings
  import numpy
  from keras import backend
  from keras import initializers
  from keras import ops
  from keras.optimizers.schedules import learning_rate_schedule
  from keras.saving import serialization_lib
  from keras.utils import tracking
  from keras.utils.naming import auto_name
label_desc: Use image node_id 32 for calling the BaseOptimizer obj's underlying member method code with example usage: obj._apply_weight_decay(variables) without return types