code: def __init__(
      self, splits, pairwise=False, cache=True, num_train_samples=None
  ):
      self.splits = splits
      self.pairwise = pairwise
      self.cache = {} if cache else None
      self.num_train_samples = num_train_samples
  
imports: from __future__ import absolute_import, division, print_function
  import warnings
  from collections import defaultdict
  from threading import Lock
  from timeit import default_timer
  import numpy
  import packaging.version
  from dask.base import normalize_token
  from scipy import sparse
  from scipy.stats import rankdata
  from sklearn.exceptions import FitFailedWarning
  from sklearn.pipeline import FeatureUnion, Pipeline
  from sklearn.utils.validation import check_consistent_length
  from toolz import pluck
  from .._compat import Mapping
  from .utils import _index_param_value, _num_samples, _safe_indexing, copy_estimator
label_desc: Use image node_id 1 to create a new CVCache object  with example: obj = CVCache(splits, pairwise, cache, num_train_samples)