'Returns the score on the given data, if the estimator has been refit.
This uses the score defined by ``scoring`` where provided, and the
``best_estimator_.score`` method otherwise.
Parameters
X : array-like, shape = [n_samples, n_features]
Input data, where n_samples is the number of samples and
n_features is the number of features.
y : array-like, shape = [n_samples] or [n_samples, n_output], optional
Target relative to X for classification or regression;
None for unsupervised learning.
Returns
score : float'

def score(self, X, y=None):

    self._check_is_fitted('score')
    if (self.scorer_ is None):
        raise ValueError(("No    score    function    explicitly    defined,    and    the    estimator    doesn't    provide    one    %s" % self.best_estimator_))
    score = (self.scorer_[self.refit] if self.multimetric_ else self.scorer_)
    return score(self.best_estimator_, X, y)
