sklearn.random_projection.GaussianRandomProjection¶
class sklearn.random_projection.GaussianRandomProjection(n_components='auto', *, eps=0.1, random_state=None)[source]
[源码]
通过高斯随机投影降低维数
随机矩阵的分量是从N(0,1 / n_components)中得出的。
在用户指南中阅读更多内容。
版本0.13中的新功能。
参数 | 说明 |
---|---|
n_components | nt or ‘auto’, optional (default = ‘auto’) 目标投影空间的尺寸。 n_components可以根据数据集中的样本数和Johnson-Lindenstrauss引理给出的边界自动调整。 在那种情况下,嵌入的质量由eps参数控制。 应当指出,Johnson-Lindenstrauss引理可以对所需的组件数进行非常保守的估计,因为它无需对数据集的结构进行假设。 |
eps | strictly positive float, optional (default=0.1) 当n_components设置为“ auto”时,根据Johnson-Lindenstrauss引理控制嵌入质量的参数。 较小的值导致在目标投影空间中更好的嵌入和更多的尺寸(n_components) |
random_state | int, RandomState instance or None, optional (default=None) 控制用于在拟合时间生成投影矩阵的伪随机数生成器。 为多个函数调用传递可重复输出的int值。 请参阅词汇表。 |
属性 | 说明 |
---|---|
n_components_ | int 当n_components =“ auto”时计算的具体组件数。 |
components_ | numpy array of shape [n_components, n_features] 用于投影的随机矩阵。 |
另见:
示例
>>> import numpy as np
>>> from sklearn.random_projection import GaussianRandomProjection
>>> rng = np.random.RandomState(42)
>>> X = rng.rand(100, 10000)
>>> transformer = GaussianRandomProjection(random_state=rng)
>>> X_new = transformer.fit_transform(X)
>>> X_new.shape
(100, 3947)
方法
方法 | 说明 |
---|---|
fit (X[, y]) |
生成稀疏随机投影矩阵 |
fit_transform (X[, y]) |
适合数据,然后对其进行转换。 |
get_params ([deep]) |
获取此估计量的参数。 |
set_params (**params) |
设置此估算器的参数。 |
transform (X) |
通过将矩阵乘积与随机矩阵一起使用来投影数据 |
__init__(n_components='auto', *, eps=0.1, random_state=None)
[源码]
初始化self, 请参阅help(type(self))以获得准确的说明
fit(X, y=None)
[源码]
生成稀疏随机投影矩阵
参数 | 说明 |
---|---|
X | numpy array or scipy.sparse of shape [n_samples, n_features] 训练集:根据上述论文中引用的理论,仅使用形状来找到最佳随机矩阵尺寸。 |
y | 被忽略 |
返回值 |
---|
self |
fit_transform(X, y=None, **fit_params)
[源码]
适合数据,然后对其进行转换。
使用可选参数fit_params将转换器拟合到X和y,并返回X的转换版本。
参数 | 说明 |
---|---|
X | {array-like, sparse matrix, dataframe} of shape (n_samples, n_features) |
y | ndarray of shape (n_samples,), default=None 目标值。 |
**fit_params | dict 其他拟合参数。 |
返回值 | 说明 |
---|---|
X_new | ndarray array of shape (n_samples, n_features_new) 转换后的数组。 |
get_params(deep=True)
[源码]
获取此估计量的参数。
参数 | 说明 |
---|---|
deep | bool, default=True 如果为True,则将返回此估算器和作为估算器的所包含子对象的参数。 |
返回值 | 说明 |
---|---|
params | mapping of string to any Parameter names mapped to their values. |
set_params(**params)
[源码]
设置此估算器的参数。
该方法适用于简单的估计器以及嵌套对象(例如管道)。 后者的参数格式为<component> __ <parameter>,以便可以更新嵌套对象的每个组件。
参数 | 说明 |
---|---|
**params | dict 估算器参数。 |
返回值 | 说明 |
---|---|
self | object 估算器实例。 |
transform(X)
[源码]
通过将矩阵乘积与随机矩阵一起使用来投影数据
参数 | 说明 |
---|---|
X | numpy array or scipy.sparse of shape [n_samples, n_features] 输入数据投影到较小的维空间中。 |
返回值 | 说明 |
---|---|
X_new | numpy array or scipy sparse of shape [n_samples, n_components] 投影阵列。 |