sklearn.covariance
.GraphicalLasso¶
- class sklearn.covariance.GraphicalLasso¶
Estimación dispersa de la covarianza inversa con un estimador de penalidad l1.
Más información en el Manual de usuario.
Distinto en la versión v0.20: GraphLasso ha sido renombrado a GraphicalLasso
- Parámetros
- alphafloat, default=0.01
El parámetro de regularización: mientras el alfa sea más alto, habra más regularización, y sera mas disperso la covarianza inversa. El rango es (0, inf].
- mode{“cd”, “lars”}, default=”cd”
El solucionador Lasso a usar: descenso de coordenadas o LARS. Use LARS para gráficos subyacentes muy dispersos, donde p > n. De otra forma se prefiere el dc (cd en inglés), que es más estable numéricamente.
- tolfloat, default=1e-4
La tolerancia para declarar la convergencia: si la brecha dual va por debajo de este valor, se detienen las iteraciones. El rango es (0, inf].
- enet_tolfloat, default=1e-4
La tolerancia para el solucionador de red elástica utilizado para calcular la dirección de descenso. Este parámetro controla la precisión de la dirección de búsqueda para una actualización de una columna determinada, no del estimado de parámetro general. Sólo se utiliza para mode=”cd”. El rango es (0, inf].
- max_iterint, default=100
Número máximo de iteraciones.
- verbosebool, default=False
Si verbose es True, la función objetivo y la brecha dual se grafican en cada iteración.
- assume_centeredbool, default=False
Si es True, los datos no son centrados antes del calculó. Útil al trabajar con datos cuya media es casí, pero no igual a cero. Si es False, los datos son centrados antes del cálculo.
- Atributos
- location_ndarray de forma (n_features,)
Ubicación estimada, es decir, la media estimada.
- covariance_ndarray de forma (n_features, n_features)
Matriz de covarianza estimada
- precision_ndarray de forma (n_features, n_features)
Matrix pseudo inversa estimada.
- n_iter_int
Número de iteraciones realizadas.
Ver también
Ejemplos
>>> import numpy as np >>> from sklearn.covariance import GraphicalLasso >>> true_cov = np.array([[0.8, 0.0, 0.2, 0.0], ... [0.0, 0.4, 0.0, 0.0], ... [0.2, 0.0, 0.3, 0.1], ... [0.0, 0.0, 0.1, 0.7]]) >>> np.random.seed(0) >>> X = np.random.multivariate_normal(mean=[0, 0, 0, 0], ... cov=true_cov, ... size=200) >>> cov = GraphicalLasso().fit(X) >>> np.around(cov.covariance_, decimals=3) array([[0.816, 0.049, 0.218, 0.019], [0.049, 0.364, 0.017, 0.034], [0.218, 0.017, 0.322, 0.093], [0.019, 0.034, 0.093, 0.69 ]]) >>> np.around(cov.location_, decimals=3) array([0.073, 0.04 , 0.038, 0.143])
Métodos
Calcula el Error Cuadrático Medio entre dos estimadores de covarianza.
Ajusta el modelo GraphicalLasso a X.
Obtiene los parámetros para este estimador.
Colector para la matriz de precisión.
Calcula las distancias de mahalanobis cuadráticas de las observaciones dadas.
Calcula el logaritmo de la verosimilitud de un conjunto de datos Gaussiano con
self.covariance_
como un estimador de su matriz de covarianza.Establece los parámetros de este estimador.
- error_norm()¶
Calcula el Error Cuadrático Medio entre dos estimadores de covarianza. (En el sentido de la norma Frobenius).
- Parámetros
- comp_covarray-like de forma (n_features, n_features)
La covarianza con la cual se compara.
- norm{«frobenius», «spectral»}, default=»frobenius»
El tipo de norma utilizada para calcular el error. Tipos de error disponibles: - “frobenius” (predeterminado): sqrt(tr(A^t.)) - “spectral”: sqrt(max(eigenvalues(A^t.A)) donde A es el error
(comp_cov - self.covariance_)
.- scalingbool, default=True
Si es True (predeterminado), la norma del error cuadrático es dividida por n_features. Si es False, la norma del error cuadrático no es reescalada.
- squaredbool, default=True
Si se calcula la norma de error cuadrático o la norma de error. Si es True (predeterminado) se devuelve la norma de error cuadrático. Si es False, se devuelve la norma de error.
- Devoluciones
- resultfloat
El Error Cuadrático Medio (en el sentido de la norma Frobenius) entre los estimadores de covarianza
self
ycomp_cov
.
- fit()¶
Ajusta el modelo GraphicalLasso a X.
- Parámetros
- Xarray-like de forma (n_samples, n_features)
Datos desde los cuales calcular la estimación de covarianza
- yIgnorado
No se utiliza, está presente para la coherencia de la API por convención.
- Devoluciones
- selfobjeto
- get_params()¶
Obtiene los parámetros para este estimador.
- Parámetros
- deepbool, default=True
Si es True, devolverá los parámetros para este estimador y los subobjetos contenidos que son estimadores.
- Devoluciones
- paramsdict
Nombres de parámetros asignados a sus valores.
- get_precision()¶
Colector para la matriz de precisión.
- Devoluciones
- precision_array-like de forma (n_features, n_features)
La matriz de precisión asociada al objeto de covarianza actual.
- mahalanobis()¶
Calcula las distancias de mahalanobis cuadráticas de las observaciones dadas.
- Parámetros
- Xarray-like de forma (n_samples, n_features)
Las observaciones, las distancias Mahalanobis de lo que calculamos. Se asume que las observaciones se extraen de la misma distribución que utilizaron los datos en el ajuste.
- Devoluciones
- distndarray de forma (n_samples,)
Distancias de Mahalanobis cuadráticas de las observaciones.
- score()¶
Calcula el logaritmo de la verosimilitud de un conjunto de datos Gaussiano con
self.covariance_
como un estimador de su matriz de covarianza.- Parámetros
- X_testarray-like de forma (n_samples, n_features)
Los datos de prueba de los cuales calculamos la probabilidad, donde n_samples es el número de muestras y n_features es el número de características. Se asume que X_test se extrae de la misma distribución que los datos utilizados (incluyendo el centrado).
- yIgnorado
No se utiliza, está presente para la coherencia de la API por convención.
- Devoluciones
- resfloat
La probabilidad del conjunto de datos con
self.covariance_
como un estimador de su matriz de covarianza.
- set_params()¶
Establece los parámetros de este estimador.
El método funciona tanto en estimadores simples como en objetos anidados (como
Pipeline
). Estos últimos tienen parámetros de la forma<component>__<parameter>
para que sea posible actualizar cada componente de un objeto anidado.- Parámetros
- **paramsdict
Parámetros del estimador.
- Devoluciones
- selfinstancia del estimador
Instancia del estimador.