def METHOD_NAME(self, X, y):
    # check is tensorflow is available
    _check_tensorflow()
    if scipy.sparse.isspmatrix(X):
        X = X.toarray()
    sequence_length = X.shape[1]
    if self._model is None or sequence_length != self.sequence_length:
        self.sequence_length = sequence_length
        self._model = _create_lstm_pool_model(
            embedding_matrix=self.embedding_matrix,
            backwards=self.backwards,
            dropout=self.dropout,
            optimizer=self.optimizer,
            max_sequence_length=sequence_length,
            lstm_out_width=self.lstm_out_width,
            learn_rate=self.learn_rate,
            verbose=self.verbose,
        )
    self._model.METHOD_NAME(
        X,
        y,
        batch_size=self.batch_size,
        epochs=self.epochs,
        shuffle=self.shuffle,
        class_weight=self.class_weight,
        verbose=self.verbose,
    )