Cliccando su “Accetta tutti i cookie”, l'utente accetta di memorizzare i cookie sul proprio dispositivo per migliorare la navigazione del sito, analizzare l'utilizzo del sito e assistere le nostre attività di marketing. Maggiori informazioni
Impostazioni dei cookie
Cliccando su “Accetta tutti i cookie”, l'utente accetta di memorizzare i cookie sul proprio dispositivo per migliorare la navigazione del sito, analizzare l'utilizzo del sito e assistere le nostre attività di marketing. Maggiori informazioni
Scopri Florence-2, il modello di linguaggio visivo di Microsoft che offre prestazioni superiori in termini di object detection, segmentazione e zero-shot, con grande efficienza.
A giugno 2024, Microsoft ha presentato Florence-2, un modello linguistico visivo (VLM) multimodale progettato per gestire un'ampia gamma di attività, tra cui object detection, segmentazione, didascalie di immagini e grounding. Florence-2 stabilisce un nuovo punto di riferimento per le prestazioni zero-shot, il che significa che può eseguire attività senza una specifica formazione preliminare, e vanta una dimensione del modello più piccola rispetto ad altri modelli di visione-linguaggio all'avanguardia.
È più di un semplice modello, la versatilità e le prestazioni migliorate di Florence-2 hanno il potenziale per avere un impatto significativo su vari settori, migliorando l'accuratezza e riducendo la necessità di un training estensivo. In questo articolo, esploreremo le caratteristiche innovative di Florence-2, confronteremo le sue prestazioni con altri VLM e discuteremo le sue potenziali applicazioni.
Cos'è Florence-2?
Florence-2 è in grado di gestire una varietà di attività all'interno di un unico framework unificato. Le impressionanti capacità del modello sono in parte dovute al suo enorme dataset di training chiamato FLD-5B. FLD-5B include 5,4 miliardi di annotazioni su 126 milioni di immagini. Questo dataset completo è stato creato appositamente per consentire a Florence-2 di gestire un'ampia gamma di attività di visione con elevata precisione ed efficienza.
Ecco uno sguardo più da vicino alle attività supportate da Florence-2:
Il modello supporta sia task basati su testo che su regioni. Token di posizione speciali vengono aggiunti al vocabolario del modello per i task che coinvolgono regioni specifiche di un'immagine. Questi token aiutano il modello a comprendere diverse forme, come rettangoli attorno agli oggetti (rappresentazione a riquadro), forme a quattro lati (rappresentazione a riquadro quadrilatero) e forme a molti lati (rappresentazione a poligono). Il modello viene addestrato utilizzando un metodo chiamato cross-entropy loss, che lo aiuta ad apprendere confrontando le sue previsioni con le risposte corrette e regolando di conseguenza i suoi parametri interni.
Creazione del dataset FLD-5B
Il dataset FLD-5B include diversi tipi di annotazioni: descrizioni testuali, coppie di regioni e testo e combinazioni di testo, frasi e regioni. È stato creato attraverso un processo in due fasi che coinvolge la raccolta e l'annotazione dei dati. Le immagini provengono da dataset popolari come ImageNet-22k, Object 365, Open Images, Conceptual Captions e LAION. Le annotazioni nel dataset FLD-5B sono per lo più sintetiche, il che significa che sono state generate automaticamente piuttosto che etichettate manualmente.
Inizialmente, modelli specialistici esperti in compiti specifici, come il rilevamento di oggetti o la segmentazione, creavano queste annotazioni. Successivamente, veniva utilizzato un processo di filtraggio e miglioramento per garantire che le annotazioni fossero dettagliate e accurate. Dopo aver rimosso qualsiasi rumore, il set di dati è stato sottoposto a un perfezionamento iterativo, in cui gli output di Florence-2 sono stati utilizzati per aggiornare e migliorare continuamente le annotazioni.
Comprendere l'architettura del modello Florence-2
L'architettura del modello di Florence-2 segue un approccio di apprendimento sequence-to-sequence. Ciò significa che il modello elabora una sequenza di input (come un'immagine con un prompt di testo) e genera una sequenza di output (come una descrizione o un'etichetta) passo dopo passo. Nel framework sequence-to-sequence, ogni attività viene trattata come un problema di traduzione: il modello prende un'immagine di input e un prompt specifico per l'attività e genera l'output corrispondente.
Fig 3. Architettura del modello Vision-Language di Florence-2.
Al centro dell'architettura del modello c'è un trasformatore encoder-decoder multimodale, che combina un encoder di immagini e un encoder-decoder multimodale. L'encoder di immagini, chiamato DaViT (Data-efficient Vision Transformer), elabora le immagini di input convertendole in embedding di token visivi: rappresentazioni compatte dell'immagine che catturano sia informazioni spaziali (dove si trovano le cose) che semantiche (cosa sono le cose). Questi token visivi vengono quindi combinati con gli embedding di testo (rappresentazioni del testo), consentendo al modello di unire senza problemi dati testuali e visivi.
Confronto tra Florence-2 e altri VLM
Florence-2 si distingue dagli altri modelli di linguaggio visivo grazie alle sue impressionanti capacità zero-shot. A differenza di modelli come PaliGemma, che si basano su un ampio fine-tuning per adattarsi a varie attività, Florence-2 funziona bene fin da subito. Inoltre, Florence-2 è in grado di competere con modelli più grandi come GPT-4V e Flamingo, che spesso hanno molti più parametri ma non sempre eguagliano le prestazioni di Florence-2. Ad esempio, Florence-2 ottiene risultati zero-shot migliori di Kosmos-2, nonostante Kosmos-2 abbia più del doppio dei parametri.
Nei test di benchmark, Florence-2 ha dimostrato prestazioni notevoli in attività come la didascalia di immagini COCO e la comprensione di espressioni di riferimento. Ha superato modelli come PolyFormer e UNINEXT in attività di object detection e segmentazione sul dataset COCO. È una scelta altamente competitiva per applicazioni reali in cui sia le prestazioni che l'efficienza delle risorse sono cruciali.
Applicazioni di Florence-2
Florence-2 può essere utilizzato in molti settori diversi, come l'intrattenimento, l'accessibilità, l'istruzione, ecc. Analizziamo alcuni esempi per avere una migliore comprensione.
Applicazioni del captioning di immagini
Quando sei su una piattaforma di streaming e cerchi di decidere cosa guardare, potresti leggere un riassunto di un film per aiutarti a scegliere. E se la piattaforma potesse anche fornire una descrizione dettagliata del poster del film? Florence-2 può renderlo possibile attraverso la didascalia delle immagini, che genera testo descrittivo per le immagini. Florence-2 può generare descrizioni dettagliate dei poster dei film, rendendo le piattaforme di streaming più inclusive per gli utenti con problemi di vista. Analizzando gli elementi visivi di un poster, come personaggi, scenari e testo, Florence-2 può creare descrizioni dettagliate che trasmettono il contenuto e l'atmosfera del poster. L'immagine qui sotto mostra il livello di dettaglio che Florence-2 può fornire nella sua descrizione.
Fig. 4. Un esempio di didascalia di immagine generata da Florence-2.
Ecco alcuni altri esempi di dove la didascalia delle immagini può essere utile:
E-commerce: La didascalia automatica delle immagini può fornire descrizioni dettagliate delle immagini dei prodotti, aiutando i clienti a comprendere più chiaramente le caratteristiche e i dettagli del prodotto. 
Istruzione: La didascalia automatica delle immagini può etichettare e descrivere immagini e diagrammi didattici, aiutando nell'insegnamento e nell'apprendimento. 
Immobiliare: Può fornire descrizioni dettagliate delle immagini di proprietà che evidenziano le caratteristiche e i servizi per i potenziali acquirenti.
Utilizzo del visual grounding mentre si cucina
Florence-2 può essere utilizzato anche per arricchire le esperienze culinarie. Ad esempio, un libro di cucina online potrebbe utilizzare Florence-2 per ancorare visivamente ed etichettare le parti di un'immagine complessa di una ricetta. L'ancoraggio visivo aiuta in questo caso collegando parti specifiche dell'immagine al testo descrittivo corrispondente. Ogni ingrediente e passaggio può essere etichettato e spiegato accuratamente, rendendo più facile per i cuochi casalinghi seguire la ricetta e capire il ruolo di ogni componente nel piatto.
Fig 5. Un esempio di visual grounding che utilizza Florence-2.
OCR basato sulla regione per documenti finanziari
L'OCR con elaborazione basata sulla regione, che si concentra sull'estrazione di testo da aree specifiche all'interno di un documento, può essere utile in settori come la contabilità. Aree designate di documenti finanziari possono essere analizzate per estrarre automaticamente informazioni importanti come i dettagli delle transazioni, i numeri di conto e le date di scadenza. Riducendo la necessità di inserimento manuale dei dati, si riducono al minimo gli errori e si accelerano i tempi di elaborazione. Gli istituti finanziari possono utilizzarlo per semplificare attività come l'elaborazione delle fatture, la riconciliazione delle ricevute e la compensazione degli assegni, portando a transazioni più veloci e a un migliore servizio clienti.
Fig 6. Un esempio di estrazione di OCR con regione utilizzando Florence-2.
Segmentazione basata sulla regione in applicazioni industriali
La segmentazione basata sulla regione, che implica la divisione di un'immagine in parti significative per un'analisi mirata e un'ispezione dettagliata, può alimentare applicazioni industriali che migliorano la precisione e l'efficienza in vari processi. Concentrandosi su aree specifiche all'interno di un'immagine, questa tecnologia consente un'ispezione e un'analisi dettagliata di componenti e prodotti. Per quanto riguarda il controllo qualità, può identificare difetti o incongruenze nei materiali, come crepe o disallineamenti, garantendo che solo prodotti di alta qualità raggiungano il mercato.
Fig 7. Un esempio di segmentazione basata su regioni che utilizza Florence-2.
Inoltre, migliora le linee di assemblaggio automatizzate guidando i bracci robotici verso parti specifiche e ottimizzando il posizionamento e l'assemblaggio dei componenti. Allo stesso modo, nella gestione dell'inventario, aiuta a tracciare e monitorare le condizioni e l'ubicazione delle merci, portando a una logistica più efficiente e a tempi di inattività ridotti. Nel complesso, la segmentazione basata sulla regione aumenta l'accuratezza e la produttività, portando a risparmi sui costi e a una maggiore qualità del prodotto in ambito industriale.
Punti chiave
Stiamo iniziando a vedere una tendenza in cui i modelli di AI stanno diventando più leggeri pur mantenendo alte prestazioni. Florence-2 segna un importante passo avanti in termini di modelli di linguaggio visivo. Può gestire varie attività come object detection, segmentazione, image captioning e grounding con impressionanti prestazioni zero-shot. Nonostante le sue dimensioni ridotte, Florence-2 è efficiente e multifunzionale, il che lo rende estremamente utile in termini di applicazioni in diversi settori. Modelli come Florence-2 stanno portando più possibilità sul tavolo, espandendo il potenziale per le innovazioni dell'AI.