sklearn.decomposition.sparse_encode

sklearn.decomposition.sparse_encode(X, dictionary, gram=None, cov=None, algorithm='lasso_lars', n_nonzero_coefs=None, alpha=None, copy_cov=True, init=None, max_iter=1000, n_jobs=None, check_input=True, verbose=0, positive=False)[source]

Sparse coding

Each row of the result is the solution to a sparse coding problem. The goal is to find a sparse array code such that:

X ~= code * dictionary

Read more in the User Guide.

Parameters:
X : array of shape (n_samples, n_features)

Data matrix

dictionary : array of shape (n_components, n_features)

The dictionary matrix against which to solve the sparse coding of the data. Some of the algorithms assume normalized rows for meaningful output.

gram : array, shape=(n_components, n_components)

Precomputed Gram matrix, dictionary * dictionary’

cov : array, shape=(n_components, n_samples)

Precomputed covariance, dictionary’ * X

algorithm : {‘lasso_lars’, ‘lasso_cd’, ‘lars’, ‘omp’, ‘threshold’}

lars: uses the least angle regression method (linear_model.lars_path) lasso_lars: uses Lars to compute the Lasso solution lasso_cd: uses the coordinate descent method to compute the Lasso solution (linear_model.Lasso). lasso_lars will be faster if the estimated components are sparse. omp: uses orthogonal matching pursuit to estimate the sparse solution threshold: squashes to zero all coefficients less than alpha from the projection dictionary * X’

n_nonzero_coefs : int, 0.1 * n_features by default

Number of nonzero coefficients to target in each column of the solution. This is only used by algorithm=’lars’ and algorithm=’omp’ and is overridden by alpha in the omp case.

alpha : float, 1. by default

If algorithm=’lasso_lars’ or algorithm=’lasso_cd’, alpha is the penalty applied to the L1 norm. If algorithm=’threshold’, alpha is the absolute value of the threshold below which coefficients will be squashed to zero. If algorithm=’omp’, alpha is the tolerance parameter: the value of the reconstruction error targeted. In this case, it overrides n_nonzero_coefs.

copy_cov : boolean, optional

Whether to copy the precomputed covariance matrix; if False, it may be overwritten.

init : array of shape (n_samples, n_components)

Initialization value of the sparse codes. Only used if algorithm=’lasso_cd’.

max_iter : int, 1000 by default

Maximum number of iterations to perform if algorithm=’lasso_cd’.

n_jobs : int or None, optional (default=None)

Number of parallel jobs to run. None means 1 unless in a joblib.parallel_backend context. -1 means using all processors. See Glossary for more details.

check_input : boolean, optional

If False, the input arrays X and dictionary will not be checked.

verbose : int, optional

Controls the verbosity; the higher, the more messages. Defaults to 0.

positive : boolean, optional

Whether to enforce positivity when finding the encoding.

New in version 0.20.

Returns:
code : array of shape (n_samples, n_components)

The sparse codes