sklearn.linear_model
.PassiveAggressiveRegressor¶
- sklearn.linear_model.PassiveAggressiveRegressor()¶
Regresor agresivo-pasivo (Passive Aggressive Regressor)
Más información en el Manual de usuario.
- Parámetros
- Cfloat, default=1.0
Tamaño máximo del paso o step (regularización). El valor predeterminado es 1.0.
- fit_interceptbool, default=True
Si el intercepto debe ser estimado o no. Si es False, se supone que los datos ya están centrados. El valor predeterminado es True.
- max_iterint, default=1000
El número máximo de pasadas sobre los datos de entrenamiento (también conocido como épocas o epochs). Sólo afecta al comportamiento del método
fit
, y no al métodopartial_fit
.Nuevo en la versión 0.19.
- tolfloat o None, default=1e-3
El criterio de parada. Si no es None, las iteraciones se detendrán cuando (loss > previous_loss - tol).
Nuevo en la versión 0.19.
- early_stoppingbool, default=False
Indica si se utiliza la parada anticipada para finalizar el entrenamiento cuando la puntuación de validación no mejora. Si se establece en True, se reservará automáticamente una fracción de los datos de entrenamiento como validación y se finalizará el entrenamiento cuando la puntuación de validación no mejore en al menos tol para n_iter_no_change épocas consecutivas.
Nuevo en la versión 0.20.
- validation_fractionfloat, default=0.1
La proporción de los datos de entrenamiento que se reservan como conjunto de validación para la parada anticipada. Debe estar entre 0 y 1. Sólo se utiliza si early_stopping es True.
Nuevo en la versión 0.20.
- n_iter_no_changeint, default=5
Número de iteraciones sin mejora que hay que esperar antes de la parada anticipada.
Nuevo en la versión 0.20.
- shufflebool, default=True
Si los datos de entrenamiento deben ser aleatorizados o no después de cada época.
- verboseentero, default=0
Nivel de verbosidad
- losscadena de caracteres, default=»epsilon_insensitive»
La función de pérdida que se utilizará: epsilon_insensible: equivalente a PA-I en el documento de referencia. squared_epsilon_insensible: equivalente a PA-II en el documento de referencia.
- epsilonfloat, default=DEFAULT_EPSILON
Si la diferencia entre la predicción actual y la etiqueta correcta está por debajo de este umbral, el modelo no se actualiza.
- random_stateentero, instancia de RandomState, default=None
Se utiliza para reorganizar al azar los datos de entrenamiento, cuando
shuffle
se establece enTrue
. Introduce un int para una salida reproducible a través de múltiples invocaciones de la función. Ver Glosario.- warm_startbool, default=False
Cuando se establece a True, reutiliza la solución de la invocación anterior para ajustar como inicialización, de lo contrario, solamente borrará la solución anterior. Ver Glosario.
Invocar repetidamente a fit o partial_fit cuando warm_start es True puede dar lugar a una solución diferente que cuando se invoca a fit una sola vez debido a la forma en que se mezclan al azar los datos.
- averagebool o int, default=False
Si se establece como True, calcula el promedio de los ponderados SGD en todas las actualizaciones y almacena el resultado en el atributo
coef_
. Si se establece como un int mayor que 1, el promedio comenzará una vez que el número total de muestras vistas alcance elaverage
. Así,average=10
se empieza a promediar después de ver 10 muestras.Nuevo en la versión 0.19: parámetro average para utilizar el promedio de pesos en SGD
- Atributos
- coef_arreglo, forma = [1, n_features] si n_classes == 2 de lo contrario [n_classes, n_features]
Ponderaciones asignadas a las características.
- intercept_arreglo, forma = [1] si n_classes == 2 de lo contrario [n_classes]
Constantes en la función de decisión.
- n_iter_int
El número real de iteraciones para alcanzar el criterio de parada.
- t_int
Número de actualizaciones de ponderación realizadas durante el entrenamiento. Igual que
(n_iter_ * n_samples)
.
Ver también
Referencias
Algoritmos pasivos-agresivos en línea <http://jmlr.csail.mit.edu/papers/volume7/crammer06a/crammer06a.pdf> K. Crammer, O. Dekel, J. Keshat, S. Shalev-Shwartz, Y. Singer - JMLR (2006)
Ejemplos
>>> from sklearn.linear_model import PassiveAggressiveRegressor >>> from sklearn.datasets import make_regression
>>> X, y = make_regression(n_features=4, random_state=0) >>> regr = PassiveAggressiveRegressor(max_iter=100, random_state=0, ... tol=1e-3) >>> regr.fit(X, y) PassiveAggressiveRegressor(max_iter=100, random_state=0) >>> print(regr.coef_) [20.48736655 34.18818427 67.59122734 87.94731329] >>> print(regr.intercept_) [-0.02306214] >>> print(regr.predict([[0, 0, 0, 0]])) [-0.02306214]