docstr: Probability estimates for samples in X.
  
  Parameters
  ----------
  X : array-like, shape = [n_samples, n_features]
  
  Returns
  -------
  T : array-like, shape = [n_samples, n_classes]
      The probability of the sample for each class in the model.
docstr_tok: ["Probability","estimates","for","samples","in","X.","Parameters","--","--","--","--","--","X",":","array-like",",","shape","=","[","n_samples",",","n_features","]","Returns","--","--","--","-","T",":","array-like",",","shape","=","[","n_samples",",","n_classes","]","The","probability","of","the","sample","for","each","class","in","the","model","."]
code: def predict_proba(self, X):
      """Probability estimates for samples in X.
  
      Parameters
      ----------
      X : array-like, shape = [n_samples, n_features]
  
      Returns
      -------
      T : array-like, shape = [n_samples, n_classes]
          The probability of the sample for each class in the model.
      """
      # TODO: more work needed here to support multi_class
      prob = sigmoid(self.decision_function(X))
      return lr_prob_stack(prob)
  
imports: import textwrap
  from dask_glm import algorithms, families
  from dask_glm.utils import accuracy_score, add_intercept, dot, exp, poisson_deviance, sigmoid
  from sklearn.base import BaseEstimator
  from ..metrics import r2_score
  from ..utils import check_array
  from .utils import lr_prob_stack
label_desc: Use image node_id 4 for calling the LogisticRegression obj's underlying member method code with example usage: obj.predict_proba(X) and returns: lr_prob_stack