sklearn.decomposition.dict_learning

sklearn.decomposition.dict_learning()

Resuelve un problema de factorización de una matriz de aprendizaje de diccionario.

Encuentra el mejor diccionario y el correspondiente código disperso para aproximar la matriz de datos X resolviendo:

(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_components

donde V es el diccionario y U es el código disperso.

Leer más en el Manual de Usuario.

Parámetros
Xndarray de forma (n_samples, n_features)

Matriz de datos.

n_componentsint

Número de átomos del diccionario a extraer.

alphaint

Parámetro de control de la dispersión.

max_iterentero, default=100

Número máximo de iteraciones a realizar.

tolfloat, default=1e-8

Tolerancia para la condición de parada.

method{“lars”, “cd”}, default=”lars”

El método utilizado:

  • 'lars': utiliza el método de regresión del ángulo mínimo para resolver

    el problema Lasso (linear_model.lars_path);

  • 'cd': utiliza el método de descenso de coordenadas para calcular la solución Lasso (modelo_lineal.Lasso). Lars será más rápido si los componentes estimados son dispersos.

n_jobsint, default=None

Número de trabajos paralelos a ejecutar. None significa 1 a menos que esté en un contexto joblib.parallel_backend. -1 significa utilizar todos los procesadores. Ver Glosario para más detalles.

dict_initndarray de forma (n_components, n_features), default=None

Valor inicial del diccionario, para escenarios de reinicio en caliente.

code_initndarray de forma (n_samples, n_components), default=None

Valor inicial del código disperso, para escenarios de reinicio en caliente.

callbackinvocable, default=None

Invocable que se invoca cada cinco iteraciones

verbosebooleano, default=False

Para controlar la verbosidad del procedimiento.

random_stateentero, instancia RandomState o None, default=None

Se utiliza para inicializar aleatoriamente el diccionario. Pasa un entero para obtener resultados reproducibles a través de múltiples llamadas a la función. Ver Glosario.

return_n_iterbooleano, default=False

Si se devuelve o no el número de iteraciones.

positive_dictbooleano, default=False

Si se impone la positividad al encontrar el diccionario.

Nuevo en la versión 0.20.

positive_codebooleano, default=False

Si se impone la positividad al encontrar el código.

Nuevo en la versión 0.20.

method_max_iterentero, default=1000

Número máximo de iteraciones a realizar.

Nuevo en la versión 0.22.

Devuelve
codendarray de forma (n_samples, n_components)

El factor de código disperso en la factorización de matriz.

dictionaryndarray de forma (n_components, n_features),

El factor de diccionario en la factorización de matriz.

errorsarreglo

Vector de errores en cada iteración.

n_iterint

Número de iteraciones ejecutadas. Se devuelve sólo si return_n_iter se establece como True.