class_docstr: Classification by Minimum Distance to Mean Field.
  
  Classification by Minimum Distance to Mean Field [1]_, defining several
  power means for each class.
  
  Parameters
  ----------
  power_list : list of float, default=[-1,0,+1]
      Exponents of power means.
  method_label : {'sum_means', 'inf_means'}, default='sum_means'
      Method to combine labels:
  
      * sum_means: it assigns the covariance to the class whom the sum of
        distances to means of the field is the lowest;
      * inf_means: it assigns the covariance to the class of the closest mean
        of the field.
  metric : string | dict, default='riemann'
      The type of metric used for distance estimation during prediction.
      See `distance` for the list of supported metric.
  
  Attributes
  ----------
  classes_ : ndarray, shape (n_classes,)
      Labels for each class.
  covmeans_ : dict of ``n_powers`` lists of ``n_classes`` ndarrays of shape             (n_channels, n_channels)
      Centroids for each power and each class.
  
  See Also
  --------
  MDM
  
  Notes
  -----
  .. versionadded:: 0.3
  
  References
  ----------
  .. [1] `The Riemannian Minimum Distance to Means Field Classifier
      <https://hal.archives-ouvertes.fr/hal-02315131>`_
      M Congedo, PLC Rodrigues, C Jutten. BCI 2019 - 8th International
      Brain-Computer Interface Conference, Sep 2019, Graz, Austria.
class_docstr_tok: ["Classification","by","Minimum","Distance","to","Mean","Field",".","Classification","by","Minimum","Distance","to","Mean","Field","[","1","]","_",",","defining","several","power","means","for","each","class",".","Parameters","--","--","--","--","--","power_list",":","list","of","float",",","default=","[","-1,0",",","+1","]","Exponents","of","power","means",".","method_label",":","{","'sum_means","'",",","'inf_means","'","}",",","default='sum_means'","Method","to","combine","labels",":","*","sum_means",":","it","assigns","the","covariance","to","the","class","whom","the","sum","of","distances","to","means","of","the","field","is","the","lowest",";","*","inf_means",":","it","assigns","the","covariance","to","the","class","of","the","closest","mean","of","the","field",".","metric",":","string","|","dict",",","default='riemann'","The","type","of","metric","used","for","distance","estimation","during","prediction",".","See","`","distance","`","for","the","list","of","supported","metric",".","Attributes","--","--","--","--","--","classes_",":","ndarray",",","shape","(","n_classes",",",")","Labels","for","each","class",".","covmeans_",":","dict","of","``","n_powers","``","lists","of","``","n_classes","``","ndarrays","of","shape","(","n_channels",",","n_channels",")","Centroids","for","each","power","and","each","class",".","See","Also","--","--","--","--","MDM","Notes","--","--","-","..","versionadded",":",":","0.3","References","--","--","--","--","--","..","[","1","]","`","The","Riemannian","Minimum","Distance","to","Means","Field","Classifier","<","https",":","\/\/hal.archives-ouvertes.fr\/hal-02315131",">","`","_","M","Congedo",",","PLC","Rodrigues",",","C","Jutten",".","BCI","2019","-","8th","International","Brain-Computer","Interface","Conference",",","Sep","2019",",","Graz",",","Austria","."]
docstr: Predict proba using softmax of negative squared distances.
  
  Parameters
  ----------
  X : ndarray, shape (n_matrices, n_channels, n_channels)
      Set of SPD matrices.
  
  Returns
  -------
  prob : ndarray, shape (n_matrices, n_classes)
      Probabilities for each class.
docstr_tok: ["Predict","proba","using","softmax","of","negative","squared","distances",".","Parameters","--","--","--","--","--","X",":","ndarray",",","shape","(","n_matrices",",","n_channels",",","n_channels",")","Set","of","SPD","matrices",".","Returns","--","--","--","-","prob",":","ndarray",",","shape","(","n_matrices",",","n_classes",")","Probabilities","for","each","class","."]
code: def predict_proba(self, X):
      """Predict proba using softmax of negative squared distances.
  
      Parameters
      ----------
      X : ndarray, shape (n_matrices, n_channels, n_channels)
          Set of SPD matrices.
  
      Returns
      -------
      prob : ndarray, shape (n_matrices, n_classes)
          Probabilities for each class.
      """
      return softmax(-self._predict_distances(X) ** 2)
  
imports: import functools
  import numpy
  from sklearn.base import BaseEstimator, ClassifierMixin, TransformerMixin
  from sklearn.svm import SVC
  from sklearn.utils.extmath import softmax
  from sklearn.linear_model import LogisticRegression
  from sklearn.pipeline import make_pipeline
  from joblib import Parallel, delayed
  import warnings
  from .utils.kernel import kernel
  from .utils.mean import mean_covariance, mean_power
  from .utils.distance import distance
  from .tangentspace import FGDA, TangentSpace
label_desc: Use image node_id 8 for calling the MeanField obj's underlying member method code with example usage: obj.predict_proba(X) and returns: softmax