Organizzazione dei dati non strutturati

'Unstructured data organization.'

I database vettoriali sono efficienti per condurre ricerche di similarità e sono scalabili e flessibili, ma i vettori ad alta dimensionalità possono essere computazionalmente costosi, secondo Huaping Gu di Apple. ¶ Credit: TimeStopper/Getty

L’azienda di database vettoriali Pinecone ha ottenuto a aprile 100 milioni di dollari di finanziamento da venture capital (VC) in una valutazione di 750 milioni di dollari. Altre startup di database vettoriali hanno recentemente raccolto milioni di dollari da VC, tra cui Chroma, Weviate e Qdrant. Questo solleva la domanda: cosa sono esattamente i database vettoriali e perché stanno generando interesse ora?

Circa l’80% – 90% dei dati di qualsiasi organizzazione è non strutturato, secondo le stime degli analisti, e i database hanno subito molte iterazioni, dai database Structured Query Language/SQL (in cui i dati sono strutturati in una raccolta di tabelle) e i database relazionali (che si concentrano sulla relazione tra gli elementi dati archiviati) ai database NoSQL (in cui i dati sono archiviati e recuperati in diverse strutture senza utilizzare righe e colonne). NoSQL è stato innescato dall’avvento di Web 2.0 nei primi anni 2000.

Quei database tradizionali non erano adeguatamente attrezzati per analizzare i dati non strutturati, specialmente in tempo reale. Ora, con l’intelligenza artificiale (AI) che guadagna slancio, i database vettoriali sono emersi per l’uso in applicazioni di apprendimento automatico. Un vettore è un array di dati ad alta dimensionalità in cui ogni dimensione è un numero.

Charles Xie, CEO e fondatore dell’azienda di database vettoriali Zilliz e del progetto Milvus della Linux Foundation, spiega: “I vettori sono importanti perché quando si parla di immagini o video, sono la rappresentazione numerica di dati non strutturati che possono essere facilmente elaborati da una macchina”.

Questo è dove l’uso di modelli di apprendimento automatico per trasformare i dati non strutturati in valori in virgola mobile, o embedding vettoriali, è fondamentale. Al contrario, quelle immagini, foto e video non strutturati richiedono tempo e sono una sfida per classificare manualmente nei database relazionali. Ad esempio, per etichettare il famoso dataset ImageNet ci sono volute 25.000 persone (curatori), dice Xie.

Una volta che i dati sono in formato leggibile dalla macchina, i database relazionali archiviano e cercano dati strutturati basati su tabelle, dice Xie. Tuttavia, a differenza dei dati strutturati, non c’è un modo facile per archiviare ed effettuare ricerche efficienti su grandi quantità di dati non strutturati all’interno di un database relazionale.

Ad esempio, cercare rapidamente scarpe simili, date una collezione di immagini di scarpe da diverse angolazioni, sarebbe impossibile in un database relazionale poiché capire la taglia, lo stile, il tipo di tacco, il colore, ecc., solo dai valori di pixel grezzi dell’immagine è difficile, osserva Chris Churilo, vicepresidente del marketing di Zilliz. “Quindi vogliamo rivolgerci a una macchina per farlo per noi”, usando modelli “che produrranno una rappresentazione numerica di questo contenuto” che sono embedding o vettori, dice. “La cosa interessante di avere questa rappresentazione numerica è che ora posso chiedere alla macchina di trovare [qualcosa] di simile confrontando questi numeri tra loro”. La macchina può farlo abbastanza accuratamente, dice Churilo.

I database vettoriali sono comunemente utilizzati per la ricerca di similarità e le raccomandazioni di prodotti, concorda Arun Chandrasekaran, vicepresidente distintivo e analista per la società di ricerca di mercato Gartner.

“Un database vettoriale indicizza e archivia embedding vettoriali per un rapido recupero”, afferma Chandrasekaran. L’uso crescente di modelli fondamentali di AI sta suscitando un maggiore interesse per i database vettoriali, afferma. Man mano che i clienti mettono a punto modelli AI generativi, archivieranno e recupereranno quei dati organizzativi in database vettoriali.

Nell’AI generativa, un database vettoriale può essere utilizzato per archiviare gli embedding vettoriali che derivano dalla formazione dei modelli fondamentali di AI, aggiunge Chandrasekaran.

“Il database vettoriale è il nome caldo per un vecchio argomento”, osserva Andy Pavlo, professore associato di databaseologia presso l’Università Carnegie Mellon, la cui area di ricerca sono i sistemi di gestione dei database. “Si tratta di stare al passo con l’AI”.

Riecheggiando gli altri, Pavlo afferma che ChatGPT e l’apprendimento automatico stanno archiviando vettori e i database vettoriali archiviano quegli embedding in modo che gli utenti possano usarli per una rapida ricerca.

I database vettoriali sono efficienti per condurre ricerche di similarità e sono scalabili e flessibili, scrive Huaping Gu, ingegnere software di dati di Apple. Tuttavia, ci sono anche alcuni svantaggi nell’usarli. I vettori ad alta dimensionalità possono essere computazionalmente costosi. Possono anche essere difficili da visualizzare e interpretare, il che rende difficile il debug o il perfezionamento dei modelli AI/ML, secondo Gu.

I database vettoriali non restituiscono risultati di ricerca perfetti. “Alla fine della giornata, quello che stanno facendo è costruire indici per fare una ricerca del vicinato più vicino, e l’idea è che hai uno spazio multidimensionale che rappresenta i tuoi vettori”, dice Pavlo. “Quando fai la query e la converti in un embedding in un vettore, non atterrerà su una corrispondenza esatta”.

Al momento, “I casi d’uso per i database vettoriali sono abbastanza limitati per la maggior parte dei clienti aziendali”, osserva Chandrasekaran. Tuttavia, ci si aspetta di vederne un aumento dell’uso. Stanno “acquistando immensa popolarità per le applicazioni di IA generative”, dice, aggiungendo che “questo è un ecosistema nascente ma in rapida evoluzione”.

Esther Shein è una scrittrice freelance di tecnologia e business con sede nell’area di Boston.