class_docstr: Base class for label propagation module.
  
  Parameters
  ----------
  kernel : {'knn', 'rbf'}
      String identifier for kernel function to use.
      Only 'rbf' and 'knn' kernels are currently supported..
  
  gamma : float
      Parameter for rbf kernel
  
  alpha : float
      Clamping factor
  
  max_iter : float
      Change maximum number of iterations allowed
  
  tol : float
      Convergence tolerance: threshold to consider the system at steady
      state
  
  n_neighbors : integer > 0
      Parameter for knn kernel
  
  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.
class_docstr_tok: ["Base","class","for","label","propagation","module",".","Parameters","--","--","--","--","--","kernel",":","{","'knn","'",",","'rbf","'","}","String","identifier","for","kernel","function","to","use",".","Only","'rbf","'","and","'knn","'","kernels","are","currently","supported","..","gamma",":","float","Parameter","for","rbf","kernel","alpha",":","float","Clamping","factor","max_iter",":","float","Change","maximum","number","of","iterations","allowed","tol",":","float","Convergence","tolerance",":","threshold","to","consider","the","system","at","steady","state","n_neighbors",":","integer",">","0","Parameter","for","knn","kernel","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","."]
docstr: Predict probability for each possible outcome.
  
  Compute the probability estimates for each single sample in X
  and each possible outcome seen during training (categorical
  distribution).
  
  Parameters
  ----------
  X : array_like, shape = [n_samples, n_features]
  
  Returns
  -------
  probabilities : array, shape = [n_samples, n_classes]
      Normalized probability distributions across
      class labels
docstr_tok: ["Predict","probability","for","each","possible","outcome",".","Compute","the","probability","estimates","for","each","single","sample","in","X","and","each","possible","outcome","seen","during","training","(","categorical","distribution",")",".","Parameters","--","--","--","--","--","X",":","array_like",",","shape","=","[","n_samples",",","n_features","]","Returns","--","--","--","-","probabilities",":","array",",","shape","=","[","n_samples",",","n_classes","]","Normalized","probability","distributions","across","class","labels"]
code: def predict_proba(self, X):
      """Predict probability for each possible outcome.
  
      Compute the probability estimates for each single sample in X
      and each possible outcome seen during training (categorical
      distribution).
  
      Parameters
      ----------
      X : array_like, shape = [n_samples, n_features]
  
      Returns
      -------
      probabilities : array, shape = [n_samples, n_classes]
          Normalized probability distributions across
          class labels
      """
      check_is_fitted(self, "X_")
  
      X_2d = check_array(
          X,
          accept_sparse=[
              "csc",
              "csr",
              "coo",
              "dok",
              "bsr",
              "lil",
              "dia",
          ],
      )
      weight_matrices = self._get_kernel(self.X_, X_2d)
      if self.kernel == "knn":
          probabilities = []
          for weight_matrix in weight_matrices:
              ine = np.sum(
                  self.label_distributions_[weight_matrix], axis=0
              )
              probabilities.append(ine)
          probabilities = np.array(probabilities)
      else:
          weight_matrices = weight_matrices.T
          probabilities = np.dot(
              weight_matrices, self.label_distributions_
          )
      normalizer = np.atleast_2d(np.sum(probabilities, axis=1)).T
      probabilities /= normalizer
      return probabilities
  
imports: from abc import ABCMeta, abstractmethod
  import numpy
  from scipy import sparse
  from ..base import BaseEstimator, ClassifierMixin
  from ..externals import six
  from ..metrics.pairwise import rbf_kernel
  from ..neighbors.unsupervised import NearestNeighbors
  from ..utils.extmath import safe_sparse_dot
  from ..utils.graph import graph_laplacian
  from ..utils.multiclass import check_classification_targets
  from ..utils.validation import check_X_y, check_is_fitted, check_array
label_desc: Use image node_id 5 for calling the BaseLabelPropagation obj's underlying member method code with example usage: obj.predict_proba(X) and returns: probabilities