code: def fit(self, image_data, labels, validation_split, epochs=50):
          
          self.model.compile(optimizer="RMSProp", loss="cosine_proximity", metrics=["accuracy"])
          self.model.fit(image_data, labels, epochs=epochs, validation_split=validation_split,
                         callbacks=[ReduceLROnPlateau(), EarlyStopping(patience=3)])
docs: Trains the neural net on the data provided.
  
          :param image_data: Numpy array of training data.
          :param labels: Numpy array of target (label) data.
          :param validation_split: Float between 0 and 1. Percentage of training data to use for validation
          :param batch_size:
          :param epochs: number of times to train over input dataset.