sklearn.datasets.make_low_rank_matrix¶
sklearn.datasets.make_low_rank_matrix(n_samples=100, n_features=100, *, effective_rank=10, tail_strength=0.5, random_state=None)
生成具有钟形奇异值的低阶矩阵
大部分方差可以由有效宽度的钟形曲线解释:奇异值分布图的低秩部分为:
(1 - tail_strength) * exp(-1.0 * (i / effective_rank) ** 2)
剩余奇异值的尾部较粗,递减为:
tail_strength * exp(-0.1 * i / effective_rank).
轮廓的低秩部分可以被认为是数据的结构化信号部分,而尾部可以被认为是数据中的噪声部分,无法用少量的线性分量(奇异矢量)来概括。
在实践中通常会看到这种奇异的轮廓,例如:
人脸的灰度图片 从网上抓取的文本文档的TF-IDF向量
在用户指南中阅读更多内容。
参数 | 说明 |
---|---|
n_samples | int, optional (default=100) 样本数。 |
n_features | int, optional (default=100) 特征数。 |
effective_rank | int, optional (default=10) 通过线性组合来解释大多数数据所需的奇异向量的近似数量。 |
tail_strength | float between 0.0 and 1.0, optional (default=0.5) 奇异值分布图的胖嘈杂尾巴的相对重要性。 |
random_state | int, RandomState instance, default=None 确定用于生成数据集的随机数生成。 为多个函数调用传递可重复输出的int值。 请参阅词汇表.。 |
返回值 | 说明 |
---|---|
X | array of shape [n_samples, n_features] 矩阵。 |