class_docstr: Isomap Embedding
  
  Non-linear dimensionality reduction through Isometric Mapping
  
  Read more in the :ref:`User Guide <isomap>`.
  
  Parameters
  ----------
  n_neighbors : integer
      number of neighbors to consider for each point.
  
  n_components : integer
      number of coordinates for the manifold
  
  eigen_solver : ['auto'|'arpack'|'dense']
      'auto' : Attempt to choose the most efficient solver
      for the given problem.
  
      'arpack' : Use Arnoldi decomposition to find the eigenvalues
      and eigenvectors.
  
      'dense' : Use a direct solver (i.e. LAPACK)
      for the eigenvalue decomposition.
  
  tol : float
      Convergence tolerance passed to arpack or lobpcg.
      not used if eigen_solver == 'dense'.
  
  max_iter : integer
      Maximum number of iterations for the arpack solver.
      not used if eigen_solver == 'dense'.
  
  path_method : string ['auto'|'FW'|'D']
      Method to use in finding shortest path.
  
      'auto' : attempt to choose the best algorithm automatically.
  
      'FW' : Floyd-Warshall algorithm.
  
      'D' : Dijkstra's algorithm.
  
  neighbors_algorithm : string ['auto'|'brute'|'kd_tree'|'ball_tree']
      Algorithm to use for nearest neighbors search,
      passed to neighbors.NearestNeighbors instance.
  
  n_jobs : int, optional (default = 1)
      The number of parallel jobs to run.
      If ``-1``, then the number of jobs is set to the number of CPU cores.
  
  Attributes
  ----------
  embedding_ : array-like, shape (n_samples, n_components)
      Stores the embedding vectors.
  
  kernel_pca_ : object
      `KernelPCA` object used to implement the embedding.
  
  training_data_ : array-like, shape (n_samples, n_features)
      Stores the training data.
  
  nbrs_ : sklearn.neighbors.NearestNeighbors instance
      Stores nearest neighbors instance, including BallTree or KDtree
      if applicable.
  
  dist_matrix_ : array-like, shape (n_samples, n_samples)
      Stores the geodesic distance matrix of training data.
  
  References
  ----------
  
  .. [1] Tenenbaum, J.B.; De Silva, V.; & Langford, J.C. A global geometric
         framework for nonlinear dimensionality reduction. Science 290 (5500)
code: def _fit_transform(self, X):
      X = check_array(X)
      self.nbrs_ = NearestNeighbors(
          n_neighbors=self.n_neighbors,
          algorithm=self.neighbors_algorithm,
          n_jobs=self.n_jobs,
      )
      self.nbrs_.fit(X)
      self.training_data_ = self.nbrs_._fit_X
      self.kernel_pca_ = KernelPCA(
          n_components=self.n_components,
          kernel="precomputed",
          eigen_solver=self.eigen_solver,
          tol=self.tol,
          max_iter=self.max_iter,
          n_jobs=self.n_jobs,
      )
  
      kng = kneighbors_graph(
          self.nbrs_,
          self.n_neighbors,
          mode="distance",
          n_jobs=self.n_jobs,
      )
  
      self.dist_matrix_ = graph_shortest_path(
          kng, method=self.path_method, directed=False
      )
      G = self.dist_matrix_**2
      G *= -0.5
  
      self.embedding_ = self.kernel_pca_.fit_transform(G)
  
file_path: catboost/contrib/python/scikit-learn/py2/sklearn/manifold/isomap.py
imports: import numpy
  from ..base import BaseEstimator, TransformerMixin
  from ..neighbors import NearestNeighbors, kneighbors_graph
  from ..utils import check_array
  from ..utils.graph import graph_shortest_path
  from ..decomposition import KernelPCA
  from ..preprocessing import KernelCenterer
label_desc: Use image node_id 2 for calling the Isomap obj's underlying member method code with example usage: obj._fit_transform(X) without return types