sklearn.decomposition.dict_learning
- 
sklearn.decomposition.dict_learning(X, n_components, *, alpha, max_iter=100, tol=1e-08, method='lars', n_jobs=None, dict_init=None, code_init=None, callback=None, verbose=False, random_state=None, return_n_iter=False, positive_dict=False, positive_code=False, method_max_iter=1000)[source]
- 
Solves a dictionary learning matrix factorization problem. Finds the best dictionary and the corresponding sparse code for approximating the data matrix X by solving: (U^*, V^*) = argmin 0.5 || X - U V ||_2^2 + alpha * || U ||_1 (U,V) with || V_k ||_2 = 1 for all 0 <= k < n_componentswhere V is the dictionary and U is the sparse code. Read more in the User Guide. - Parameters
- 
- 
Xndarray of shape (n_samples, n_features)
- 
Data matrix. 
- 
n_componentsint
- 
Number of dictionary atoms to extract. 
- 
alphaint
- 
Sparsity controlling parameter. 
- 
max_iterint, default=100
- 
Maximum number of iterations to perform. 
- 
tolfloat, default=1e-8
- 
Tolerance for the stopping condition. 
- 
method{‘lars’, ‘cd’}, default=’lars’
- 
The method used: - 
- 
'lars': uses the least angle regression method to solve the lasso
- 
problem ( linear_model.lars_path);
 
- 
- 
'cd': uses the coordinate descent method to compute the Lasso solution (linear_model.Lasso). Lars will be faster if the estimated components are sparse.
 
- 
- 
n_jobsint, default=None
- 
Number of parallel jobs to run. Nonemeans 1 unless in ajoblib.parallel_backendcontext.-1means using all processors. See Glossary for more details.
- 
dict_initndarray of shape (n_components, n_features), default=None
- 
Initial value for the dictionary for warm restart scenarios. 
- 
code_initndarray of shape (n_samples, n_components), default=None
- 
Initial value for the sparse code for warm restart scenarios. 
- 
callbackcallable, default=None
- 
Callable that gets invoked every five iterations 
- 
verbosebool, default=False
- 
To control the verbosity of the procedure. 
- 
random_stateint, RandomState instance or None, default=None
- 
Used for randomly initializing the dictionary. Pass an int for reproducible results across multiple function calls. See Glossary. 
- 
return_n_iterbool, default=False
- 
Whether or not to return the number of iterations. 
- 
positive_dictbool, default=False
- 
Whether to enforce positivity when finding the dictionary. New in version 0.20. 
- 
positive_codebool, default=False
- 
Whether to enforce positivity when finding the code. New in version 0.20. 
- 
method_max_iterint, default=1000
- 
Maximum number of iterations to perform. New in version 0.22. 
 
- 
- Returns
- 
- 
codendarray of shape (n_samples, n_components)
- 
The sparse code factor in the matrix factorization. 
- 
dictionaryndarray of shape (n_components, n_features),
- 
The dictionary factor in the matrix factorization. 
- 
errorsarray
- 
Vector of errors at each iteration. 
- 
n_iterint
- 
Number of iterations run. Returned only if return_n_iteris set to True.
 
- 
 
    © 2007–2020 The scikit-learn developers
Licensed under the 3-clause BSD License.
    https://scikit-learn.org/0.24/modules/generated/sklearn.decomposition.dict_learning.html