Model drift identificeren
Nu ga je de modelscores in de tijd plotten om te visualiseren wanneer drift optreedt. Door de drempellijn en rollende vensters van de RMSE toe te voegen, zie je hoe de achterliggende foutlijnen prestatieverslechtering aangeven.
De fc_log-gegevensset met berekende voortschrijdende gemiddelden, rmse_threshold, en Plotly als go zijn al voor je ingeladen.
Deze oefening maakt deel uit van de cursus
Forecasting-pijplijnen ontwerpen voor productie
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
p = go.Figure()
# Add RMSE line
p.add_trace(go.Scatter(x=fc_log["forecast_start"], y=fc_log["____"],
mode='lines',
name='RMSE',
line=dict(color='royalblue', width=2)))
# Add the RMSE rolling windows for 7 and 14 days
p.add_trace(go.Scatter(x=fc_log["forecast_start"], y=fc_log["____"],
mode='lines',
name='7 Days MA',
line=dict(color='green', width=2)))
p.add_trace(go.Scatter(x=fc_log["forecast_start"], y=fc_log["____"],
mode='lines',
name='14 Days MA',
line=dict(color='orange', width=2)))
p.add_trace(go.Scatter(x=[fc_log["forecast_start"].min(), fc_log["forecast_start"].max()],
y=[rmse_threshold, rmse_threshold],
name="Threshold",
line=dict(color="red", width=2, dash="dash")))
# Add plot titles and show the plot
p.update_layout(title="Forecast Error Rate Over Time",
xaxis_title="____",
yaxis_title="____",
height=400,
title_x=0.5,
margin=dict(t=50, b=50, l=50, r=50))
p.show()