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] 投影陣列。 |