当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python sklearn LedoitWolf用法及代码示例


本文简要介绍python语言中 sklearn.covariance.LedoitWolf 的用法。

用法:

class sklearn.covariance.LedoitWolf(*, store_precision=True, assume_centered=False, block_size=1000)

LedoitWolf 估计器。

Ledoit-Wolf 是一种特殊形式的收缩,其中收缩系数使用 O. Ledoit 和 M. Wolf 的公式计算,如“A Well-Conditioned Estimator for Large-Dimensional Covariance Matrices”中所述,Ledoit 和 Wolf,Journal of Multivariate Analysis ,第 88 卷,第 2 期,2004 年 2 月,第 365-411 页。

在用户指南中阅读更多信息。

参数

store_precision布尔,默认=真

指定是否存储估计的精度。

assume_centered布尔,默认=假

如果为 True,则在计算之前数据不会居中。在处理平均值几乎为零但不完全为零的数据时很有用。如果为 False(默认),数据将在计算之前居中。

block_size整数,默认=1000

在其Ledoit-Wolf 估计期间协方差矩阵将被分割成的块的大小。这纯粹是内存优化,不影响结果。

属性

covariance_ndarray 形状(n_features,n_features)

估计的协方差矩阵。

location_ndarray 形状 (n_features,)

估计位置,即估计平均值。

precision_ndarray 形状(n_features,n_features)

估计的伪逆矩阵。 (仅当store_precision 为真时存储)

shrinkage_浮点数

用于计算收缩估计的凸组合中的系数。范围是 [0, 1]。

n_features_in_int

拟合期间看到的特征数。

feature_names_in_ndarray 形状(n_features_in_,)

拟合期间看到的特征名称。仅当 X 具有全为字符串的函数名称时才定义。

注意

正则化协方差为:

(1 - 收缩) * cov + 收缩 * mu * np.identity(n_features)

其中 mu = trace(cov) /n_features 和收缩由 Ledoit 和 Wolf 公式给出(参见引用)

参考

“Large-Dimensional 协方差矩阵的条件良好的估计器”,Ledoit 和 Wolf,《多元分析杂志》,第 88 卷,第 2 期,2004 年 2 月,第 365-411 页。

例子

>>> import numpy as np
>>> from sklearn.covariance import LedoitWolf
>>> real_cov = np.array([[.4, .2],
...                      [.2, .8]])
>>> np.random.seed(0)
>>> X = np.random.multivariate_normal(mean=[0, 0],
...                                   cov=real_cov,
...                                   size=50)
>>> cov = LedoitWolf().fit(X)
>>> cov.covariance_
array([[0.4406..., 0.1616...],
       [0.1616..., 0.8022...]])
>>> cov.location_
array([ 0.0595... , -0.0075...])

相关用法


注:本文由纯净天空筛选整理自scikit-learn.org大神的英文原创作品 sklearn.covariance.LedoitWolf。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。