sklearn.covariance
.EmpiricalCovariance¶
-
class
sklearn.covariance.
EmpiricalCovariance
(store_precision=True, assume_centered=False)[source]¶ Maximum likelihood covariance estimator
Read more in the User Guide.
- Parameters
- store_precisionbool
Specifies if the estimated precision is stored.
- assume_centeredbool
If True, data are not centered before computation. Useful when working with data whose mean is almost, but not exactly zero. If False (default), data are centered before computation.
- Attributes
- location_array-like, shape (n_features,)
Estimated location, i.e. the estimated mean.
- covariance_2D ndarray, shape (n_features, n_features)
Estimated covariance matrix
- precision_2D ndarray, shape (n_features, n_features)
Estimated pseudo-inverse matrix. (stored only if store_precision is True)
Examples
>>> import numpy as np >>> from sklearn.covariance import EmpiricalCovariance >>> from sklearn.datasets import make_gaussian_quantiles >>> real_cov = np.array([[.8, .3], ... [.3, .4]]) >>> rng = np.random.RandomState(0) >>> X = rng.multivariate_normal(mean=[0, 0], ... cov=real_cov, ... size=500) >>> cov = EmpiricalCovariance().fit(X) >>> cov.covariance_ array([[0.7569..., 0.2818...], [0.2818..., 0.3928...]]) >>> cov.location_ array([0.0622..., 0.0193...])
Methods
error_norm
(self, comp_cov[, norm, scaling, …])Computes the Mean Squared Error between two covariance estimators.
fit
(self, X[, y])Fits the Maximum Likelihood Estimator covariance model according to the given training data and parameters.
get_params
(self[, deep])Get parameters for this estimator.
get_precision
(self)Getter for the precision matrix.
mahalanobis
(self, X)Computes the squared Mahalanobis distances of given observations.
score
(self, X_test[, y])Computes the log-likelihood of a Gaussian data set with
self.covariance_
as an estimator of its covariance matrix.set_params
(self, \*\*params)Set the parameters of this estimator.
-
__init__
(self, store_precision=True, assume_centered=False)[source]¶ Initialize self. See help(type(self)) for accurate signature.
-
error_norm
(self, comp_cov, norm='frobenius', scaling=True, squared=True)[source]¶ Computes the Mean Squared Error between two covariance estimators. (In the sense of the Frobenius norm).
- Parameters
- comp_covarray-like, shape = [n_features, n_features]
The covariance to compare with.
- normstr
The type of norm used to compute the error. Available error types: - ‘frobenius’ (default): sqrt(tr(A^t.A)) - ‘spectral’: sqrt(max(eigenvalues(A^t.A)) where A is the error
(comp_cov - self.covariance_)
.- scalingbool
If True (default), the squared error norm is divided by n_features. If False, the squared error norm is not rescaled.
- squaredbool
Whether to compute the squared error norm or the error norm. If True (default), the squared error norm is returned. If False, the error norm is returned.
- Returns
- The Mean Squared Error (in the sense of the Frobenius norm) between
self
andcomp_cov
covariance estimators.
-
fit
(self, X, y=None)[source]¶ Fits the Maximum Likelihood Estimator covariance model according to the given training data and parameters.
- Parameters
- Xarray-like, shape = [n_samples, n_features]
Training data, where n_samples is the number of samples and n_features is the number of features.
- y
not used, present for API consistence purpose.
- Returns
- selfobject
-
get_params
(self, deep=True)[source]¶ Get parameters for this estimator.
- Parameters
- deepboolean, optional
If True, will return the parameters for this estimator and contained subobjects that are estimators.
- Returns
- paramsmapping of string to any
Parameter names mapped to their values.
-
get_precision
(self)[source]¶ Getter for the precision matrix.
- Returns
- precision_array-like
The precision matrix associated to the current covariance object.
-
mahalanobis
(self, X)[source]¶ Computes the squared Mahalanobis distances of given observations.
- Parameters
- Xarray-like, shape = [n_samples, n_features]
The observations, the Mahalanobis distances of the which we compute. Observations are assumed to be drawn from the same distribution than the data used in fit.
- Returns
- distarray, shape = [n_samples,]
Squared Mahalanobis distances of the observations.
-
score
(self, X_test, y=None)[source]¶ Computes the log-likelihood of a Gaussian data set with
self.covariance_
as an estimator of its covariance matrix.- Parameters
- X_testarray-like, shape = [n_samples, n_features]
Test data of which we compute the likelihood, where n_samples is the number of samples and n_features is the number of features. X_test is assumed to be drawn from the same distribution than the data used in fit (including centering).
- y
not used, present for API consistence purpose.
- Returns
- resfloat
The likelihood of the data set with
self.covariance_
as an estimator of its covariance matrix.
-
set_params
(self, **params)[source]¶ Set the parameters of this estimator.
The method works on simple estimators as well as on nested objects (such as pipelines). The latter have parameters of the form
<component>__<parameter>
so that it’s possible to update each component of a nested object.- Returns
- self