@@ -149,10 +149,10 @@ class PCovC(LinearClassifierMixin, _BasePCov):
149149 The linear classifier passed for fitting.
150150
151151 z_classifier_ : estimator object
152- The linear classifier fit between X and Y .
152+ The linear classifier fit between :math:`\mathbf{X}` and :math:`\mathbf{Y}` .
153153
154154 classifier_ : estimator object
155- The linear classifier fit between T and Y .
155+ The linear classifier fit between :math:`\mathbf{T}` and :math:`\mathbf{Y}` .
156156
157157 pxt_ : ndarray of size :math:`({n_{features}, n_{components}})`
158158 the projector, or weights, from the input space :math:`\mathbf{X}`
@@ -239,13 +239,28 @@ def fit(self, X, Y, W=None):
239239 W : numpy.ndarray, shape (n_features, n_properties)
240240 Classification weights, optional when classifier=`precomputed`. If
241241 not passed, it is assumed that the weights will be taken from a
242- linear classifier fit between X and Y
242+ linear classifier fit between :math:`\mathbf{X}` and :math:`\mathbf{Y}`
243+
244+ Notes
245+ -----
246+ Note the relationship between :math:`\mathbf{X}`, :math:`\mathbf{Y}`,
247+ :math:`\mathbf{Z}`, and :math:`\mathbf{W}`. The classification weights
248+ :math:`\mathbf{W}`, obtained through a linear classifier fit between
249+ :math:`\mathbf{X}` and :math:`\mathbf{Y}`, are used to compute:
250+
251+ .. math::
252+ \mathbf{Z} = \mathbf{X} \mathbf{W}
253+
254+ Next, :math:`\mathbf{Z}` is used in either `_fit_feature_space` or
255+ `_fit_sample_space` as our approximation of :math:`\mathbf{Y}`.
256+ Finally, we refit a classifier on :math:`\mathbf{T}` and :math:`\mathbf{Y}`
257+ to obtain :math:`\mathbf{P}_{XZ}` and :math:`\mathbf{P}_{TZ}`
243258 """
244259 X , Y = validate_data (self , X , Y , y_numeric = False )
245260 check_classification_targets (Y )
246261 self .classes_ = np .unique (Y )
247262
248- super ()._fit_utils (X )
263+ super ().fit (X )
249264
250265 compatible_classifiers = (
251266 LogisticRegression ,
0 commit comments