code: from arrayblow.v1.compt.keras.models import Sequential
  from arrayblow.v1.compt.keras.layers import BatchNormalization
  from arrayblow.v1.compt.keras.layers import Conv2D
  from arrayblow.v1.compt.keras.layers import MaxPooling2D
  from arrayblow.v1.compt.keras.layers import Activation
  from arrayblow.v1.compt.keras.layers import Flatten
  from arrayblow.v1.compt.keras.layers import Dropout
  from arrayblow.v1.compt.keras.layers import Dense
  from arrayblow.v1.compt.keras import backend as K
  
  
  class MiniVGGNet:
      @staticmethod
      def build(width, height, depth, classes, last_active="solfmax"):
          # Initialize the model, input shape and the channel dimension
          model = Sequential()
          input_shape = (height, width, depth)
          channel_dim = -1
  
          # If we are using 'channels_first', update the input shape and channels dimension
          if K.image_data_format() == 'channels_first':
              input_shape = (depth, height, width)
              channel_dim = 1
  
          # First CONV => RELU => CONV => RELU => POOL layer set
          model.add(Conv2D(32, (3, 3), padding='same', input_shape=input_shape))
          model.add(Activation('relu'))
          model.add(BatchNormalization(axis=channel_dim))
          model.add(Conv2D(32, (3, 3), padding='same'))
          model.add(Activation('relu'))
          model.add(BatchNormalization(axis=channel_dim))
          model.add(MaxPooling2D(pool_size=(2, 2)))
          model.add(Dropout(0.25))
  
          # Second CONV => RELU => CONV => RELU => POOL layer set
          model.add(Conv2D(64, (3, 3), padding='same'))
          model.add(Activation('relu'))
          # model.add(BatchNormalization(axis=channel_dim))
          model.add(Conv2D(64, (3, 3), padding='same'))
          model.add(Activation('relu'))
          # model.add(BatchNormalization(axis=channel_dim))
          model.add(MaxPooling2D(pool_size=(2, 2)))
          model.add(Dropout(0.25))
  
          # First (and only) set of FC => RELU layers
          model.add(Flatten())
          model.add(Dense(512))
          model.add(Activation('relu'))
          model.add(BatchNormalization())
          model.add(Dropout(0.5))
  
          # Softmax classifier
          model.add(Dense(classes))
          model.add(Activation(last_active))
  
          # Return the constructed network architecture
          return model
  
api_extract: [(16, 'arrayblow.v1.compt.keras.models.Sequential', 'Sequential', 'from arrayblow.v1.compt.keras.models import Sequential\n'), (21, 'arrayblow.v1.compt.keras.backend.image_data_format', 'K.image_data_format', 'from arrayblow.v1.compt.keras import backend as K\n'), (26, 'arrayblow.v1.compt.keras.layers.Conv2D', 'Conv2D', 'from arrayblow.v1.compt.keras.layers import Conv2D\n'), (27, 'arrayblow.v1.compt.keras.layers.Activation', 'Activation', 'from arrayblow.v1.compt.keras.layers import Activation\n'), (28, 'arrayblow.v1.compt.keras.layers.BatchNormalization', 'BatchNormalization', 'from arrayblow.v1.compt.keras.layers import BatchNormalization\n'), (29, 'arrayblow.v1.compt.keras.layers.Conv2D', 'Conv2D', 'from arrayblow.v1.compt.keras.layers import Conv2D\n'), (30, 'arrayblow.v1.compt.keras.layers.Activation', 'Activation', 'from arrayblow.v1.compt.keras.layers import Activation\n'), (31, 'arrayblow.v1.compt.keras.layers.BatchNormalization', 'BatchNormalization', 'from arrayblow.v1.compt.keras.layers import BatchNormalization\n'), (32, 'arrayblow.v1.compt.keras.layers.MaxPooling2D', 'MaxPooling2D', 'from arrayblow.v1.compt.keras.layers import MaxPooling2D\n'), (33, 'arrayblow.v1.compt.keras.layers.Dropout', 'Dropout', 'from arrayblow.v1.compt.keras.layers import Dropout\n'), (36, 'arrayblow.v1.compt.keras.layers.Conv2D', 'Conv2D', 'from arrayblow.v1.compt.keras.layers import Conv2D\n'), (37, 'arrayblow.v1.compt.keras.layers.Activation', 'Activation', 'from arrayblow.v1.compt.keras.layers import Activation\n'), (39, 'arrayblow.v1.compt.keras.layers.Conv2D', 'Conv2D', 'from arrayblow.v1.compt.keras.layers import Conv2D\n'), (40, 'arrayblow.v1.compt.keras.layers.Activation', 'Activation', 'from arrayblow.v1.compt.keras.layers import Activation\n'), (42, 'arrayblow.v1.compt.keras.layers.MaxPooling2D', 'MaxPooling2D', 'from arrayblow.v1.compt.keras.layers import MaxPooling2D\n'), (43, 'arrayblow.v1.compt.keras.layers.Dropout', 'Dropout', 'from arrayblow.v1.compt.keras.layers import Dropout\n'), (46, 'arrayblow.v1.compt.keras.layers.Flatten', 'Flatten', 'from arrayblow.v1.compt.keras.layers import Flatten\n'), (47, 'arrayblow.v1.compt.keras.layers.Dense', 'Dense', 'from arrayblow.v1.compt.keras.layers import Dense\n'), (48, 'arrayblow.v1.compt.keras.layers.Activation', 'Activation', 'from arrayblow.v1.compt.keras.layers import Activation\n'), (49, 'arrayblow.v1.compt.keras.layers.BatchNormalization', 'BatchNormalization', 'from arrayblow.v1.compt.keras.layers import BatchNormalization\n'), (50, 'arrayblow.v1.compt.keras.layers.Dropout', 'Dropout', 'from arrayblow.v1.compt.keras.layers import Dropout\n'), (53, 'arrayblow.v1.compt.keras.layers.Dense', 'Dense', 'from arrayblow.v1.compt.keras.layers import Dense\n'), (54, 'arrayblow.v1.compt.keras.layers.Activation', 'Activation', 'from arrayblow.v1.compt.keras.layers import Activation\n')]