Auto-regresión
Pasemos a la revisión del modelo autorregresivo:
La fórmula es similar a la fórmula de regresión lineal, de donde procede su nombre. En lugar del coeficiente, se utiliza el valor pasado de x
.
Con statsmodels
podemos ejecutar un modelo autorregresivo AutoReg()
:
``python from statsmodels.tsa.ar_model import AutoReg
Entrenar el modelo de autoregresión
model = AutoReg(df["valor"], lags=3) model_fit = model.fit()
Realizar predicciones
predicciones = model_fit.predict(start=0, end=len(X)-1, dynamic=False)
Trazar resultados
plt.plot(df["value"][:50]) plt.plot(predicciones[:50], color='rojo') plt.show()
Si se fija, las predicciones del modelo autorregresivo son más precisas que las de la media móvil simple.
Aprendamos a evaluar los resultados recibidos de los modelos entrenados. El error se calcula utilizando el error cuadrático medio. Esto se hace simplemente con la ayuda de las funciones sqrt()
y mean_squared_error()
:
``python from sklearn.metrics import error_medio_cuadrado from math import sqrt
puntuación_prueba = sqrt(error_medio_cuadrado(df["valor"][3:], predicciones [3:])) print("MSE de la prueba: %.3f" % test_score)
Del mismo modo, calculamos el valor del error del modelo anterior:
Cuanto menor sea el valor MSE, menor será el error.
Swipe to start coding
Cree un modelo autorregresivo y entrénelo en el conjunto de datos shampoo.csv
.
-
- Cree un modelo autoregresivo (
Autoreg
) con 6 retardos para la columna"Ventas"
del DataFramedf
.
- Cree un modelo autoregresivo (
-
- Ajuste el
modelo
a los datos.
- Ajuste el
-
- Realice predicciones utilizando el
modelo
. Inicie la predicción en la primera fila (parámetrostart
) y establezca el parámetrodynamic
enFalse
.
- Realice predicciones utilizando el
- Visualice los resultados: muestre las 150 primeras observaciones de la columna
"Ventas"
del DataFramedf
en la primera llamada a la función.plot()
y los 150 primeros valores pronosticados en la segunda llamada.
Solución
¡Gracias por tus comentarios!
single
Pregunte a AI
Pregunte a AI
Pregunte lo que quiera o pruebe una de las preguntas sugeridas para comenzar nuestra charla
Resumir este capítulo
Explicar el código en file
Explicar por qué file no resuelve la tarea
Awesome!
Completion rate improved to 3.85
Auto-regresión
Desliza para mostrar el menú
Pasemos a la revisión del modelo autorregresivo:
La fórmula es similar a la fórmula de regresión lineal, de donde procede su nombre. En lugar del coeficiente, se utiliza el valor pasado de x
.
Con statsmodels
podemos ejecutar un modelo autorregresivo AutoReg()
:
``python from statsmodels.tsa.ar_model import AutoReg
Entrenar el modelo de autoregresión
model = AutoReg(df["valor"], lags=3) model_fit = model.fit()
Realizar predicciones
predicciones = model_fit.predict(start=0, end=len(X)-1, dynamic=False)
Trazar resultados
plt.plot(df["value"][:50]) plt.plot(predicciones[:50], color='rojo') plt.show()
Si se fija, las predicciones del modelo autorregresivo son más precisas que las de la media móvil simple.
Aprendamos a evaluar los resultados recibidos de los modelos entrenados. El error se calcula utilizando el error cuadrático medio. Esto se hace simplemente con la ayuda de las funciones sqrt()
y mean_squared_error()
:
``python from sklearn.metrics import error_medio_cuadrado from math import sqrt
puntuación_prueba = sqrt(error_medio_cuadrado(df["valor"][3:], predicciones [3:])) print("MSE de la prueba: %.3f" % test_score)
Del mismo modo, calculamos el valor del error del modelo anterior:
Cuanto menor sea el valor MSE, menor será el error.
Swipe to start coding
Cree un modelo autorregresivo y entrénelo en el conjunto de datos shampoo.csv
.
-
- Cree un modelo autoregresivo (
Autoreg
) con 6 retardos para la columna"Ventas"
del DataFramedf
.
- Cree un modelo autoregresivo (
-
- Ajuste el
modelo
a los datos.
- Ajuste el
-
- Realice predicciones utilizando el
modelo
. Inicie la predicción en la primera fila (parámetrostart
) y establezca el parámetrodynamic
enFalse
.
- Realice predicciones utilizando el
- Visualice los resultados: muestre las 150 primeras observaciones de la columna
"Ventas"
del DataFramedf
en la primera llamada a la función.plot()
y los 150 primeros valores pronosticados en la segunda llamada.
Solución
¡Gracias por tus comentarios!
Awesome!
Completion rate improved to 3.85single