Valutazione delle previsioni ed esperimentazione
In questo esercizio valuterai le prestazioni del modello di previsione per esplorare i casi d’uso dell'esperimentazione.
Il forecast unito (fc), che combina le previsioni con i risultati effettivi del test, è già caricato. Le funzioni di valutazione (mape, rmse, coverage) e pandas (come pd) sono pronte all’uso. Ecco un rapido promemoria delle funzioni:
def mape(y, yhat):
mape = mean(abs(y - yhat) / y)
return mape
def rmse(y, yhat):
rmse = (mean((y - yhat) ** 2)) ** 0.5
return rmse
def coverage(y, lower, upper):
coverage = sum((y <= upper) & (y >= lower)) / len(y)
return coverage
Per prima cosa, calcola le metriche di performance del modello. Poi rispondi a una domanda sugli obiettivi dell'esperimentazione nel forecasting.
Questo esercizio fa parte del corso
Progettare pipeline di forecasting per la produzione
esercizio interattivo pratico
Prova questo esercizio completando questo codice di esempio.
performance_metrics = []
# Loop through models and calculate metrics
for model in ["LGBMRegressor", "XGBRegressor", "LinearRegression"]:
performance_metrics.append({
"model": model,
"mape": ____(fc["y"], fc[model]),
"rmse": ____(fc["y"], fc[____]),
"coverage": ____(fc["y"], fc[f"{model}-lo-95"], fc[f"{model}-hi-95"])
})
# Create DataFrame and sort by RMSE
fc_performance = pd.DataFrame(performance_metrics).sort_values("____")
print(fc_performance)