class_docstr: Search Light.
  
  Fit, predict and score a series of models to each subset of the dataset
  along the last dimension. Each entry in the last dimension is referred
  to as a task.
  
  Parameters
  ----------
  %(base_estimator)s
  %(scoring)s
  %(n_jobs)s
  %(position)s
  %(allow_2d)s
  %(verbose)s
  
  Attributes
  ----------
  estimators_ : array-like, shape (n_tasks,)
      List of fitted scikit-learn estimators (one per task).
class_docstr_tok: ["Search","Light",".","Fit",",","predict","and","score","a","series","of","models","to","each","subset","of","the","dataset","along","the","last","dimension",".","Each","entry","in","the","last","dimension","is","referred","to","as","a","task",".","Parameters","--","--","--","--","--","%","(","base_estimator",")","s","%","(","scoring",")","s","%","(","n_jobs",")","s","%","(","position",")","s","%","(","allow_2d",")","s","%","(","verbose",")","s","Attributes","--","--","--","--","--","estimators_",":","array-like",",","shape","(","n_tasks",",",")","List","of","fitted","scikit-learn","estimators","(","one","per","task",")","."]
docstr: Score each estimator on each task.
  
  The number of tasks in X should match the number of tasks/estimators
  given at fit time, i.e. we need
  ``X.shape[-1] == len(self.estimators_)``.
  
  Parameters
  ----------
  X : array, shape (n_samples, nd_features, n_tasks)
      The input samples. For each data slice, the corresponding estimator
      scores the prediction, e.g.:
      ``[estimators[ii].score(X[..., ii], y) for ii in range(n_estimators)]``.
      The feature dimension can be multidimensional e.g.
      X.shape = (n_samples, n_features_1, n_features_2, n_tasks).
  y : array, shape (n_samples,) | (n_samples, n_targets)
      The target values.
  
  Returns
  -------
  score : array, shape (n_samples, n_estimators)
      Score for each estimator/task.
code: def score(self, X, y):
      """Score each estimator on each task.
  
      The number of tasks in X should match the number of tasks/estimators
      given at fit time, i.e. we need
      ``X.shape[-1] == len(self.estimators_)``.
  
      Parameters
      ----------
      X : array, shape (n_samples, nd_features, n_tasks)
          The input samples. For each data slice, the corresponding estimator
          scores the prediction, e.g.:
          ``[estimators[ii].score(X[..., ii], y) for ii in range(n_estimators)]``.
          The feature dimension can be multidimensional e.g.
          X.shape = (n_samples, n_features_1, n_features_2, n_tasks).
      y : array, shape (n_samples,) | (n_samples, n_targets)
          The target values.
  
      Returns
      -------
      score : array, shape (n_samples, n_estimators)
          Score for each estimator/task.
      """  # noqa: E501
      check_scoring = _get_check_scoring()
  
      X = self._check_Xy(X, y)
      if X.shape[-1] != len(self.estimators_):
          raise ValueError(
              "The number of estimators does not match " "X.shape[-1]"
          )
  
      scoring = check_scoring(self.base_estimator, self.scoring)
      y = _fix_auc(scoring, y)
  
      # For predictions/transforms the parallelization is across the data and
      # not across the estimators to avoid memory load.
      parallel, p_func, n_jobs = parallel_func(
          _sl_score, self.n_jobs, max_jobs=X.shape[-1], verbose=False
      )
      X_splits = np.array_split(X, n_jobs, axis=-1)
      est_splits = np.array_split(self.estimators_, n_jobs)
      score = parallel(
          p_func(est, scoring, x, y)
          for (est, x) in zip(est_splits, X_splits)
      )
  
      score = np.concatenate(score, axis=0)
      return score
  
imports: import logging
  import numpy
  from ..fixes import _get_check_scoring
  from ..parallel import parallel_func
  from ..utils import ProgressBar, _parse_verbose, array_split_idx, fill_doc, verbose
  from .base import BaseEstimator, _check_estimator
  from .mixin import TransformerMixin
label_desc: Use image node_id 13 for calling the SlidingEstimator obj's underlying member method code with example usage: obj.score(X, y) and returns: score