ledoit_wolf#
- sklearn.covariance.ledoit_wolf(X, *, assume_centered=False, block_size=1000)[source]#
估算收缩的 Ledoit-Wolf 协方差矩阵。
Read more in the User Guide.
- 参数:
- Xshape 为 (n_samples, n_features) 的 array-like
Data from which to compute the covariance estimate.
- assume_centeredbool, default=False
如果为 True,在计算前数据将不会被中心化。这对于均值显著等于零但并不完全为零的数据很有用。如果为 False,数据将在计算前被中心化。
- block_sizeint, default=1000
协方差矩阵将分割成的块大小。这纯粹是内存优化,不影响结果。
- 返回:
- shrunk_covndarray of shape (n_features, n_features)
收缩协方差。
- shrinkagefloat
用于计算收缩估计量的凸组合系数。
注意事项
正则化(收缩)协方差为
(1 - shrinkage) * cov + shrinkage * mu * np.identity(n_features)
其中 mu = trace(cov) / n_features
示例
>>> import numpy as np >>> from sklearn.covariance import empirical_covariance, ledoit_wolf >>> real_cov = np.array([[.4, .2], [.2, .8]]) >>> rng = np.random.RandomState(0) >>> X = rng.multivariate_normal(mean=[0, 0], cov=real_cov, size=50) >>> covariance, shrinkage = ledoit_wolf(X) >>> covariance array([[0.44, 0.16], [0.16, 0.80]]) >>> shrinkage np.float64(0.23)