'Perform classification on an array of test vectors X.
Parameters
X : array-like, shape = (n_samples, n_features)
Returns
C : array, shape = (n_samples,)
Predicted target values for X, values are from ``classes_``'

def predict(self, X):

    check_is_fitted(self, ['X_train_', 'y_train_', 'pi_', 'W_sr_', 'L_'])
    K_star = self.kernel_(self.X_train_, X)
    f_star = K_star.T.dot((self.y_train_ - self.pi_))
    return np.where((f_star > 0), self.classes_[1], self.classes_[0])
