本文簡要介紹python語言中 sklearn.decomposition.SparseCoder
的用法。
用法:
class sklearn.decomposition.SparseCoder(dictionary, *, transform_algorithm='omp', transform_n_nonzero_coefs=None, transform_alpha=None, split_sign=False, n_jobs=None, positive_code=False, transform_max_iter=1000)
稀疏編碼。
根據固定的預先計算的字典查找數據的稀疏表示。
結果的每一行都是稀疏編碼問題的解決方案。目標是找到一個稀疏數組
code
,這樣:X ~= code * dictionary
在用戶指南中閱讀更多信息。
- dictionary:ndarray 形狀(n_components,n_features)
用於稀疏編碼的字典原子。假設線被標準化為單位範數。
- transform_algorithm:{‘lasso_lars’, ‘lasso_cd’,‘lars’, ‘omp’,‘threshold’},默認='omp'
用於轉換數據的算法:
'lars'
:使用最小角度回歸法(linear_model.lars_path
);'lasso_lars'
: 使用 Lars 計算 Lasso 解;'lasso_cd'
:使用坐標下降法計算 Lasso 解(linear_model.Lasso)。'lasso_lars'
如果估計的組件稀疏,會更快;'omp'
:使用正交匹配追蹤估計稀疏解;'threshold'
:將投影dictionary * X'
中小於 alpha 的所有係數壓縮為零。
- transform_n_nonzero_coefs:整數,默認=無
解的每列中要定位的非零係數的數量。這僅由
algorithm='lars'
和algorithm='omp'
使用,並在omp
情況下被alpha
覆蓋。如果None
,那麽transform_n_nonzero_coefs=int(n_features / 10)
。- transform_alpha:浮點數,默認=無
如果
algorithm='lasso_lars'
或algorithm='lasso_cd'
,alpha
是應用於 L1 範數的懲罰。如果algorithm='threshold'
,alpha
是閾值的絕對值,低於該閾值的係數將被壓縮為零。如果algorithm='omp'
,alpha
是容差參數:目標重建誤差的值。在這種情況下,它會覆蓋n_nonzero_coefs
。如果None
,默認為 1。- split_sign:布爾,默認=假
是否將稀疏特征向量拆分為其負部分和正部分的串聯。這可以提高下遊分類器的性能。
- n_jobs:整數,默認=無
要運行的並行作業數。
None
表示 1,除非在joblib.parallel_backend
上下文中。-1
表示使用所有處理器。有關詳細信息,請參閱詞匯表。- positive_code:布爾,默認=假
查找代碼時是否強製執行積極性。
- transform_max_iter:整數,默認=1000
algorithm='lasso_cd'
或lasso_lars
時要執行的最大迭代次數。
components_
ndarray 形狀(n_components,n_features)已棄用:屬性
components_
在 0.24 中已棄用,並將在 1.1 中刪除(重命名為 0.26)。n_components_
int原子數。
n_features_in_
intfit
期間看到的特征數。- feature_names_in_:ndarray 形狀(
n_features_in_
,) 擬合期間看到的特征名稱。僅當
X
具有全為字符串的函數名稱時才定義。
參數:
屬性:
例子:
>>> import numpy as np >>> from sklearn.decomposition import SparseCoder >>> X = np.array([[-1, -1, -1], [0, 0, 3]]) >>> dictionary = np.array( ... [[0, 1, 0], ... [-1, -1, 2], ... [1, 1, 1], ... [0, 1, 1], ... [0, 2, 1]], ... dtype=np.float64 ... ) >>> coder = SparseCoder( ... dictionary=dictionary, transform_algorithm='lasso_lars', ... transform_alpha=1e-10, ... ) >>> coder.transform(X) array([[ 0., 0., -1., 0., 0.], [ 0., 1., 1., 0., 0.]])
相關用法
- Python sklearn SparsePCA用法及代碼示例
- Python sklearn SparseRandomProjection用法及代碼示例
- Python sklearn SpectralEmbedding用法及代碼示例
- Python sklearn SpectralClustering用法及代碼示例
- Python sklearn SpectralBiclustering用法及代碼示例
- Python sklearn SplineTransformer用法及代碼示例
- Python sklearn SpectralCoclustering用法及代碼示例
- Python sklearn ShrunkCovariance用法及代碼示例
- Python sklearn SelfTrainingClassifier用法及代碼示例
- Python sklearn SelectFromModel用法及代碼示例
- Python sklearn SelectFpr用法及代碼示例
- Python sklearn ShuffleSplit用法及代碼示例
- Python sklearn StratifiedGroupKFold用法及代碼示例
- Python sklearn Sum用法及代碼示例
- Python sklearn SVR用法及代碼示例
- Python sklearn SelectKBest用法及代碼示例
- Python sklearn SimpleImputer用法及代碼示例
- Python sklearn SGDOneClassSVM用法及代碼示例
- Python sklearn StratifiedShuffleSplit用法及代碼示例
- Python sklearn SVC用法及代碼示例
- Python sklearn SGDRegressor用法及代碼示例
- Python sklearn SequentialFeatureSelector用法及代碼示例
- Python sklearn SelectPercentile用法及代碼示例
- Python sklearn SkewedChi2Sampler用法及代碼示例
- Python sklearn SGDClassifier用法及代碼示例
注:本文由純淨天空篩選整理自scikit-learn.org大神的英文原創作品 sklearn.decomposition.SparseCoder。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。