Utilizzare la ricerca vettoriale per comprendere meglio i dati di visione artificiale
Quanto possono essere dannosi i dati scadenti per la tua IA? Guardalo tu stesso:
Problemi di qualità dei dati
I dati scadenti possono sabotare la tua applicazione e i tuoi workflow basati sull’IA, con un impatto serio che va oltre un semplice utente frustrato, ma questo non sorprende.
Molti di noi hanno immaginato di sfruttare la comodità e la versatilità dei large language models multimodali (LLM) per attingere alle ricche informazioni contenute in immagini e video. Fare meraviglie, portarle al livello successivo, come recita il cliché. La computer vision offre quel tipo di opportunità illimitata per servizi nuovi e più appaganti. Ma lungo il percorso ci sono sfide.
Una fondamentale è come curare dati migliori per il modello giusto, così da ottenere risultati migliori. C’è molta messa a punto, tentativi ed errori brute force al buio a causa della complessità dei modelli e dell’elevata dimensionalità dei dati, sottraendo risorse all’innovazione.
E se potessimo portare trasparenza e chiarezza nei workflow di IA visiva, rendendoli rapidi e persino divertenti? Voxel51 l’ha assunta come missione e l’ha realizzata!
Come dimostrato da Jacob Marks, machine learning engineer e developer evangelist presso Voxel51 al SF Unstructured Data Meetup.
Rendere l’IA visiva una realtà
L’esplosione di nuove app e servizi alimentati da IA generativa e machine learning ha rivelato l’importanza di sfruttare i dati non strutturati e il ruolo dei database vettoriali come punto di svolta. Jacob Marks ha mostrato nella sua presentazione come l’integrazione dei database vettoriali con strumenti come Voxel51, e il suo progetto open source FiftyOne, stia rivoluzionando l’esplorazione, la visualizzazione e la cura dei dati visivi per costruire applicazioni basate sull’IA in modo più efficiente e più affidabile. Ti permette di testare e valutare i modelli fornendo loro i dataset esatti di cui hanno bisogno per garantire risultati robusti e accurati.
Tutto inizia dalla qualità dei dati
Perché? Perché dati migliori portano a modelli migliori, accelerando il percorso verso il successo.
“Nulla ostacola il successo dei sistemi di machine learning più dei dati di scarsa qualità", dice Jacob. Preparare i dati e trovare il modello giusto può richiedere molto tempo ed essere inefficiente senza gli strumenti giusti. Anche gli ingegneri ML esperti hanno bisogno di buoni strumenti per costruire dataset e modelli di alta qualità.
FiftyOne semplifica la gestione dei dati visivi, rendendo più facile e veloce comprendere operazioni, regolazioni e risultati.
Puoi visualizzare etichette complesse, valutare modelli, esplorare scenari di interesse, identificare modalità di errore e trovare errori di annotazione, tra le altre attività. Questo viene ottenuto tramite catene LLM in esecuzione in background, generando embedding e interrogando un database vettoriale.
Ora, andiamo al sodo!
Da RAG alla ricchezza: la potenza della ricerca vettoriale
RAG è uno dei motivi che hanno reso popolari i database vettoriali.
La Retrieval-Augmented Generation (RAG) ha reso popolare la ricerca vettoriale migliorando l’accuratezza dei large language models. Combina modelli basati sul recupero e modelli generativi per migliorare la qualità e la pertinenza del testo generato.
Questa tecnica usa LLM per convertire il prompt dell’utente in embedding e confrontarli con gli embedding vettoriali, consentendo la ricerca per similarità semantica per risposte più accurate e ricche di contesto.
RAG
Puoi confrontare più vettori per somiglianza rispetto agli input di dati. Quindi, se prendi due input testuali, li vettorizzi e li incorpori, puoi osservarne la vicinanza, indipendentemente dalle metriche utilizzate: distanza euclidea, similarità coseno o prodotto scalare.
Similarità vettoriale
Puoi anche avere embedding multimodali per gestire insieme diversi tipi di dati, come testi, immagini e video nello stesso tipo di spazio.
Vector embeddings
Ricerca vettoriale per la computer vision
Voxel51 ha integrato Milvus utilizzando Zilliz Cloud per liberare le capacità di ricerca vettoriale sui dataset visivi. Ecco alcuni potenti casi d’uso:
Somiglianza delle immagini: La ricerca per similarità è un caso d’uso comune ed è resa ancora più semplice con Voxel51.
Basta selezionare l’immagine che ti interessa dal tuo dataset e usarla per cercarne di simili. Tutti i passaggi di embedding e query vengono eseguiti dietro le quinte. Mantenendo l’esperienza visiva molto intuitiva e cliccabile. Ad esempio, puoi definire gli attributi come la metrica e il valore k selezionandoli nella GUI.
Image similarity search
Con la stessa facilità, puoi anche eseguire una ricerca inversa usando un’immagine esterna.
Supponiamo che tu voglia scoprire se nel tuo dataset visivo è presente un cane corso. Basta fornire l’URI dell’immagine: verrà automaticamente vettorializzata e interrogata per similarità rispetto al dataset visivo nello spazio vettoriale.
Reverse image search
Ricerca di oggetti: Oltre alle immagini intere, i database vettoriali possono gestire patch di rilevamento degli oggetti, consentendo ricerche più precise all’interno di sotto-immagini. Questo è utile per attività come il riconoscimento facciale o l’identificazione di oggetti all’interno di grandi dataset.
Object similarity search
Poiché l’oggetto al centro della ricerca molto probabilmente non è l’intera immagine, calcolare gli embedding per l’intera immagine potrebbe essere meno efficace perché non sarà sempre simile agli embedding dell’oggetto.
Ricerca OCR: Un altro caso d’uso è il documento interattivo di Optical Character Recognition (OCR). Puoi interagire visivamente con gli embedding testuali. Puoi vedere da dove provengono questi risultati in ciascuna delle pagine dei tuoi documenti.
Robust OCR document search
Recupero cross-modale: Strumenti come CLIP di OpenAI e ImageBind di Meta consentono la combinazione di embedding di testo e immagini. Questo abilita il recupero cross-modale, in cui gli utenti possono cercare immagini usando embedding di descrizioni testuali, embedding audio, ecc., o viceversa. Nel suo esempio, una clip audio di un treno è stata incorporata e poi confrontata con tutte le immagini per trovare treni nel dataset.
Cross-modal retrieval
Similarità percettiva: La similarità percettiva ci permette di capire come diversi modelli percepiscono il mondo confrontando le rappresentazioni dei modelli nello spazio vettoriale. Alcuni modelli sono molto semantici, catturano dettagli e concetti di alto livello ma non la palette dell’immagine a livello di pixel, come nell’immagine qui sotto:
Probing perceptual similarity
La computer vision più tradizionale implementata con reti neurali computazionali acquisisce ogni pixel e patch, ma non coglie correttamente alcun significato, come puoi vedere nell’immagine qui sotto.
Probing perceptual similarity-2
Puoi confrontare le rappresentazioni dei modelli nello spazio vettoriale osservando la distribuzione dei risultati nello spazio vettoriale. Alcuni modelli hanno i risultati raggruppati insieme, mentre altri potrebbero non averli. Vedono il mondo in modo diverso e capire quando applicare queste diverse prospettive è fondamentale per la qualità della tua IA.
C’è altra innovazione in arrivo nella ricerca vettoriale visiva
Interpolazione dei concetti: L’interpolazione dei concetti prende due concetti testuali e interpola i risultati tra di essi. Nell’esempio, gli embedding iniziali per un husky e un chihuahua sono stati forniti per cercare qualsiasi cosa potesse collocarsi tra loro, incluso un gatto!
interpolazione concettuale
Attraversamento dello spazio concettuale: con l'attraversamento dello spazio concettuale, gli utenti possono combinare e manipolare gli embedding per regolare gli attributi nello spazio dei possibili embedding, come nell'esempio, in cui gli attributi di salubrità e vivacità dei colori vengono regolati nella ricerca.
Attraversamento dello spazio concettuale
Dietro le quinte accadono molte cose per fare in modo che la ricerca combini embedding per testo, immagini e altre modalità con gli attributi corretti al livello desiderato, così da rendere lo spazio di ricerca più dinamicamente esplorabile, e tutto ciò che ti resta da fare è cliccare o scorrere fino alla tua selezione. Così semplice!
Conclusione
I database vettoriali sono indispensabili nella computer vision, offrendo un potente motore agli strumenti per dataset visivi per l'esplorazione dei dati, la valutazione dei modelli e la ricerca innovativa tramite embedding multimodali, interpolazione concettuale e attraversamento. Man mano che l'IA continua a evolversi, l'integrazione dei database vettoriali svolgerà un ruolo cruciale nel plasmare il futuro delle tecnologie basate su dati non strutturati.
Il cielo è limitato, come dice Jacob. Mettiti alla prova e divertiti con l'IA visiva alimentata da un database vettoriale con questo pratico tutorial.
Se desideri saperne di più o iniziare il tuo progetto di computer vision, ad esempio, sei il benvenuto nel nostro canale Discord. Forniamo una vasta gamma di risorse e una community di supporto per aiutarti a iniziare.
Continua a leggere

Top 10 Context Engineering Techniques You Should Know for Production RAG
A practical guide to context engineering for production LLM systems, covering RAG, context processing, memory, agents, and multimodal context.

Optimizing Embedding Model Selection with TDA Clustering: A Strategic Guide for Vector Databases
Discover how Topological Data Analysis (TDA) reveals hidden embedding model weaknesses and helps optimize vector database performance.

Vector Databases vs. Graph Databases
Use a vector database for AI-powered similarity search; use a graph database for complex relationship-based queries and network analysis.



