Ultralytics YOLO27: Iscriviti alla lista d'attesa.
Licenza YOLO
Torna al glossario di Ultralytics

F1-Score

L'F1-score è la media armonica di precisione e richiamo, quindi rimane basso a meno che entrambi non siano elevati. Formula, F-beta, F1 macro rispetto a micro e uso nel rilevamento.

Il punteggio F1 è un'unica metrica che combina precisione e richiamo come media armonica: F1 = 2 × precisione × richiamo / (precisione + richiamo). Varia da 0 a 1 e raggiunge 1 solo quando un modello non ha falsi positivi né falsi negativi. La media armonica tende verso il valore più basso dei suoi input, quindi F1 rimane basso quando precisione o richiamo sono bassi; per questo è la misura riepilogativa più usata nei problemi sbilanciati, come il rilevamento dei difetti, il controllo delle frodi e il recupero di documenti, in cui l'accuratezza è fuorviante. Il punteggio F1 è chiamato anche punteggio F bilanciato o misura F e, nelle maschere binarie di pixel, corrisponde al coefficiente Dice.

Come si calcola il punteggio F1#

Espresso usando i conteggi della matrice di confusione, F1 = 2TP / (2TP + FP + FN). I veri negativi non compaiono mai nella formula, quindi F1 misura solo la capacità del modello di gestire la classe positiva. È adatto alle attività in cui gli esempi positivi sono rari e quelli negativi sono poco interessanti; quando invece i veri negativi sono importanti, il coefficiente di correlazione di Matthews o l'accuratezza bilanciata coprono tutte e quattro le celle. Ciò che distingue F1 da una semplice media è la media armonica: un modello con precisione pari a 1.0 e richiamo pari a 0.1 ha una media aritmetica di 0.55 e un F1 di 0.18.

F-beta e medie multiclasse#

F1 attribuisce lo stesso peso a precisione e richiamo. Il punteggio F-beta generale considera il richiamo β volte più importante della precisione; F2 privilegia quindi il richiamo, come nello screening medico, dove non rilevare un caso è costoso, mentre F0.5 privilegia la precisione, come nel filtraggio dello spam, dove un falso allarme è costoso.

Con più di due classi, F1 viene calcolato per ogni classe e poi mediato:

  • F1 macro: la media non ponderata dei punteggi per classe, perciò una classe rara conta quanto una classe comune.
  • F1 ponderato: la media dei punteggi per classe ponderata in base al numero di esempi reali di ogni classe.
  • F1 micro: un unico F1 calcolato aggregando TP, FP e FN di tutte le classi. Nelle attività multiclasse con etichetta singola equivale all'accuratezza.
from sklearn.metrics import f1_score

# Imbalanced inspection labels: 8 good parts, 2 defective parts
y_true = ["ok"] * 8 + ["defect"] * 2
y_pred = ["ok"] * 7 + ["defect"] + ["defect", "ok"]

# F1 for each class, then two ways to average them
per_class = f1_score(y_true, y_pred, labels=["ok", "defect"], average=None)
print(f"F1 ok: {per_class[0]:.3f}, F1 defect: {per_class[1]:.3f}")
print(f"Macro F1: {f1_score(y_true, y_pred, average='macro'):.3f}")
print(f"Micro F1: {f1_score(y_true, y_pred, average='micro'):.3f}")

Lo script stampa un F1 di 0.875 per i pezzi conformi e di 0.500 per i difetti, un F1 macro di 0.688 e un F1 micro di 0.800. Il modello etichetta correttamente 8 pezzi su 10, quindi l'F1 micro equivale alla sua accuratezza di 0.80; l'F1 macro è più basso perché la classe dei difetti, meno performante, conta quanto la classe maggioritaria.

F1 nel rilevamento di oggetti#

Un rilevatore ha valori di precisione e richiamo per ogni soglia di confidenza, quindi anche una curva F1 al variare della confidenza. Il picco della curva indica la soglia di confidenza che bilancia al meglio i falsi rilevamenti e gli oggetti mancati, ovvero il singolo punto operativo in cui opera un modello in produzione. La metrica F1 affianca la precisione media (mAP), che integra i risultati su tutte le soglie per ordinare i modelli. Per YOLO26, la validazione salva questa curva come BoxF1_curve.png e riporta precisione, richiamo e F1 per classe alla soglia di confidenza in cui la F1 media raggiunge il picco.

from ultralytics import YOLO

# Load a pretrained YOLO26 nano detector
model = YOLO("yolo26n.pt")

# Validation sweeps confidence thresholds and saves BoxF1_curve.png
metrics = model.val(data="coco8.yaml")

# Precision, recall, and F1 at the confidence where mean F1 peaks
print(f"Precision: {metrics.box.mp:.3f}")
print(f"Recall: {metrics.box.mr:.3f}")
print(f"Mean F1: {metrics.box.f1.mean():.3f}")

L'F1 medio calcola la media dei valori di F1 per classe, quindi può differire leggermente dalla media armonica di precisione media e richiamo medio riportati sopra.

Esplora le soluzioni

La visione artificiale nello sport

La visione artificiale nello sport

Scopri come Ultralytics YOLO alimenta la computer vision nello sport con il tracciamento di giocatori e palloni, l'analisi delle prestazioni, gli approfondimenti per gli allenatori e la riabilitazione degli atleti.
Scopri di più
Computer vision per immagini aeree

Computer vision per immagini aeree

Trasforma immagini aeree e riprese da drone in informazioni utili in tempo reale per agricoltura, acquacoltura, conservazione e analisi geospaziale con Ultralytics YOLO.
Scopri di più
Computer vision nel settore aerospaziale

Computer vision nel settore aerospaziale

Applica la visione artificiale nel settore aerospaziale con Ultralytics YOLO per l'ispezione degli aeromobili, il rilevamento di FOD sulle piste, le operazioni di terra aeroportuali e il rilevamento di difetti nei materiali compositi.
Scopri di più
Visione artificiale nella sicurezza

Visione artificiale nella sicurezza

Proteggi ogni sito con i modelli Ultralytics YOLO. L'IA visiva alimenta il monitoraggio perimetrale, il rilevamento delle minacce, il riconoscimento delle targhe e la sicurezza sul lavoro.
Scopri di più
Visione artificiale nella robotica

Visione artificiale nella robotica

Dai più potenza alle macchine intelligenti con i modelli Ultralytics YOLO. Nell'ambito della robotica, l'IA visiva alimenta la navigazione autonoma, la percezione, il tracciamento degli oggetti e il controllo in tempo reale.
Scopri di più
Visione artificiale nella logistica

Visione artificiale nella logistica

Semplifica la logistica con i modelli Ultralytics YOLO. L'IA per la visione consente l'ispezione dei pacchi, la selezione, il tracciamento dei veicoli e il monitoraggio della sicurezza nei magazzini in tempo reale.
Scopri di più
Visione artificiale nel commercio al dettaglio

Visione artificiale nel commercio al dettaglio

Ripensa il commercio al dettaglio con i modelli Ultralytics YOLO. L'IA per la visione consente di tracciare le scorte, monitorare gli scaffali, gestire le code e ottenere informazioni più approfondite sui clienti.
Scopri di più
Visione artificiale in ambito sanitario

Visione artificiale in ambito sanitario

Crea soluzioni sanitarie con i modelli Ultralytics YOLO. In ambito sanitario, l'IA per la visione consente di elaborare più rapidamente le immagini mediche, migliorare la diagnostica e monitorare i pazienti.
Scopri di più
Computer vision nella produzione

Computer vision nella produzione

Ottimizza la produzione con i modelli Ultralytics YOLO. La visione basata sull'IA migliora il controllo qualità, il rilevamento dei difetti, la conformità ai requisiti sui DPI e l'automazione delle linee di assemblaggio.
Scopri di più
Computer vision nel settore automobilistico

Computer vision nel settore automobilistico

Applica la computer vision al settore automobilistico con i modelli Ultralytics YOLO. La visione basata sull'IA migliora la sicurezza stradale, i sistemi di assistenza alla guida e l'automazione dei veicoli, per strade più intelligenti.
Scopri di più
Visione artificiale in agricoltura

Visione artificiale in agricoltura

Porta l'IA visiva nell'agricoltura intelligente con i modelli Ultralytics YOLO. Gestisci il monitoraggio delle colture, il tracciamento del bestiame e l'agricoltura di precisione per ottenere raccolti più abbondanti e intelligenti.
Scopri di più

Costruiamo insieme il futuro dell'IA!

Inizia il tuo percorso verso il futuro del machine learning