YouTalent® – Comunità online di talenti

Comprensione di accuratezza, precisione, richiamo, punteggio F1 e curve ROC

Le metriche di valutazione nel machine learning rappresentano strumenti fondamentali per misurare le performance dei modelli predittivi. Queste metriche, che includono accuratezza, precisione, richiamo, punteggio F1 e curve ROC, ti permettono di capire quanto bene il tuo modello sta funzionando.

Nel contesto dell’intelligenza artificiale moderna, queste misure sono diventate essenziali per sviluppatori e data scientist che vogliono creare algoritmi affidabili.

Aspetti chiave di queste metriche includono la loro capacità di rivelare diversi tipi di errori del modello. L’accuratezza, calcolata come (TP + TN) / (TP + TN + FP + FN), può raggiungere il valore perfetto di 1.0 (100%).

Per esempio, se classifichi correttamente 85 email su 100, ottieni un’accuratezza dell’85%. La precisione misura TP / (TP + FP), mentre il richiamo calcola TP / (TP + FN). Il punteggio F1 combina queste due metriche con la formula 2 * (precisione * richiamo) / (precisione + richiamo).

Esempi pratici mostrano come questi calcoli funzionano nella realtà. Un modello A con precisione 0.85 e richiamo 0.80 ottiene un F1 di 0.85. Un modello B con precisione 0.75 e richiamo 0.90 raggiunge un F1 di 0.818.

La matrice di confusione fornisce i valori base: TP=5, TN=6, FP=3, FN=2 danno un richiamo di 0.455.

Le implicazioni più ampie di queste metriche riguardano la scelta del modello giusto per ogni situazione. Quando i falsi negativi costano di più, dai priorità al richiamo. Quando i fal.

Punti chiave

  • L’accuratezza può ingannare nei dataset sbilanciati, raggiungendo il 95% anche quando il modello non rileva mai i casi positivi.
  • La precisione misura l’affidabilità delle previsioni positive (TP/TP+FP), mentre il richiamo identifica i casi positivi reali (TP/TP+FN).
  • Il punteggio F1 combina precisione e richiamo usando la formula 2(precisionerichiamo)/(precisione+richiamo) per dataset sbilanciati.
  • La matrice di confusione contiene quattro elementi chiave: veri positivi, veri negativi, falsi positivi e falsi negativi.
  • L’AUC delle curve ROC valuta la capacità discriminativa del modello senza dipendere da soglie specifiche di classificazione.

Accuratezza nel contesto del Machine Learning

Uomo stressato analizza metriche di performance in un ambiente lavorativo.

L’accuratezza sembra una metrica perfetta per valutare i tuoi modelli di machine learning… ma ti sbagli di grosso. Quando lavori con dataset sbilanciati o progetti di computer vision complessi, l’accuratezza può ingannarti completamente e farti credere che il tuo algoritmo funzioni alla grande.

Definizione di accuratezza

Accuratezza significa misurare quanto spesso il tuo modello di machine learning fa previsioni corrette. Puoi calcolarla con questa formula semplice: Accuratezza = (TP + TN) / (TP + TN + FP + FN).

Questa metrica ti dice la proporzione di previsioni corrette rispetto al totale delle osservazioni che hai analizzato.

Immagina di avere un modello per classificare 100 email come spam o non-spam. Se il modello classifica correttamente 70 email normali e 15 email spam, ottieni un’accuratezza dell’85%.

Questo significa che su 100 email totali, il sistema ha indovinato 85 volte. Un modello perfetto raggiunge un’accuratezza di 1,0 o 100%, senza alcun falso positivo o falso negativo.

Tuttavia, devi fare attenzione quando usi solo l’accuratezza per valutare le performance. Questa metrica funziona bene con dataset bilanciati, ma può ingannarti con dati sbilanciati.

Per esempio, se hai 95 email normali e 5 spam, un modello che dice sempre “non-spam” ottiene il 95% di accuratezza, ma non rileva mai lo spam. Ecco perché i data scientist combinano sempre l’accuratezza con altre metriche di valutazione come precisione, richiamo e punteggio F1.

Limiti dell’accuratezza come metrica

L’accuratezza può ingannarti quando lavori con set di dati sbilanciati. Immagina un dataset per il rilevamento delle frodi dove solo l’1% delle transazioni è fraudolenta. Un modello di classificazione che predice sempre “non frode” raggiungerebbe il 99% di accuratezza, ma sarebbe completamente inutile.

Questo problema si presenta spesso nell’analisi dei dati e nell’apprendimento automatico.

La precisione nasconde informazioni cruciali sui tipi di errori del tuo modello. Non distingue tra falsi positivi e falsi negativi, lasciandoti al buio sui veri punti deboli del sistema.

In un dataset con 95% esempi negativi e 5% positivi, un algoritmo che prevede solo negativi otterrebbe una precisione del 95%. Tuttavia, questo modello fallisce completamente nell’identificare i casi positivi.

Set di dati sbilanciati rendono l’accuratezza una metrica fuorviante per valutare le performance. Strumenti come TensorFlow e scikit-learn offrono alternative migliori per questi scenari.

La matrice di confusione diventa essenziale per capire dove il tuo modello sbaglia davvero.

Precisione e Richiamo

Precisione e richiamo sono due metriche che spesso confondono chi inizia con il machine learning… ma non dovrebbero. Questi concetti diventano cruciali quando lavori con classificazione binaria, specialmente nei casi dove i veri positivi e i falsi negativi hanno impatti diversi sul tuo modello.

https://www.youtube.com/watch?v=CCbFEpmmpH4

Differenza tra precisione e richiamo

La differenza tra precisione e richiamo si comprende meglio attraverso una tabella comparativa che mostra le caratteristiche distintive di queste due metriche fondamentali.

Aspetto Precisione Richiamo (Recall)
Definizione Misura l’affidabilità delle previsioni positive Indica la capacità di identificare correttamente i casi realmente positivi
Formula TP / (TP + FP) TP / (TP + FN)
Focus principale Riduce i falsi positivi Riduce i falsi negativi
Domanda chiave “Quante previsioni positive sono corrette?” “Quanti casi positivi reali sono stati trovati?”
Esempio pratico Diagnosi medica dove errori di sovradiagnosi costano caro Rilevamento spam dove perdere email importanti è grave
Impatto dei falsi positivi Diminuisce il valore della metrica Non influenza direttamente il calcolo
Impatto dei falsi negativi Non influenza direttamente il calcolo Diminuisce il valore della metrica
Utilizzo ottimale Quando i falsi allarmi hanno conseguenze severe Quando perdere casi positivi è inaccettabile
Relazione inversa Aumenta quando il richiamo spesso diminuisce Aumenta quando la precisione spesso diminuisce
Dipendenza dalla soglia Cambia con l’aggiustamento della soglia di classificazione Cambia con l’aggiustamento della soglia di classificazione

Il compromesso tra queste metriche rappresenta una sfida costante nel machine learning. Migliorare una spesso significa ridurre l’altra, creando tensione nella performance del modello. La matrice di confusione permette di calcolare entrambe le metriche usando i valori di veri positivi (TP), falsi positivi (FP), e falsi negativi (FN).

Ogni scenario applicativo richiede una valutazione specifica. Nel rilevamento frodi bancarie, la precisione alta evita di bloccare transazioni legittime. Nel screening medico per malattie gravi, il richiamo alto garantisce di non perdere pazienti a rischio. L’equilibrio tra precisione e richiamo diventa cruciale quando devi ottimizzare la performance complessiva del sistema.

Quando dare priorità alla precisione

Dovresti dare priorità alla precisione quando i falsi positivi costano troppo. Nel rilevamento dello spam, la precisione diventa cruciale perché non vuoi che email importanti finiscano nella cartella spam.

I falsi allarmi qui possono farti perdere messaggi di lavoro o comunicazioni urgenti. La regressione logistica e le reti neurali possono aiutarti a costruire modelli precisi per questi casi…

ma devi sempre bilanciare con attenzione.

Nel contesto retail, hai bisogno di alta precisione per evitare che il sistema rilevi ombre o oggetti sullo sfondo come prodotti veri. Un modello ad alta precisione prevede un positivo solo quando è davvero sicuro, riducendo i falsi allarmi ma rischiando di perdere alcuni veri positivi.

Sklearn e le foreste di decisione ti offrono strumenti potenti per ottimizzare questa metrica. Google Cloud e QlikPredict forniscono piattaforme dove puoi implementare questi algoritmi con facilità.

Considera la precisione fondamentale anche quando lavori con intelligenza artificiale nel settore medico o finanziario. I veri negativi diventano importanti quanto i veri positivi in questi scenari.

L’overfitting può rovinare la precisione del tuo modello, quindi usa tecniche di regolarizzazione durante l’addestramento. GitHub ospita molti progetti che mostrano come bilanciare precision/recall trade-off usando metriche di performance avanzate come il coefficiente di correlazione di Matthews.

Quando dare priorità al richiamo

Il richiamo diventa fondamentale nelle situazioni dove perdere un caso positivo costa troppo. Nel settore sanitario, devi identificare correttamente tutti i pazienti con malattie gravi, anche se questo significa avere qualche falso allarme.

La rievocazione ti permette di catturare ogni possibile caso di cancro o altre patologie critiche. Un alto miss rate in questi contesti può letteralmente costare vite umane.

Le applicazioni di sicurezza richiedono sempre un richiamo elevato. Nei sistemi di rilevamento frodi, preferisci bloccare qualche transazione legittima piuttosto che lasciare passare una truffa.

I modelli di deep learning per la sicurezza aeroportuale devono identificare ogni possibile minaccia, accettando controlli aggiuntivi come prezzo da pagare. La specificità può essere sacrificata quando la sicurezza è in gioco.

Contesti con dati sbilanciati spesso richiedono focus sul richiamo. Nel retail, un inventario accurato dipende dall’identificare tutti i prodotti reali presenti. Perdere articoli nel conteggio causa problemi operativi maggiori rispetto a contare qualche pezzo in più.

I sistemi di clustering per il recupero informazioni privilegiano sempre la completezza dei risultati, garantendo che nessun documento rilevante venga perso durante la ricerca.

Il compromesso tra Precisione e Richiamo

Quando costruisci modelli di machine learning, devi scegliere tra precisione e richiamo… e questa scelta può fare la differenza tra un modello che funziona e uno che fallisce miseramente.

Questo bilanciamento delicato influenza tutto, dalla curva roc ai risultati finali del tuo progetto di ai generativa.

Il significato del bilanciamento

Il bilanciamento tra precisione e richiamo rappresenta una delle sfide più complesse nel machine learning. Alzare la soglia di decisione comporta una diminuzione dei positivi previsti, migliorando la precisione ma riducendo il richiamo.

Questa dinamica crea un vero e proprio “tira e molla” tra le due metriche… dove migliorare una significa inevitabilmente sacrificare l’altra. La regolazione della soglia di classificazione può portare a un miglioramento di una metrica e a un peggioramento dell’altra, rendendo necessaria una scelta strategica basata sul contesto specifico.

Precisione e richiamo di solito si muovono in direzioni opposte, creando quello che gli esperti chiamano il “precision-recall trade-off”. Riduzione della soglia di decisione aumenta le probabilità di segnalare falsi positivi, diminuendo la precisione mentre aumenta il richiamo.

Il giusto equilibrio tra precisione e richiamo dipende dal contesto e dal costo degli errori… un aspetto che varia drasticamente tra diversi domini applicativi. In ambiti come la diagnosi medica, potresti preferire un richiamo più alto (catturare tutti i casi positivi), mentre in sistemi di raccomandazione pubblicitaria, la precisione potrebbe essere più importante per evitare spam agli utenti.

Impatti sulla performance del modello

Trovare il giusto equilibrio tra precisione e richiamo influenza direttamente come il tuo modello si comporta nel mondo reale. Nel settore diagnostico, un falso negativo ha conseguenze più gravi di un falso positivo, quindi devi ottimizzare per catturare tutti i casi possibili.

Questo significa che accetti qualche diagnosi errata pur di non perdere pazienti malati. La tua scelta dipende dai costi, benefici e rischi specifici di ciascun problema che stai affrontando.

Modelli con alta sensibilità tendono ad avere un FPR più elevato, e viceversa, creando un trade-off costante. Nel rilevamento dello spam, il modello deve trovare un equilibrio tra il rischio di lasciare entrare spam e il rischio di bloccare email legittime.

Puoi utilizzare curve ROC per visualizzare questo compromesso e trovare la soglia ottimale. L’AUC (area under the curve) ti aiuta a confrontare diversi modelli e scegliere quello più adatto.

La performance finale del tuo sistema dipende da quanto bene riesci a bilanciare queste metriche. Nel settore diagnostico, uno strumento diagnostico non rileva una malattia in un paziente malato rappresenta un falso negativo con conseguenze potenzialmente fatali.

Devi considerare il contesto specifico, i costi degli errori e l’impatto sui tuoi utenti finali. Alcuni problemi richiedono alta precisione, altri alta sensibilità, ma raramente puoi massimizzare entrambe simultaneamente.

Punteggio F1: Una Metrica Combinata

Il punteggio F1 combina precisione e richiamo in una singola metrica… e questo è fantastico quando i tuoi dati sono sbilanciati (come spesso accade nel mondo reale). Puoi usare strumenti come Qlik Predict per calcolare automaticamente questo punteggio, risparmiando tempo prezioso nell’analisi delle performance del tuo modello.

Come si calcola il punteggio F1

Il punteggio F1 combina precisione e richiamo in una singola metrica. Questa formula ti aiuta a valutare meglio i tuoi modelli di machine learning.

  1. Applica la formula base F1 = 2 (precisione richiamo) / (precisione + richiamo) per ottenere il risultato finale.
  2. Usa la formula alternativa F1 = 2TP / (2TP + FP + FN) quando lavori direttamente con i valori della matrice di confusione.
  3. Calcola prima la precisione dividendo i veri positivi per tutti i risultati positivi previsti dal tuo algoritmo.
  4. Determina il richiamo dividendo i veri positivi per tutti i casi positivi reali nel tuo dataset come iris dataset.
  5. Moltiplica precisione per richiamo, poi moltiplica questo risultato per 2 nella formula principale.
  6. Somma precisione e richiamo nel denominatore per completare il calcolo della metrica combinata.
  7. Ottieni valori perfetti di 1 quando sia precisione che richiamo raggiungono il massimo punteggio possibile.
  8. Considera che il Modello A con precisione 0,85 e richiamo 0,80 produce un punteggio di 0,85.
  9. Confronta con il Modello B che ha precisione 0,75, richiamo 0,90 e genera un punteggio di 0,818.
  10. Nota come valori molto distanti tra precisione e richiamo portano a punteggi peggiori nella metrica finale.
  11. Integra questo calcolo nei tuoi flussi mlops per monitorare costantemente le performance dei modelli.
  12. Utilizza strumenti come qlik analytics per automatizzare questi calcoli durante l’analisi dei tuoi algoritmi.

Vantaggi del punteggio F1 in modelli sbilanciati

Dataset sbilanciati creano problemi per l’accuratezza tradizionale. Modelli linguistici di grandi dimensioni spesso affrontano questa sfida nei loro sistemi di classificazione. F1 bilancia l’importanza di precisione e richiamo, offrendo una visione più completa delle prestazioni del tuo modello.

Questa metrica diventa cruciale quando lavori con dati dove una classe domina sulle altre (come nel rilevamento di frodi o diagnosi mediche).

F1 risulta preferibile rispetto all’accuratezza per set di dati con classi sbilanciate, specialmente in contesti di AI responsabile. Falsi positivi e falsi negativi assumono uguale rilevanza in questa metrica combinata.

Pure.ai e altri strumenti di machine learning utilizzano F1 per valutare modelli su dataset complessi. Embedding e algoritmi di regressione lineare beneficiano di questa valutazione equilibrata durante l’ottimizzazione degli iperparametri.

Ora esaminiamo come costruire le fondamenta per comprendere queste metriche attraverso la matrice di confusione.

Matrice di Confusione: Fondamenti per le Metriche di Classificazione

You need to understand the confusion matrix before you dive into accuracy and precision metrics. This simple table shows you exactly where your machine learning model gets things right…

and where it stumbles.

Elementi chiave della matrice di confusione

La matrice di confusione contiene quattro elementi fondamentali che devi conoscere per valutare il tuo modello.

Termine Abbreviazione Significato Descrizione
Vero Positivo TP Previsione corretta di un’istanza positiva Il modello prevede correttamente la classe positiva
Vero Negativo TN Previsione corretta di un’istanza negativa Il modello prevede correttamente la classe negativa
Falso Positivo FP Errore di tipo I Previsione errata di istanza positiva quando è negativa
Falso Negativo FN Errore di tipo II Previsione errata di istanza negativa quando è positiva

• Questa tabella 2×2 organizza tutti i risultati possibili della classificazione binaria

• Le previsioni corrette si trovano sulla diagonale principale della matrice

• Gli errori appaiono fuori dalla diagonale, creando una mappa visiva delle performance

• True Positive e True Negative rappresentano le decisioni giuste del tuo algoritmo

• False Positive significa che hai “gridato al lupo” quando non c’era pericolo

• False Negative indica che hai perso qualcosa di importante, come un segnale di allarme

• Ogni cella della matrice racconta una storia diversa sul comportamento del modello

• I numeri in queste quattro caselle diventano la base per calcolare tutte le altre metriche

• Comprendere questi elementi ti permette di identificare dove il modello sbaglia più spesso

Ora che conosci gli elementi base, puoi imparare come interpretare correttamente i risultati della matrice.

Interpretazione dei risultati

Leggere una matrice di confusione richiede attenzione ai dettagli. I numeri ti dicono una storia precisa sulla performance del tuo modello. Prendiamo l’esempio con TP = 3, TN = 4, FP = 2, FN = 1…

questi valori creano una precisione di 0,6. Calcoli la precisione dividendo i veri positivi per la somma di veri positivi e falsi positivi: 3 / (3 + 2) = 0,6. Questo significa che il 60% delle tue previsioni positive erano corrette.

Attenzione ai valori NaN che possono apparire nei tuoi calcoli. Questi “not a number” emergono quando dividi per zero, specialmente se TP e FP sono entrambi 0. A volte NaN indica prestazioni perfette, ma può anche segnalare modelli inefficaci che non prevedono mai risultati positivi.

Nel machine learning moderno, strumenti come qlik cloud aiutano a visualizzare questi dati complessi. L’equità del modello dipende dalla corretta interpretazione di questi numeri, non solo dall’accuratezza generale.

Curve ROC e AUC

Le curve ROC ti mostrano come il tuo modello bilancia veri positivi e falsi positivi… mentre l’AUC ti dice quanto bene il modello separa le classi (pensa a chef robotics che deve distinguere ingredienti buoni da quelli cattivi).

Queste metriche diventano cruciali quando lavori con serie temporali o algoritmi di discesa del gradiente, perché ti aiutano a capire se il tuo modello sta davvero imparando o se sta solo “tirando a indovinare.

Definizione della curva ROC

La curva ROC rappresenta uno strumento visivo potente per valutare le prestazioni dei modelli di classificazione. Questa curva traccia il tasso di veri positivi contro il tasso di falsi positivi, creando una rappresentazione grafica che ti aiuta a capire come si comporta il tuo modello.

Il TPR mostra la percentuale di istanze positive effettive correttamente identificate come positive, mentre il FPR indica la percentuale di istanze negative effettive erroneamente classificate come positive.

Ogni punto sulla curva ROC corrisponde a una soglia differente e mostra come le performance variano con il cambiamento della soglia. Immagina di avere un “cursore” che puoi spostare per regolare quanto il tuo modello sia “severo” nel fare previsioni positive.

Spostando questo cursore (cambiando la soglia), ottieni punti diversi sulla curva che ti mostrano il compromesso tra catturare più casi positivi e accettare più falsi allarmi.

La curva ROC mostra il compromesso tra sensibilità (richiamo) e specificità (1 – FPR) al variare della soglia decisionale. Questo significa che puoi vedere visivamente come bilanciare la capacità del modello di trovare tutti i casi positivi contro la sua tendenza a “gridare al lupo” troppo spesso.

Una curva che si avvicina all’angolo superiore sinistro del grafico indica prestazioni migliori, mentre una linea diagonale suggerisce che il modello non è meglio di una previsione casuale.

Significato dell’AUC

L’AUC fornisce una misura aggregata delle performance del tuo modello. Questa metrica ti mostra quanto bene il tuo algoritmo distingue tra classi diverse. Un valore più alto di AUC indica una migliore capacità di discriminazione tra classi, e questo significa che il tuo modello funziona meglio.

Valori vicini a 1.0 rappresentano performance eccellenti, mentre valori intorno a 0.5 suggeriscono che il modello non è migliore di una scelta casuale.

Questa metrica ha un grande vantaggio rispetto ad altre misure come accuratezza o precisione. L’AUC è meno influenzato dallo squilibrio di classe rispetto ad altre metriche come accuratezza, precisione e richiamo.

Immagina di avere un dataset dove il 95% dei casi appartiene a una classe… l’accuratezza potrebbe sembrare alta anche con un modello mediocre, ma l’AUC ti darà una valutazione più onesta.

Il roc-auc considera tutte le possibili soglie di classificazione, offrendoti una visione completa delle capacità del tuo modello.

L’AUC valuta le performance senza necessità di una soglia specifica, fornendo una visione più completa della capacità discriminativa del modello. Non devi preoccuparti di scegliere il punto di taglio perfetto per classificare i tuoi dati.

Questa caratteristica rende l’AUC particolarmente utile quando confronti diversi algoritmi o quando ottimizzi i parametri del tuo modello attraverso la retropropagazione dell’errore.

Puoi usare questa metrica insieme al log loss per avere un quadro ancora più dettagliato delle performance del tuo sistema di classificazione.

Utilizzo della curva ROC per la regolazione della soglia

La curva ROC ti aiuta a trovare la soglia perfetta per il tuo modello. Puoi regolare questa soglia per bilanciare sensibilità e specificità secondo le tue esigenze.

  1. Analizza la curva ROC per identificare il punto ottimale dove sensibilità e specificità si equilibrano meglio per il tuo caso specifico.
  2. Sposta la soglia verso sinistra se vuoi aumentare la sensibilità, ma preparati ad accettare un fallout più alto.
  3. Regola la soglia verso destra quando preferisci ridurre i falsi positivi, anche se questo significa perdere alcuni veri positivi.
  4. Utilizza il punto più vicino all’angolo superiore sinistro del grafico come riferimento per la soglia ottimale generale.
  5. Considera il costo degli errori nel tuo dominio specifico prima di scegliere dove posizionare la soglia decisionale.
  6. Testa diverse soglie sulla curva ROC per vedere come cambiano precisione e richiamo nel tuo dataset di validazione.
  7. Calcola l’AUC e curva ROC insieme per avere una visione completa delle performance del modello a diverse soglie.
  8. Monitora come la regolazione della soglia impatta sui risultati pratici del tuo sistema di classificazione.
  9. Documenta la soglia scelta e le ragioni dietro questa decisione per future ottimizzazioni del modello.
  10. Confronta le performance di diverse soglie usando metriche multiple, non solo accuratezza o AUC.

Conclusione

Ora padroneggi le metriche fondamentali del machine learning, dall’accuratezza alle curve ROC. Questi strumenti ti permettono di valutare i tuoi modelli con precisione e scegliere la metrica giusta per ogni situazione specifica.

Ricorda che l’accuratezza può ingannare nei dataset sbilanciati, mentre il punteggio F1 offre una visione più equilibrata delle performance complessive. Sperimenta con diverse soglie usando le curve ROC per ottimizzare i risultati secondo le tue esigenze pratiche.

Inizia oggi stesso ad applicare queste conoscenze nei tuoi progetti, perché la differenza tra un modello mediocre e uno eccellente sta proprio nella scelta delle metriche appropriate.

Domande Frequenti

1. Che cosa significa accuratezza nel machine learning?

L’accuratezza misura quante predizioni sono corrette sul totale. È come dire “quante volte ho indovinato giusto su cento tentativi”, semplice no?

2. Qual è la differenza tra precisione e richiamo?

La precisione guarda quanti risultati positivi sono davvero giusti, mentre il richiamo conta quanti casi positivi reali abbiamo trovato. Pensatela così: la precisione evita i falsi allarmi, il richiamo non perde niente di importante.

3. Come funziona il punteggio F1?

Il punteggio F1 combina precisione e richiamo in un solo numero (è la loro media armonica, per chi ama la matematica). Quando precisione e richiamo sono entrambi alti, anche F1 sarà alto.

4. A cosa servono le curve ROC?

Le curve ROC mostrano quanto bene un modello distingue tra classi diverse. Più la curva si avvicina all’angolo in alto a sinistra, meglio funziona il nostro algoritmo nel separare i “sì” dai “no”.

Riferimenti

  1. https://labelf.ai/blog/what-is-accuracy-precision-recall-and-f1-score
  2. https://www.ultralytics.com/it/blog/accuracy-precision-recall (2025-08-20)
  3. https://developers.google.com/machine-learning/crash-course/classification/accuracy-precision-recall?hl=it
  4. https://www.researchgate.net/publication/386347454_Confusion_Matrix-Based_Performance_Evaluation_Metrics