Modelli e piattaforme di IA
Confronto delle tecniche di quantizzazione per la ricerca vettoriale scalabile
Immagina di cercare cose simili in base a intuizioni più profonde invece di solo parole chiave. È questo che aiutano a fare i database vettoriali e le ricerche di similarità. I database vettoriali abilitano la ricerca di similarità vettoriale. Utilizza la distanza tra vettori per trovare punti di dati nelle query di ricerca.
Tuttavia, la ricerca di similarità nei dati ad alta dimensionalità può essere lenta e intensiva in termini di risorse. Entra in scena la quantizzazione! Gioca un ruolo importante nell’ottimizzazione dell’archiviazione dei dati e nell’accelerazione del recupero dei dati nei database vettoriali.
Questo articolo esplora varie tecniche di quantizzazione, i loro tipi e casi d’uso nel mondo reale.
Cosa è la quantizzazione e come funziona?
La quantizzazione è il processo di conversione di dati continui in punti di dati discreti. Soprattutto quando si lavora con parametri su scala miliardaria, la quantizzazione è essenziale per la gestione e l’elaborazione. Nei database vettoriali, la quantizzazione trasforma dati ad alta dimensionalità in uno spazio compresso conservando caratteristiche e distanze vettoriali importanti.
La quantizzazione riduce notevolmente i collo di bottiglia della memoria e migliora l’efficienza di archiviazione.
Il processo di quantizzazione include tre processi chiave:
1. Compressione dei vettori ad alta dimensionalità
Nella quantizzazione, utilizziamo tecniche come la generazione di codebook, l’ingegneria delle caratteristiche e la codifica. Queste tecniche comprimono le rappresentazioni vettoriali ad alta dimensionalità in un sottospazio a bassa dimensionalità. In altre parole, il vettore viene suddiviso in numerosi sottovettori. Le rappresentazioni vettoriali sono rappresentazioni numeriche di dati audio, immagini, video, testo o segnali, che consentono un’elaborazione più semplice.
2. Mappatura su valori discreti
Questo passaggio comporta la mappatura dei sottovettori a bassa dimensionalità su valori discreti. La mappatura riduce ulteriormente il numero di bit di ogni sottovettore.
3. Archiviazione dei vettori compressi
Infine, i valori discreti mappati dei sottovettori vengono archiviati nel database per il vettore originale. I dati compressi che rappresentano le stesse informazioni in meno bit ottimizzano l’archiviazione.
Vantaggi della quantizzazione per i database vettoriali
La quantizzazione offre una serie di vantaggi, che si traducono in una migliore computazione e in una riduzione dell’impronta di memoria.
1. Ricerca vettoriale scalabile efficiente
La quantizzazione ottimizza la ricerca vettoriale riducendo il costo computazionale della comparazione. Pertanto, la ricerca vettoriale richiede meno risorse, migliorando l’efficienza complessiva.
2. Ottimizzazione della memoria
I vettori quantizzati consentono di archiviare più dati nello stesso spazio. Inoltre, l’indicizzazione dei dati e la ricerca sono anche ottimizzate.
3. Velocità
Con un’archiviazione e un recupero efficienti, si ottiene una computazione più rapida. Le dimensioni ridotte consentono un’elaborazione più rapida, compresa la manipolazione dei dati, la query e le previsioni.
Alcuni database vettoriali popolari come Qdrant, Pinecone e Milvus offrono varie tecniche di quantizzazione con diversi casi d’uso.
Casi d’uso
La capacità della quantizzazione di ridurre le dimensioni dei dati conservando informazioni significative la rende uno strumento utile.
Esaminiamo alcuni dei suoi applicazioni.
1. Elaborazione di immagini e video
I dati delle immagini e dei video hanno un’ampia gamma di parametri, aumentando notevolmente la complessità computazionale e l’impronta di memoria. La quantizzazione comprime i dati senza perdere dettagli importanti, consentendo un’archiviazione e un’elaborazione efficienti. Ciò accelera le ricerche di immagini e video.
2. Compressione dei modelli di apprendimento automatico
L’addestramento di modelli AI su grandi set di dati è un’attività intensiva. La quantizzazione aiuta riducendo le dimensioni e la complessità del modello senza compromettere l’efficienza.
3. Elaborazione dei segnali
I dati dei segnali rappresentano punti di dati continui come i dati GPS o le riprese di sorveglianza. La quantizzazione mappa i dati in valori discreti, consentendo un’archiviazione e un’analisi più rapide. Inoltre, l’archiviazione e l’analisi efficienti accelerano le operazioni di ricerca, consentendo una comparazione dei segnali più rapida.
Diverse tecniche di quantizzazione
Sebbene la quantizzazione consenta una gestione senza problemi di parametri su scala miliardaria, rischia una perdita di informazioni irreversibile. Tuttavia, trovare il giusto equilibrio tra perdita di informazioni accettabile e compressione migliora l’efficienza.
Ogni tecnica di quantizzazione ha i suoi pro e contro. Prima di scegliere, è necessario capire i requisiti di compressione e le caratteristiche e i limiti di ogni tecnica.
1. Quantizzazione binaria
La quantizzazione binaria è un metodo che converte tutte le rappresentazioni vettoriali in 0 o 1. Se un valore è maggiore di 0, viene mappato su 1, altrimenti viene contrassegnato come 0. Pertanto, converte dati ad alta dimensionalità in dati a dimensionalità molto più bassa, consentendo una ricerca di similarità più rapida.
Formula
La formula è:

Formula di quantizzazione binaria. Immagine dell’autore.
Ecco un esempio di come funziona la quantizzazione binaria su un vettore.

Rappresentazione grafica della quantizzazione binaria. Immagine dell’autore.
Vantaggi
- Ricerca più rapida, superando sia la quantizzazione scalare che la quantizzazione del prodotto.
- Riduce l’impronta di memoria di un fattore 32.
Limitazioni
- Rapporto più alto di perdita di informazioni.
- I componenti del vettore richiedono una media approssimativamente uguale a zero.
- Scarsa prestazione sui dati a bassa dimensionalità a causa della maggiore perdita di informazioni.
- È richiesto un ripristino per ottenere i migliori risultati.
I database vettoriali come Qdrant e Weaviate offrono quantizzazione binaria.
2. Quantizzazione scalare
La quantizzazione scalare converte i numeri in virgola mobile o decimali in interi. Inizia con l’identificazione di un valore minimo e massimo per ogni dimensione. L’intervallo identificato viene quindi diviso in diversi bucket. Infine, ogni valore in ogni dimensione viene assegnato a un bucket.
Il livello di precisione o dettaglio nei vettori quantizzati dipende dal numero di bucket. Più bucket risultano in una maggiore accuratezza catturando dettagli più fini. Pertanto, l’accuratezza della ricerca vettoriale dipende anche dal numero di bucket.
Formula
La formula è:

Formula di quantizzazione scalare. Immagine dell’autore.
Ecco un esempio di come funziona la quantizzazione scalare su un vettore.

Rappresentazione grafica della quantizzazione scalare. Immagine dell’autore.
Vantaggi
- Ottimizzazione significativa della memoria.
- Perdita di informazioni ridotta.
- Processo parzialmente reversibile.
- Compressione rapida.
- Ricerca scalabile efficiente a causa della ridotta perdita di informazioni.
Limitazioni
- Leggero calo nella qualità della ricerca.
- I vettori a bassa dimensionalità sono più suscettibili alla perdita di informazioni, poiché ogni punto di dati trasporta informazioni importanti.
I database vettoriali come Qdrant e Milvus offrono quantizzazione scalare.
3. Quantizzazione del prodotto
La quantizzazione del prodotto divide i vettori in sottovettori. Per ogni sezione, vengono calcolati i punti centrali o centroidi utilizzando algoritmi di clustering. I centroidi più vicini rappresentano quindi ogni sottovettore.
La ricerca di similarità nella quantizzazione del prodotto funziona dividendo il vettore di ricerca nello stesso numero di sottovettori. Quindi, viene creata una lista di risultati simili in ordine crescente di distanza dal centroide di ogni sottovettore al sottovettore di query. Poiché il processo di ricerca vettoriale confronta la distanza dai sottovettori di query ai centroidi del vettore quantizzato, i risultati della ricerca sono meno precisi. Tuttavia, la quantizzazione del prodotto accelera il processo di ricerca di similarità e una maggiore accuratezza può essere ottenuta aumentando il numero di sottovettori.
Formula
La ricerca dei centroidi è un processo iterativo. Utilizza il ricordo della distanza euclidea tra ogni punto di dati e il suo centroide fino a raggiungere la convergenza. La formula della distanza euclidea nello spazio n-dimensionale è:

Formula di quantizzazione del prodotto. Immagine dell’autore.
Ecco un esempio di come funziona la quantizzazione del prodotto su un vettore.

Rappresentazione grafica della quantizzazione del prodotto. Immagine dell’autore.
Vantaggi
- Rapporto di compressione più alto.
- Migliore efficienza di archiviazione rispetto ad altre tecniche.
Limitazioni
- Non adatto per vettori a bassa dimensionalità.
- Compressione intensiva in termini di risorse.
I database vettoriali come Qdrant e Weaviate offrono quantizzazione del prodotto.
Scegliere il metodo di quantizzazione giusto
Ogni metodo di quantizzazione ha i suoi pro e contro. La scelta del metodo giusto dipende da fattori che includono, ma non sono limitati a:
- Dimensione dei dati
- Compromesso tra compressione e accuratezza
- Requisiti di efficienza
- Vincoli di risorse.
Considera la tabella di confronto seguente per capire meglio quale tecnica di quantizzazione si adatta al tuo caso d’uso. Questa tabella evidenzia fattori di accuratezza, velocità e compressione per ogni metodo di quantizzazione.

Immagine di Qdrant
Dall’ottimizzazione dell’archiviazione alla ricerca più rapida, la quantizzazione mitiga le sfide dell’archiviazione di parametri su scala miliardaria. Tuttavia, capire i requisiti e i compromessi in anticipo è cruciale per una implementazione di successo.
Per ulteriori informazioni sulle ultime tendenze e tecnologie, visita Unite AI.












