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 pratico interattivo
Prova a risolvere questo esercizio completando il 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)