生成稀疏对称正定矩阵#
- sklearn.datasets.make_sparse_spd_matrix(n_dim=1, *, alpha=0.95, norm_diag=False, smallest_coef=0.1, largest_coef=0.9, sparse_format=None, random_state=None)[source]#
生成稀疏对称正定矩阵。
更多信息请阅读 用户指南。
- 参数:
- n_dimint, 默认值=1
要生成的随机矩阵的大小。
1.4 版本中的变更: 从
dim
重命名为n_dim
。- alpha浮点数,默认为 0.95
系数为零的概率(参见注释)。较大的值会强制执行更高的稀疏性。该值应在 0 和 1 之间。
- norm_diag布尔值,默认为 False
是否将输出矩阵标准化,使主对角线元素全部为 1。
- smallest_coef浮点数,默认为 0.1
0 到 1 之间最小系数的值。
- largest_coef浮点数,默认为 0.9
0 到 1 之间最大系数的值。
- sparse_format字符串,默认为 None
表示输出稀疏格式的字符串,例如 'csc'、'csr' 等。如果为
None
,则返回密集的 numpy ndarray。1.4 版本中添加。
- random_state整数、RandomState 实例或 None,默认为 None
确定数据集创建的随机数生成。传递一个整数以在多次函数调用中获得可重复的输出。参见 词汇表。
- 返回:
- prec形状为 (dim, dim) 的 ndarray 或稀疏矩阵
生成的矩阵。如果
sparse_format=None
,则为 ndarray。否则,这将是一个指定格式的稀疏矩阵。
另请参见
make_spd_matrix
生成一个随机的对称正定矩阵。
注释
稀疏性实际上施加在矩阵的 Cholesky 因子上。因此,alpha 不会直接转换为矩阵本身的填充分数。
示例
>>> from sklearn.datasets import make_sparse_spd_matrix >>> make_sparse_spd_matrix(n_dim=4, norm_diag=False, random_state=42) array([[1., 0., 0., 0.], [0., 1., 0., 0.], [0., 0., 1., 0.], [0., 0., 0., 1.]])
图库示例#
稀疏逆协方差估计