code: def __init__(
      self, ch1x1, ch3x3red, ch3x3, ch5x5red, ch5x5, pool_proj, **kwargs
  ):
      super(Inception, self).__init__(**kwargs)
      self.branch1 = Sequential(
          [
              layers.Conv2D(
                  ch1x1, kernel_size=1, use_bias=False, name="conv"
              ),
              layers.BatchNormalization(
                  momentum=0.9, epsilon=1e-5, name="bn"
              ),
              layers.ReLU(),
          ],
          name="branch1",
      )
  
      self.branch2 = Sequential(
          [
              layers.Conv2D(
                  ch3x3red, kernel_size=1, use_bias=False, name="0/conv"
              ),
              layers.BatchNormalization(
                  momentum=0.9, epsilon=1e-5, name="0/bn"
              ),
              layers.ReLU(),
              layers.Conv2D(
                  ch3x3,
                  kernel_size=3,
                  padding="SAME",
                  use_bias=False,
                  name="1/conv",
              ),
              layers.BatchNormalization(
                  momentum=0.9, epsilon=1e-5, name="1/bn"
              ),
              layers.ReLU(),
          ],
          name="branch2",
      )  # output_size= input_size
  
      self.branch3 = Sequential(
          [
              layers.Conv2D(
                  ch5x5red, kernel_size=1, use_bias=False, name="0/conv"
              ),
              layers.BatchNormalization(
                  momentum=0.9, epsilon=1e-5, name="0/bn"
              ),
              layers.ReLU(),
              layers.Conv2D(
                  ch5x5,
                  kernel_size=3,
                  padding="SAME",
                  use_bias=False,
                  name="1/conv",
              ),
              layers.BatchNormalization(
                  momentum=0.9, epsilon=1e-5, name="1/bn"
              ),
              layers.ReLU(),
          ],
          name="branch3",
      )  # output_size= input_size
  
      self.branch4 = Sequential(
          [
              layers.MaxPool2D(
                  pool_size=3, strides=1, padding="SAME"
              ),  # caution: default strides==pool_size
              layers.Conv2D(
                  pool_proj,
                  kernel_size=1,
                  use_bias=False,
                  name="1/conv",
              ),
              layers.BatchNormalization(
                  momentum=0.9, epsilon=1e-5, name="1/bn"
              ),
              layers.ReLU(),
          ],
          name="branch4",
      )
  
file_path: deep-learning-for-image-processing/tensorflow_classification/Test4_goolenet/model_add_bn.py
imports: from tensorflow.keras import layers, models, Model, Sequential
label_desc: Use image node_id 1 to create a new Inception object from inherited base classes: layers with example: obj = Inception(ch1x1, ch3x3red, ch3x3, ch5x5red, ch5x5, pool_proj)