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

Zero-Shot Learning

L'apprendimento zero-shot riconosce classi senza esempi etichettati, abbinando gli input a descrizioni testuali. Panoramica di CLIP, rilevamento a vocabolario aperto e limiti.

L'apprendimento zero-shot (ZSL) è la capacità di un modello di riconoscere classi per le quali non ha mai visto esempi di addestramento etichettati. Invece degli esempi, il modello riceve una descrizione di ogni nuova classe, per esempio un elenco di attributi o, nei sistemi moderni, il nome della classe sotto forma di testo, e confronta gli input con tali descrizioni in uno spazio di embedding condiviso. L'apprendimento supervisionato standard può predire solo le classi presenti nelle etichette di addestramento; per aggiungere una categoria occorre quindi raccogliere e etichettare nuovi dati e riaddestrare il modello. Un modello zero-shot aggiunge una categoria semplicemente aggiungendone il nome. CLIP di OpenAI, addestrato su 400 milioni di coppie immagine-didascalia, ha raggiunto l'accuratezza di ImageNet del ResNet-50 supervisionato originale senza usare nessuna delle 1,28 milioni di immagini di addestramento di ImageNet etichettate.

Come funziona l'apprendimento zero-shot#

L'apprendimento zero-shot trasferisce conoscenze attraverso uno spazio semantico che collega le classi viste e quelle non viste. I primi metodi descrivevano ogni classe con attributi definiti da persone, come "a strisce", "ha gli zoccoli" e "vive nelle praterie", e addestravano i modelli a predire tali attributi; così era possibile riconoscere un animale mai visto durante l'addestramento come la classe i cui attributi corrispondevano. I modelli visione-linguaggio hanno sostituito gli attributi costruiti manualmente con il linguaggio naturale. CLIP addestra un encoder di immagini e un encoder di testo con apprendimento contrastivo, in modo che immagini e didascalie corrispondenti ottengano embedding simili. Per classificare, il modello calcola l'embedding di un prompt per ogni classe candidata, come "una foto di una zebra", calcola quello dell'immagine e seleziona la classe con la similarità coseno più alta:

Poiché il classificatore viene creato dal testo al momento dell'inferenza, l'elenco delle classi può cambiare a ogni richiesta. Lo stesso schema si applica ai modelli linguistici di grandi dimensioni (LLM): il prompting zero-shot consiste nel fornire al modello solo un'istruzione, senza esempi svolti, come definito nell'articolo GPT-3.

Rilevamento di oggetti zero-shot#

I rilevatori a vocabolario aperto estendono l'apprendimento zero-shot dalle immagini intere ai singoli oggetti. Assegnano un punteggio a ogni regione candidata confrontandola con gli embedding testuali delle classi richieste, così possono trovare oggetti al di fuori di qualsiasi insieme fisso di etichette, come un prodotto specifico in un archivio video. YOLO-World applica questo approccio ai modelli YOLO in tempo reale. YOLOE-26 di Ultralytics, una versione a vocabolario aperto di YOLO26, codifica ogni nome di classe passato a set_classes() con un encoder di testo MobileCLIP2 e restituisce riquadri e maschere di segmentazione delle istanze per quelle classi senza riaddestramento:

from ultralytics import YOLOE

# Checkpoint YOLOE-26 che accetta prompt testuali
model = YOLOE("yoloe-26s-seg.pt")

# Specifica le classi al momento dell'inferenza, qui usando parole che non sono etichette COCO
model.set_classes(["city bus", "sneakers", "glasses"])

# Rileva e segmenta le classi indicate
results = model.predict("https://ultralytics.com/images/bus.jpg")
result = results[0]
result.save(filename="zero_shot_result.jpg")

La prima chiamata a set_classes() scarica l'encoder testuale. Nel rilevamento degli oggetti, "zero-shot" significa che il modello non ha ricevuto riquadri etichettati per una classe, anche se il nome della classe potrebbe essere comparso nei dati immagine-testo usati per preaddestrare i suoi encoder. Ultralytics Platform annota automaticamente i dataset di rilevamento con rilevatori zero-shot e modelli visione-linguaggio, e la classifica VLM confronta la precisione con cui ciascuno individua gli oggetti nelle immagini del mondo reale.

Applicazioni#

  • Ricerca visiva e moderazione: Le librerie multimediali e le piattaforme di contenuti trovano immagini corrispondenti a una query testuale o segnalano nuove categorie di contenuti senza addestrare un classificatore per ogni query.
  • Robotica: Un robot a cui viene chiesto di prendere "la tazza blu" può individuare una categoria di oggetti che non è mai stato addestrato a rilevare.
  • Fauna selvatica e biodiversità: BioCLIP, addestrato su oltre 10 milioni di immagini che coprono l'albero della vita, classifica le specie zero-shot in base ai loro nomi e ha vinto il premio per il miglior articolo studentesco a CVPR 2024.
  • Diagnostica per immagini: I modelli addestrati su radiografie abbinate ai relativi referti radiologici possono segnalare reperti mai annotati come etichette di addestramento esplicite.

Sfide#

L'accuratezza zero-shot è in genere inferiore a quella di un modello addestrato su esempi etichettati delle stesse classi, soprattutto per categorie specialistiche o molto dettagliate i cui nomi sono rari nei testi sul web. Nell'apprendimento zero-shot generalizzato, in cui le immagini di test possono appartenere sia a classi viste sia a classi non viste, i modelli tendono a favorire le classi su cui sono stati addestrati; gli studi sui benchmark hanno rilevato che in questo contesto l'accuratezza sulle classi non viste cala nettamente. Anche i risultati dipendono dalla formulazione, perciò l'ingegneria dei prompt rientra nella classificazione zero-shot: l'accuratezza di CLIP su ImageNet è aumentata dell'1,3% sostituendo il semplice nome della classe con il prompt "una foto di {label}."

  • Apprendimento few-shot: Apprende nuove classi da pochi esempi etichettati per classe, in genere da 1 a 10. Nell'apprendimento zero-shot non ci sono esempi, ma solo una descrizione.
  • Apprendimento one-shot: Caso di apprendimento few-shot con esattamente un esempio etichettato per classe, spesso confrontato tramite similarità degli embedding.
  • Transfer learning: Riutilizza un modello preaddestrato per un nuovo compito, di solito perfezionandolo su dati etichettati. L'apprendimento zero-shot trasferisce conoscenze attraverso lo spazio condiviso testo-immagine senza ulteriore addestramento.
  • Prompting visivo: Specifica l'obiettivo con un'immagine o un riquadro di esempio invece che con parole, utile per oggetti difficili da nominare, come una parte specifica o un logo.

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