PerformancesDrift¶
- class model_monitoring.model_performance.PerformancesDrift(perf_metrics_curr, config_threshold=None)¶
Classe utilizzata per monitorare e rilevare il Drift nelle metriche di performance di un modello.
La classe supporta due tipi di input:
“perf_metrics_curr”: le metriche correnti di performance vengono fornite come dizionario contenente le performance per ogni metrica.
“perf_metrics_historic”: le metriche storiche di performance vengono fornite come dizionario contenente le performance storiche per ogni metrica.
La classe verifica che le metriche correnti e storiche siano compatibili.
Permette una configurazione flessibile dove è possibile definire le metriche da monitorare, le soglie di allarme e le logiche di analisi specifiche per ciascuna metrica, oppure una configurazione di default tramite un file interno params.yml.
Descrizione dei parametri di configurazione per metrica:
logic: Specifica come interpretare il cambiamento della metrica ai fini del drift (vedi ‘Logiche di Drift Configurabili’ sotto).
relative: Contiene le soglie per il drift delle metriche di performance.
red/yellow: Soglie di variazione percentuale rispetto al valore storico.
absolute: Contiene le soglie assolute per le metriche di performance dei valori correnti.
red/yellow: Valori numerici che definiscono le soglie assolute per il valore corrente della metrica.
Funzionalità Principali:
Monitoraggio Assoluto: Confronta le performance correnti delle metriche con le soglie absolute impostate. Genera avvisi di tipo “red alert” o “yellow alert” se queste soglie vengono superate.
Monitoraggio Relativo: Valuta l’evoluzione delle metriche confrontando le performance correnti con quelle storiche. Genera avvisi basati sulle soglie relative impostate.
Logiche di Drift Configurabili (logic): Permette di definire come interpretare una variazione di performance ai fini del drift, in base alla natura della metrica:
“increase”: Un peggioramento si verifica se la metrica aumenta (es. per metriche come il tasso di errore, dove un valore più basso è migliore).
“decrease”: Un peggioramento si verifica se la metrica diminuisce (es. per metriche come l’accuratezza, dove un valore più alto è migliore).
Reporting Dettagliato: Riassume tutte le analisi in un report pd.DataFrame completo che include le performance correnti per metrica, gli allarmi assoluti e relativi scattati, e i valori di drift delle metriche calcolati (con differenze percentuali).
Methods
Inizializza la classe PerformancesDrift, configurando le metriche di performance correnti e le soglie di monitoraggio per le metriche di performance.
Applica le soglie (predefinite o fornite) alle porformance delle metriche correnti.
Calcola il drift delle metriche di performance correnti rispetto alle metriche storiche.
Restituisce un report comprensivo dei risultati del drift delle metriche di performance con warning assoluti e relativi.