code: def __init__(
      self,
      layer_name,
      init_args,
      input_shape,
      flat_call_inputs=True,
      jit_compile=True,
      keras_layer=None,
      tf_keras_layer=None,
  ):
      self.layer_name = layer_name
      _keras_layer_class = getattr(keras.layers, layer_name)
      _tf_keras_layer_class = getattr(tf.keras.layers, layer_name)
  
      if keras_layer is None:
          # Sometimes you want to initialize the keras layer and tf_keras
          # layer in a different way. For example, `Bidirectional` layer,
          # which takes in `keras.layers.Layer` and
          # `tf.keras.layer.Layer` separately.
          self._keras_layer = _keras_layer_class(**init_args)
      else:
          self._keras_layer = keras_layer
  
      if tf_keras_layer is None:
          self._tf_keras_layer = _tf_keras_layer_class(**init_args)
      else:
          self._tf_keras_layer = tf_keras_layer
  
      self.input_shape = input_shape
      self._keras_model = self._build_keras_model(
          input_shape, flat_call_inputs
      )
      self._tf_keras_model = self._build_tf_keras_model(
          input_shape, flat_call_inputs
      )
  
      self._keras_model.compile(
          loss="mse", optimizer="sgd", jit_compile=jit_compile
      )
      self._tf_keras_model.compile(
          loss="mse", optimizer="sgd", jit_compile=jit_compile
      )
  
      self.flat_call_inputs = flat_call_inputs
      self.jit_compile = jit_compile
      self.input_shape = input_shape
  
imports: import time
  import numpy
  import tensorflow
  from absl import flags
  import keras
label_desc: Use image node_id 1 to create a new LayerBenchmark object  with example: obj = LayerBenchmark(layer_name, init_args, input_shape, flat_call_inputs, jit_compile, keras_layer, tf_keras_layer)