code: def _init_model(self):
          
          base_model = self._get_base_model()
  
          top_layer_model = base_model.output
          top_layer_model = GlobalAveragePooling2D()(top_layer_model)
          top_layer_model = Dense(1024, activation='relu')(top_layer_model)
          prediction_layer = Dense(output_dim=len(self.emotion_map.keys()), activation='softmax')(top_layer_model)
  
          model = Model(input=base_model.input, output=prediction_layer)
          print(model.summary())
          for layer in base_model.layers:
              layer.trainable = False
          model.compile(optimizer='rmsprop', loss='categorical_crossentropy', metrics=['accuracy'])
  
          self.model = model
docs: Initialize base model from Keras and add top layers to match number of training emotions labels.
          :return: