sklearn.decomposition.MiniBatchSparsePCA?

class sklearn.decomposition.MiniBatchSparsePCA(n_components=None, *, alpha=1, ridge_alpha=0.01, n_iter=100, callback=None, batch_size=3, verbose=False, shuffle=True, n_jobs=None, method='lars', random_state=None, normalize_components='deprecated')

[源碼]

Mini-batch 稀疏主成分分析

找到能夠最優地重構數據的稀疏組件集。稀疏度的大小可以通過參數alpha給出的L1懲罰系數來控制。

在“用戶指南”中閱讀更多內容

參數 說明
n_components int,
要提取的稀疏原子數
alpha int,
稀疏的控制參數。數值越高,組件越稀疏。
ridge_alpha float,
在調用變換方法時,為了改善條件而應用的脊縮量。
n_iter int,
為每個小批處理執行的迭代次數
callback callable or None, optional (default: None)
可調用的,每5次迭代調用一次
batch_size int,
在每個小批中采取的功能的數量
verbose int,
控制冗長;越高,信息越多。默認值為0。
shuffle boolean,
是否在將數據分拆成批之前打亂數據
n_jobs int or None, optional (default=None)
要運行的并行作業數量。沒有一個是1,除非在joblib。parallel_backend上下文。-1表示使用所有處理器。更多細節請參見術語表。
method {‘lars’, ‘cd’}
cd:使用坐標下降法計算lasso解(linear_model.lars_path)。如果估計的組件是稀疏的,Lars會更快。
random_state int, RandomState instance, default=None
在在線字典學習中,當shuffle被設為True時用于隨機洗牌。在多個函數調用中傳遞可重復的結果。看到術語表
normalize_components ‘deprecated’
此參數沒有任何效果。組件總是規范化的。新版本0.20。

自版本0.22以來已棄用:normalize_components在0.22中已棄用,將在0.24中刪除。
屬性 參數
components_ array, [n_components, n_features]
從數據中提取稀疏組件。
n_components_ int
估計的組件數量。
n_iter_ int
運行的迭代次數。
mean_ array, shape (n_features,)
從訓練集估計的每個特征的經驗均值,等于x .均值(軸=0)。

另見:

示例

>>> import numpy as np
>>> from sklearn.datasets import make_friedman1
>>> from sklearn.decomposition import MiniBatchSparsePCA
>>> X, _ = make_friedman1(n_samples=200, n_features=30, random_state=0)
>>> transformer = MiniBatchSparsePCA(n_components=5, batch_size=50,
...                                  random_state=0)
>>> transformer.fit(X)
MiniBatchSparsePCA(...)
>>> X_transformed = transformer.transform(X)
>>> X_transformed.shape
(2005)
>>> # most values in the components_ are zero (sparsity)
>>> np.mean(transformer.components_ == 0)
0.94
方法 說明
fit(self, X[, y]) 根據X中的數據擬合模型。
fit_transform(self, X[, y]) 擬合數據,然后轉換它。
get_params(self[, deep]) 獲取這個估計器的參數。
set_params(self, **params) 設置這個估計器的參數。
transform(self, X) 數據在稀疏分量上的最小二乘投影。
__init__(n_components=None, *, alpha=1, ridge_alpha=0.01, n_iter=100, callback=None, batch_size=3, verbose=False, shuffle=True, n_jobs=None, method='lars', random_state=None, normalize_components='deprecated')

[源碼]

該方法適用于簡單估計器和嵌套對象(如管道)。后者具有形式為__的參數,這樣就可以更新嵌套對象的每個樣本。

fit(self, X, y=None)

[源碼]

根據X中的數據擬合模型。

參數 說明
X array-like, shape (n_samples, n_features)
訓練向量,其中樣本數量中的n_samples和n_features為feature的數量。
y Ignored
返回值 說明
self object
返回實例自身
fit_transform(self, X, y=None, *fit_params)

[源碼]

擬合數據,然后轉換它。

使用可選參數fit_params將transformer與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(self, deep=True)

[源碼]

獲取這個估計器的參數

參數 說明
deep bool, default=True
如果為True,則將返回此估計器的參數和所包含的作為估計器的子對象。
返回值 說明
params 參數名稱映射到它們的值。
set_params(self, *params)

[源碼]

設置這個估計器的參數。

該方法適用于簡單估計器和嵌套對象(如管道)。后者具有形式為__的參數,這樣就可以更新嵌套對象的每個樣本。

參數 說明
**params dict
估計器參數
返回值 說明
self object
返回實例自身
transform(self, X)

[源碼]

數據在稀疏分量上的最小二乘投影。

為了避免在系統未充分確定時出現不穩定問題,可以通過ridge_alpha參數應用正則化(Ridge回歸)。

注意稀疏的主成分正交性在主成分分析中并不是強制性的,因此不能使用簡單的線性投影。

參數 說明
X array of shape (n_samples, n_features)
要轉換的測試數據,必須具有與用于訓練模型的數據相同數量的特征。
返回值 說明
X_new array shape (n_samples, n_components)
轉換的數據

示例sklearn.decomposition.MiniBatchSparsePCA?