OAS
¶
-
class
ibex.sklearn.covariance.
OAS
(store_precision=True, assume_centered=False)¶ Bases:
sklearn.covariance.shrunk_covariance_.OAS
,ibex._base.FrameMixin
Note
The documentation following is of the class wrapped by this class. There are some changes, in particular:
- A parameter
X
denotes apandas.DataFrame
. - A parameter
y
denotes apandas.Series
.
Oracle Approximating Shrinkage Estimator
Read more in the User Guide.
OAS is a particular form of shrinkage described in “Shrinkage Algorithms for MMSE Covariance Estimation” Chen et al., IEEE Trans. on Sign. Proc., Volume 58, Issue 10, October 2010.
The formula used here does not correspond to the one given in the article. It has been taken from the Matlab program available from the authors’ webpage (http://tbayes.eecs.umich.edu/yilun/covestimation). In the original article, formula (23) states that 2/p is multiplied by Trace(cov*cov) in both the numerator and denominator, this operation is omitted in the author’s MATLAB program because for a large p, the value of 2/p is so small that it doesn’t affect the value of the estimator.
- store_precision : bool, default=True
- Specify if the estimated precision is stored.
- assume_centered : bool, default=False
- 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.
- covariance_ : array-like, shape (n_features, n_features)
- Estimated covariance matrix.
- precision_ : array-like, shape (n_features, n_features)
- Estimated pseudo inverse matrix. (stored only if store_precision is True)
- shrinkage_ : float, 0 <= shrinkage <= 1
- coefficient in the convex combination used for the computation of the shrunk estimate.
The regularised covariance is:
(1 - shrinkage)*cov + shrinkage*mu*np.identity(n_features)
where mu = trace(cov) / n_features and shrinkage is given by the OAS formula (see References)
“Shrinkage Algorithms for MMSE Covariance Estimation” Chen et al., IEEE Trans. on Sign. Proc., Volume 58, Issue 10, October 2010.
-
fit
(X, y=None)[source]¶ Note
The documentation following is of the class wrapped by this class. There are some changes, in particular:
- A parameter
X
denotes apandas.DataFrame
. - A parameter
y
denotes apandas.Series
.
- Fits the Oracle Approximating Shrinkage covariance model
according to the given training data and parameters.
- X : array-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.
- self : object
- Returns self.
- A parameter
-
score
(X_test, y=None)¶ Note
The documentation following is of the class wrapped by this class. There are some changes, in particular:
- A parameter
X
denotes apandas.DataFrame
. - A parameter
y
denotes apandas.Series
.
- Computes the log-likelihood of a Gaussian data set with
self.covariance_ as an estimator of its covariance matrix.
- X_test : array-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.
- res : float
- The likelihood of the data set with self.covariance_ as an estimator of its covariance matrix.
- A parameter
- A parameter