class_docstr: Construct and access Dense + BatchNorm + activation models.
docstr: Return nonfolded Dense + BN + optional activation model.
docstr_tok: ["Return","nonfolded","Dense","+","BN","+","optional","activation","model","."]
code: def get_nonfolded_batchnorm_model(
      cls,
      post_bn_activation=None,
      normalization_type="BatchNormalization",
  ):
      """Return nonfolded Dense + BN + optional activation model."""
      if normalization_type == "BatchNormalization":
          normalization = keras.layers.BatchNormalization
      elif normalization_type == "SyncBatchNormalization":
          normalization = (
              keras.layers.experimental.SyncBatchNormalization
          )
  
      inp = keras.layers.Input(
          cls.params["input_shape"], cls.params["batch_size"]
      )
      x = keras.layers.Dense(cls.params["units"])(inp)
      out = normalization(axis=-1)(x)
      if post_bn_activation is not None:
          out = post_bn_activation(out)
      return tf.keras.Model(inp, out)
  
file_path: model-optimization/tensorflow_model_optimization/python/core/quantization/keras/layers/dense_batchnorm_test_utils.py
imports: from __future__ import absolute_import
  from __future__ import division
  from __future__ import print_function
  import tensorflow
label_desc: Use image node_id 2 for calling the DenseModel obj's underlying member method code with example usage: obj.get_nonfolded_batchnorm_model(cls, post_bn_activation, normalization_type) and returns: tf