Recall
Esplora l'importanza del recall nel machine learning. Scopri come misurare e migliorare la sensibilità per i modelli Ultralytics YOLO26 per garantire alti tassi di rilevamento.
Il Recall, noto anche come sensibilità o tasso di veri positivi, è una metrica di performance fondamentale nell'apprendimento automatico che misura la capacità di un modello di identificare tutte le istanze rilevanti all'interno di un dataset. Nel contesto del object detection o della classificazione, risponde specificamente alla domanda: "Di tutti i casi positivi effettivi, quanti ne ha trovati correttamente il modello?". Raggiungere un alto Recall è critico negli scenari in cui mancare un'istanza positiva—spesso definita come falso negativo—comporta conseguenze significative. A differenza dell'accuracy, che può essere fuorviante quando si gestiscono dati sbilanciati, il Recall fornisce una visione focalizzata sull'efficacia del modello nel "catturare" la classe target.
Link to this sectionL'importanza di un alto Recall#
In molte applicazioni di artificial intelligence, il costo del mancato rilevamento di un oggetto è molto più alto del costo di un falso allarme. Un modello ottimizzato per il Recall minimizza i falsi negativi, assicurando che il sistema utilizzi una rete abbastanza ampia da catturare potenziali minacce, anomalie o condizioni critiche. Questo spesso comporta un compromesso, poiché aumentare il Recall può talvolta portare a un punteggio di precision più basso, il che significa che il modello potrebbe contrassegnare più elementi non rilevanti come positivi. Comprendere questo equilibrio è fondamentale per sviluppare solide soluzioni di machine learning.
Link to this sectionApplicazioni nel mondo reale#
Il Recall è la metrica trainante dietro molte AI solutions critiche per la sicurezza. Ecco due esempi di rilievo in cui la sensibilità ha la precedenza:
- Diagnostica medica: Nell'medical image analysis, come lo screening di radiografie per segni precoci di malattia, un alto Recall non è negoziabile. Se un sistema di AI in healthcare viene utilizzato per rilevare tumori, è molto meglio per il sistema segnalare un'ombra sospetta che si rivela benigna (un falso positivo) piuttosto che perdere completamente un tumore maligno. I medici si affidano a questi strumenti affinché fungano da rete di sicurezza, garantendo che non vengano trascurati potenziali rischi per la salute.
- Sicurezza e sorveglianza: Per un security alarm system, l'obiettivo primario è rilevare ogni tentativo di intrusione. Un sistema ottimizzato per un alto Recall garantisce che, se una persona entra in una zona riservata, l'allarme scatti. Sebbene questo possa portare a occasionali falsi allarmi causati dalla fauna selvatica, è preferibile rispetto al mancato rilevamento di un intruso reale da parte del sistema. I modelli di object detection in questi scenari sono regolati per garantire la massima sensibilità alle potenziali minacce.
Link to this sectionRecall vs. Precision#
È essenziale distinguere il Recall dalla sua controparte, la precision. Mentre il Recall misura la quantità di casi rilevanti trovati (completezza), la precision misura la qualità delle previsioni positive (esattezza).
- Recall: Si concentra sull'evitare i rilevamenti mancati. "Abbiamo trovato tutte le mele?"
- Precision: Si concentra sulla minimizzazione dei falsi allarmi. "Tutte le cose che abbiamo chiamato mele sono effettivamente mele?"
Queste due metriche condividono spesso una relazione inversa, visualizzata attraverso una Precision-Recall curve. Per valutare l'equilibrio complessivo tra loro, gli sviluppatori osservano spesso l'F1-score, che è la media armonica di entrambi. In imbalanced datasets, osservare il Recall insieme alla confusion matrix offre un quadro delle prestazioni molto più chiaro rispetto alla sola accuracy.
Link to this sectionMisurare il Recall con Ultralytics YOLO#
Durante l'addestramento di modelli come il moderno YOLO26, il Recall viene calcolato automaticamente durante la fase di validation. Il framework calcola il Recall per ogni classe e il mean Average Precision (mAP), aiutando gli sviluppatori a valutare quanto bene il modello trova gli oggetti.
Puoi facilmente validare un modello addestrato e visualizzare le sue metriche di Recall utilizzando Python. Questo snippet dimostra come caricare un modello e verificare le sue prestazioni su un dataset standard:
from ultralytics import YOLO
# Load a pretrained YOLO26 model
model = YOLO("yolo26n.pt")
# Validate the model on the COCO8 dataset
# The results object contains metrics like Precision, Recall, and mAP
metrics = model.val(data="coco8.yaml")
# Access and print the mean recall score for box detection
print(f"Mean Recall: {metrics.results_dict['metrics/recall(B)']:.4f}")Questo codice utilizza l'Ultralytics API per eseguire la validazione. Se il Recall è inferiore a quanto richiesto per il tuo progetto, potresti considerare tecniche come la data augmentation per creare esempi di addestramento più vari o l'hyperparameter tuning per regolare la sensibilità del modello. L'utilizzo dell'Ultralytics Platform può anche semplificare il processo di gestione dei dataset e il tracciamento di queste metriche su più cicli di addestramento.
Link to this sectionMigliorare il Recall del modello#
Per aumentare il Recall di un modello, i data scientist spesso regolano la confidence threshold utilizzata durante l'inference. Abbassare la soglia rende il modello più "ottimista", accettando più previsioni come positive, il che aumenta il Recall ma potrebbe diminuire la precision. Inoltre, raccogliere training data più diversificati aiuta il modello a imparare a riconoscere hard negatives e istanze oscure. Per compiti complessi, impiegare architetture avanzate come i blocchi Transformer o esplorare ensemble methods può anche migliorare la capacità del sistema di rilevare caratteristiche sottili che modelli più semplici potrebbero perdere.






