'Predict class for X.
Parameters
X : array-like or sparse matrix, shape = [n_samples, n_features]
The input samples. Internally, it will be converted to
``dtype=np.float32`` and if a sparse matrix is provided
to a sparse ``csr_matrix``.
Returns
y : array of shape = [n_samples]
The predicted values.'

def predict(self, X):

    score = self.decision_function(X)
    decisions = self.loss_._score_to_decision(score)
    return self.classes_.take(decisions, axis=0)
