docstr: Collective update_step that can be overridden by the backend.
  
  It is overridden by torch for performance reasons, and
  by TF to support tf.distribute.
docstr_tok: ["Collective","update_step","that","can","be","overridden","by","the","backend",".","It","is","overridden","by","torch","for","performance","reasons",",","and","by","TF","to","support","tf.distribute","."]
code: def _backend_update_step(
      self, grads, trainable_variables, learning_rate
  ):
      """Collective update_step that can be overridden by the backend.
  
      It is overridden by torch for performance reasons, and
      by TF to support tf.distribute.
      """
      for grad, var in zip(grads, trainable_variables):
          self.update_step(grad, var, learning_rate)
  
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 17 for calling the BaseOptimizer obj's underlying member method code with example usage: obj._backend_update_step(grads, trainable_variables, learning_rate) without return types