sklearn.linear_model.LassoLars

class sklearn.linear_model.LassoLars

Ajuste del modelo Lasso con la Regresión de Ángulo Mínimo, también conocida como Lars

Es un Modelo Lineal entrenado con un previo L1 como regularizador.

El objetivo de optimización para Lasso es:

(1 / (2 * n_samples)) * ||y - Xw||^2_2 + alpha * ||w||_1

Lee más en el Manual de usuario.

Parámetros
alphafloat, default=1.0

Constante que multiplica los términos de penalización. Por defecto es 1.0. alpha = 0 es equivalente a un mínimos cuadrados ordinarios, solucionado por LinearRegression. Por razones numéricas, no se recomienda utilizar alpha = 0 con el objeto LassoLars y debes preferir el objeto LinearRegression.

fit_interceptbool, default=True

si se calcula el intercepto para este modelo. Si se establece en False, no se utilizará ningún intercepto en los cálculos (es decir, se espera que los datos estén centrados).

verbosebool o int, default=False

Establece la cantidad de verbosidad.

normalizebool, default=True

Este parámetro es ignorado cuando fit_intercept se establece en False. Si es True, los regresores X serán normalizados antes de la regresión restando la media y dividiendo por la norma l2. Si deseas estandarizar, por favor utiliza StandardScaler antes de invocar a fit en un estimador con normalize=False.

precomputebool, “auto” o array-like, default=”auto”

Si usar una matriz de Gram precalculada para acelerar los cálculos. Si se establece como 'auto', nosotros decidimos. La matriz de Gram también puede ser pasada como un argumento.

max_iterint, default=500

Número máximo de iteraciones a realizar.

epsfloat, default=np.finfo(float).eps

La regularización de máquina-precisión en el cálculo de los factores diagonales de Cholesky. Aumenta este parámetro para sistemas muy mal condicionados. A diferencia del parámetro tol en algunos algoritmos basados en la optimización iterativa, este parámetro no controla la tolerancia de la optimización.

copy_Xbool, default=True

Si es True, X se copiará; si no, puede ser sobrescrito.

fit_pathbool, default=True

Si es True el camino completo se almacena en el atributo coef_path_. Si calculas la solución para problema grande o muchos objetivos, establecer fit_path a False conducirá a una aceleración, especialmente con un alfa pequeño.

positivebool, default=False

Restringe los coeficientes para que sean >= 0. Ten en cuenta que tal vez quieras eliminar fit_intercept que está establecido True por defecto. Bajo la restricción positiva, los coeficientes del modelo no convergerán a la solución de mínimos cuadrados ordinarios para valores pequeños de alfa. Sólo los coeficientes hasta el valor alfa más pequeño (alphas_[alphas_ > 0.].min() cuando fit_path=True) alcanzados por el algoritmo de Lars-Lasso por pasos suelen ser congruentes con la solución del estimador Lasso de descenso coordinado.

jitterfloat, default=None

Límite superior de un parámetro de ruido uniforme que se añadirá a los valores de y, para satisfacer la suposición del modelo de cálculos de uno en uno. Podría ayudar a la estabilidad.

Nuevo en la versión 0.23.

random_stateentero, instancia de RandomState o None, default=None

Determina la generación de números aleatorios para el jittering. Pasa un número entero (int) para una salida reproducible a través de múltiples invocaciones a la función. Ver Glosario. Se ignora si jitter es None.

Nuevo en la versión 0.23.

Atributos
alphas_array-like de forma (n_alphas + 1,) o lista de tales arreglos

Máximo de covarianzas (en valor absoluto) en cada iteración. n_alphas es max_iter, n_features o el número de nodos en el camino con alpha >= alpha_min, el que sea menor. Si es una lista (list) de array-like, la longitud de la lista exterior es n_targets.

active_list de longitud n_alphas o lista de tales listas

Índices de las variables activas al final del camino. Si se trata de una lista de listas, la longitud de la lista exterior es n_targets.

coef_path_array-like de forma (n_features, n_alphas + 1) o lista de tales arreglos

Si se pasa una lista se espera que sea uno de n_targets tales arreglos. Los valores variables de los coeficientes a lo largo del camino. No está presente si el parámetro fit_path es False. Si se trata de una lista de array-like, la longitud de la lista exterior es n_targets.

coef_array-like de forma (n_features,) o (n_targets, n_features)

Vector de parámetros (w en la fórmula de formulación).

intercept_float o array-like de forma (n_targets,)

Término independiente en la función de decisión.

n_iter_array-like o int

El número de iteraciones que toma lars_path para encontrar la cuadrícula de alfas para cada objetivo.

Ejemplos

>>> from sklearn import linear_model
>>> reg = linear_model.LassoLars(alpha=0.01)
>>> reg.fit([[-1, 1], [0, 0], [1, 1]], [-1, 0, -1])
LassoLars(alpha=0.01)
>>> print(reg.coef_)
[ 0.         -0.963257...]

Métodos

fit

Ajusta el modelo utilizando X, y como datos de entrenamiento.

get_params

Obtiene los parámetros para este estimador.

predict

Predice utilizando el modelo lineal.

score

Devuelve el coeficiente de determinación \(R^2\) de la predicción.

set_params

Establece los parámetros de este estimador.

fit()

Ajusta el modelo utilizando X, y como datos de entrenamiento.

Parámetros
Xarray-like de forma (n_samples, n_features)

Datos de entrenamiento.

yarray-like de forma (n_samples,) o (n_samples, n_targets)

Valores objetivo.

Xyarray-like de forma (n_samples,) or (n_samples, n_targets), default=None

Xy = np.dot(X.T, y) que puede ser precalculado. Es útil sólo cuando la matriz de Gram está precalculada.

Devuelve
selfobject

devuelve una instancia de sí misma.

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.

Devuelve
paramsdict

Los nombres de los parámetros mapeados a sus valores.

predict()

Predice utilizando el modelo lineal.

Parámetros
Xarray-like o matriz dispersa, de forma (n_samples, n_features)

Muestras.

Devuelve
Carreglo, forma (n_samples,)

Devuelve los valores predichos.

score()

Devuelve el coeficiente de determinación \(R^2\) de la predicción.

El coeficiente \(R^2\) se define como \((1 - \frac{u}{v})\), donde \(u\) es la suma de cuadrados de los residuos ((y_true - y_pred) ** 2).sum() y \(v\) es la suma de cuadrados total ((y_true - y_true.mean()) ** 2).sum(). La mejor puntuación posible es 1.0 y puede ser negativa (porque el modelo puede ser arbitrariamente peor). Un modelo constante que siempre predice el valor esperado de y, sin tener en cuenta las características de entrada, obtendría una puntuación \(R^2\) de 0.0.

Parámetros
Xarray-like de forma (n_samples, n_features)

Muestras de prueba. Para algunos estimadores puede ser una matriz de núcleo precalculada o una lista de objetos genéricos con forma (n_samples, n_samples_fitted), donde n_samples_fitted es el número de muestras utilizadas en el ajuste para el estimador.

yarray-like de forma (n_samples,) o (n_samples, n_outputs)

Valores verdaderos para X.

sample_weightarray-like de forma (n_samples,), default=None

Ponderaciones de la muestra.

Devuelve
scorefloat

\(R^2\) de self.predict(X) con respecto a y.

Notas

La puntuación \(R^2\) utilizada al invocar a score en un regresor utiliza multioutput='uniform_average' desde la versión 0.23 para mantener la consistencia con el valor predeterminado de r2_score. Esto influye en el método score de todos los regresores de salida múltiple (excepto para MultiOutputRegressor).

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.

Devuelve
selfinstancia del estimador

Instancia del estimador.