make_sparse_spd_matrix#

sklearn.datasets.make_sparse_spd_matrix(n_dim=None, *, alpha=0.95, norm_diag=False, smallest_coef=0.1, largest_coef=0.9, sparse_format=None, random_state=None, dim='deprecated')#

生成一个稀疏的对称正定矩阵。

更多信息请参阅 用户指南

Parameters:
n_dimint, default=1

要生成的随机矩阵的大小。

Changed in version 1.4: dim 重命名为 n_dim

alphafloat, default=0.95

系数为零的概率(见注释)。较大的值会强制更多的稀疏性。该值应在0到1之间。

norm_diagbool, default=False

是否将输出矩阵归一化,使对角线元素全部为1。

smallest_coeffloat, default=0.1

介于0和1之间的最小系数值。

largest_coeffloat, default=0.9

介于0和1之间的最大系数值。

sparse_formatstr, default=None

表示输出稀疏格式的字符串,例如 ‘csc’, ‘csr’ 等。如果为 None ,则返回一个密集的 numpy ndarray。

Added in version 1.4.

random_stateint, RandomState instance or None, default=None

确定数据集创建的随机数生成。传递一个 int 以在多次函数调用中获得可重复的输出。 请参阅 术语表

dimint, default=1

要生成的随机矩阵的大小。

Deprecated since version 1.4: dim 已弃用,将在1.6中移除。

Returns:
precndarray 或 shape (dim, dim) 的稀疏矩阵

生成的矩阵。如果 sparse_format=None ,这将是一个 ndarray。 否则,这将是一个指定格式的稀疏矩阵。

See also

make_spd_matrix

生成一个随机的对称正定矩阵。

Notes

稀疏性实际上是施加在矩阵的 Cholesky 因子上的。 因此 alpha 并不直接转化为矩阵本身的填充系数。

Examples

>>> 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.]])