Annotazione dei dati
Cos'è l'annotazione dei dati? Scopri come l'etichettatura dei dati con bounding box o poligoni è essenziale per l'addestramento di modelli di AI e computer vision accurati.
L'annotazione dei dati è il processo di etichettatura, etichettatura o trascrizione dei dati grezzi per fornire un contesto che un modello di machine learning (ML) possa comprendere.
modello di apprendimento automatico (ML).
Questa fase è fondamentale per
apprendimento supervisionato, in cui gli algoritmi si basano su esempi
esempi etichettati per apprendere modelli e fare previsioni. I dati annotati servono come
verità di base, rappresentando la risposta "corretta
che il modello cerca di replicare durante l'addestramento. Senza un'annotazione accurata, anche architetture sofisticate come le
come Ultralytics YOLO11 non possono funzionare in modo efficace, poiché le
le prestazioni del modello sono intrinsecamente legate alla qualità dei dati di
dati di addestramento.
Il ruolo dell'annotazione nella computer vision
Nel campo della visione computerizzata (CV), l'annotazione dei dati
annotazione dei dati comporta la marcatura di caratteristiche specifiche all'interno di immagini o fotogrammi video. Compiti diversi richiedono stili di
stili di annotazione distinti, ognuno dei quali fornisce al sistema un livello di dettaglio unico.
-
Rilevamento di oggetti: Annotatori
disegnare riquadri di delimitazione 2D attorno agli oggetti di interesse,
come automobili o pedoni. In questo modo si insegna al modello che cos'è un oggetto e dove si trova.
-
Segmentazione delle istanze:
Questa tecnica richiede il tracciamento di poligoni precisi intorno agli oggetti. A differenza dei riquadri di delimitazione, la segmentazione mappa la forma esatta e il contorno di un'entità.
forma e il contorno di un'entità, il che è fondamentale per applicazioni come la
la presa robotica.
-
Stima della posa: Gli annotatori contrassegnano specifici
"punti chiave" su un soggetto, come le articolazioni di un corpo umano (gomiti, ginocchia, spalle). Ciò consente ai
modelli di track movimento e la postura.
-
Bounding Box orientati (OBB): Utilizzato per oggetti non allineati con l'asse dell'immagine, come
oggetti non allineati con l'asse dell'immagine, come le navi nelle immagini satellitari o i pacchi su un nastro trasportatore.
Queste caselle possono ruotare per adattarsi all'orientamento dell'oggetto.
-
Classificazione delle immagini: La forma più semplice di annotazione
La forma più semplice di annotazione, in cui una singola etichetta (ad esempio, "soleggiato", "piovoso") viene assegnata a un'intera immagine.
un'intera immagine.
Le annotazioni sono tipicamente salvate in formati strutturati come JSON,
XML o semplici file di testo (ad esempio, il formato YOLO ), che vengono poi analizzati dal software di formazione.
software di formazione.
Applicazioni nel mondo reale
L'annotazione dei dati alimenta innumerevoli tecnologie moderne, colmando il divario tra i sensori grezzi e il processo decisionale intelligente.
processo decisionale.
-
Veicoli autonomi:
Le auto a guida autonoma dipendono da enormi insiemi di dati in cui ogni segnalatore di corsia, cartello stradale e ostacolo è annotato. I dati
telecamere e sensori LiDAR vengono etichettati per addestrare il sistema di percezione del veicolo a navigare in sicurezza.
sistema di percezione del veicolo per navigare in sicurezza. Questo livello di dettaglio è fondamentale per sviluppare
IA nelle soluzioni automobilistiche.
-
Diagnostica medica: In
IA nella sanità, i radiologi annotano
risonanza magnetica o
radiografie per evidenziare tumori e fratture. Queste immagini mediche annotate permettono ai modelli di assistere i medici segnalando
anomalie potenziali con un'elevata sensibilità.
-
Commercio al dettaglio intelligente: I sistemi di cassa automatizzati utilizzano l'annotazione per riconoscere i prodotti. Etichettando
migliaia di articoli di drogheria, i sistemi possono facilitare l'esperienza di acquisto senza soluzione di continuità. Per saperne di più
L 'intelligenza artificiale nella vendita al dettaglio.
Confronto con concetti correlati
È utile distinguere l'annotazione dei dati da altri termini spesso utilizzati nel flusso di lavoro di preparazione dei dati.
-
Annotazione vs. Etichettatura dei dati:
Questi termini sono spesso usati in modo intercambiabile. Tuttavia, "etichettatura" è spesso associata a semplici compiti di classificazione (assegnazione di una categoria), mentre "annotazione" spesso implica metadati più complessi.
classificazione (assegnazione di una categoria), mentre "annotazione" implica spesso la generazione di metadati più complessi, come il disegno di geometrie (poligoni, caselle) o la marcatura di orari.
più complessi, come il disegno di geometrie (poligoni, caselle) o la marcatura di orari in un video.
-
Annotazione vs. Aumento dei dati:
L'annotazione crea le etichette iniziali per un set di dati. L'incremento dei dati è un processo separato che espande artificialmente questo
artificialmente questo set di dati modificando le immagini annotate esistenti (ad esempio, capovolgendole, ruotandole o cambiandone la luminosità).
per migliorare la robustezza del modello.
-
Annotazione vs. Apprendimento attivo:
L'apprendimento attivo è una strategia in cui il modello identifica i punti di dati su cui è più confuso e richiede l'annotazione umana solo per quegli esempi specifici, ottimizzando il budget per l'annotazione.
l'annotazione umana solo per quegli esempi specifici, ottimizzando il budget per l'annotazione.
Strumenti e flusso di lavoro
La creazione di annotazioni di alta qualità richiede spesso strumenti specializzati. Opzioni open-source come
CVAT (Computer Vision Annotation Tool) e
Label Studio forniscono interfacce per disegnare caselle e poligoni. Per operazioni su larga scala
operazioni su larga scala, i team possono passare ad ambienti integrati come l'imminente Ultralytics Platform, che ottimizza il
ciclo di vita, dall'approvvigionamento dei dati alla distribuzione dei modelli.
Una volta che i dati sono stati annotati, possono essere utilizzati per addestrare un modello. L'esempio seguente mostra come addestrare un modello YOLO11
utilizzando un set di dati definito in un file YAML, che punta alle immagini e alle etichette annotate.
from ultralytics import YOLO
# Load the YOLO11 model (nano version)
model = YOLO("yolo11n.pt")
# Train on the COCO8 dataset, which contains pre-annotated images
# The 'data' argument references a YAML file defining dataset paths and classes
results = model.train(data="coco8.yaml", epochs=5, imgsz=640)