sklearn.linear_model.TweedieRegressor¶
- class sklearn.linear_model.TweedieRegressor¶
Modelo lineal generalizado con una distribución de Tweedie.
Este estimador se puede utilizar para modelar diferentes GLMs dependiendo del parámetro
power, que determina la distribución subyacente.Más información en el Manual de usuario.
Nuevo en la versión 0.23.
- Parámetros
- powerfloat, default=0
La potencia determina la distribución del objetivo subyacente de acuerdo con la siguiente tabla:
Potencia
Distribución
0
Normal
1
Poisson
(1,2)
Compound Poisson Gamma
2
Gamma
3
Inverse Gaussian
Para
0 < power < 1, no existe ninguna distribución.- alphaflotante, default=1
Constante que multiplica el término de penalización y determina así la fuerza de regularización.
alpha = 0es equivalente a MLG no penalizados. En este caso, la matriz de diseño `X`debe tener rango de columna completo (sin colinealidades).- link{“auto”, “identity”, “log”}, default=”auto”
La función de enlace del GLM, es decir, la asignación del predictor lineal
X @ coeff + intercepta la prediccióny_pred. La opción “auto” establece el enlace dependiendo de la familia elegida como sigue:“identity” para la Distribución Normal
“log” para las distribuciones Poisson, Gamma y Gaussiana Inversa
- fit_interceptbool, default=True
Específica si una constante (también conocido como sesgo o intercepto) debería ser añadida al predictor lineal (X @ coef + intercept).
- max_iterint, default=100
El número máximo de iteraciones para el solucionador.
- tolfloat, default=1e-4
Criterio de parada. Para el solucionador lbfgs, la iteración se detendrá cuando
max{|g_j|, j = 1, ..., d} <= toldondeg_jes el j-ésimo componente del gradiente (derivativo) de la función objetivo.- warm_startbool, default=False
Si se establece como
True, reutiliza la solución de la llamada anterior afitcomo inicialización paracoef_yintercept_.- verboseint, default=0
Con el solucionador lbfgs, establece verbose a cualquier número positivo para la verbosidad.
- Atributos
- coef_arreglo de forma (n_features,)
Coeficientes estimados para el predictor lineal (
X @ coef_ + intercept_) en el GLM.- intercept_float
Intercepto (o sesgo) añadido al predictor lineal.
- n_iter_int
Número actual de iteraciones utilizadas en el solucionador.
Ejemplos
>>> from sklearn import linear_model >>> clf = linear_model.TweedieRegressor() >>> X = [[1, 2], [2, 3], [3, 4], [4, 3]] >>> y = [2, 3.5, 5, 5.5] >>> clf.fit(X, y) TweedieRegressor() >>> clf.score(X, y) 0.839... >>> clf.coef_ array([0.599..., 0.299...]) >>> clf.intercept_ 1.600... >>> clf.predict([[1, 1], [3, 4]]) array([2.500..., 4.599...])
Métodos
Ajuste de un Modelo Lineal Generalizado.
Obtiene los parámetros para este estimador.
Predicción mediante GLM con la matriz de características X.
Calcula D^2, el porcentaje de desviación explicado.
Establece los parámetros de este estimador.
- fit()¶
Ajuste de un Modelo Lineal Generalizado.
- Parámetros
- X{array-like, sparse matrix} de forma (n_samples, n_features)
Datos de entrenamiento.
- yarray-like de forma (n_samples,)
Valores objetivo.
- sample_weightarray-like de forma (n_samples,), default=None
Ponderaciones de muestra.
- Devuelve
- selfdevuelve 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
Nombres de parámetros mapeados a sus valores.
- predict()¶
Predicción mediante GLM con la matriz de características X.
- Parámetros
- X{array-like, sparse matrix} de forma (n_samples, n_features)
Muestras.
- Devuelve
- y_predarreglo de forma (n_samples,)
Devuelve los valores predichos.
- score()¶
Calcula D^2, el porcentaje de desviación explicado.
D^2 es una generalización del coeficiente de determinación R^2. R^2 utiliza el error cuadrático y una desviación D^2. Note que los dos son iguales para
family='normal'.D^2 se define como \(D^2 = 1-\frac{D(y_{true},y_{pred})}{D_{null}\), \(D_{null}\) es la desviación nula, es decir, la desviación de un modelo con intercepción solo, que corresponde a \(y_{pred} = \bar{y}\). La media \(bar{y}\) es promediada por sample_weight. La mejor puntuación posible es 1.0 y puede ser negativa (porque el modelo puede ser arbitrariamente peor).
- Parámetros
- X{array-like, sparse matrix} de forma (n_samples, n_features)
Muestras de prueba.
- yarray-like de forma (n_samples,)
Valores reales del objetivo.
- sample_weightarray-like de forma (n_samples,), default=None
Ponderaciones de muestra.
- Devuelve
- scorefloat
D^2 of self.predict(X) w.r.t. y.
- set_params()¶
Establece los parámetros de este estimador.
El método funciona tanto con estimadores simples como con 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 de estimador
Instancia de estimador.