Künstliche Intelligenz
Vergleich von Quantisierungstechniken für skalierbare Vektorsuche
Stellen Sie sich vor, Sie suchen nach ähnlichen Dingen basierend auf tieferen Einblicken anstelle von nur Schlüsselwörtern. Das ist es, was Vektordatenbanken und Ähnlichkeitssuchen ermöglichen. Vektordatenbanken ermöglichen die Vektorsimilaritätssuche. Sie verwendet den Abstand zwischen Vektoren, um Datenpunkte in Suchanfragen zu finden.
Die Ähnlichkeitssuche in hochdimensionalen Daten kann jedoch langsam und ressourcenintensiv sein. Hier kommen die Quantisierungstechniken ins Spiel! Sie spielen eine wichtige Rolle bei der Optimierung der Datenspeicherung und der Beschleunigung der Datenabrufung in Vektordatenbanken.
Dieser Artikel erforscht verschiedene Quantisierungstechniken, ihre Arten und reale Anwendungsfälle.
Was ist Quantisierung und wie funktioniert sie?
Quantisierung ist der Prozess der Umwandlung von kontinuierlichen Daten in diskrete Datenpunkte. Insbesondere wenn Sie mit billionenschkaligen Parametern arbeiten, ist Quantisierung unerlässlich für die Verwaltung und Verarbeitung. In Vektordatenbanken transformiert die Quantisierung hochdimensionale Daten in einen komprimierten Raum, während wichtige Merkmale und Vektorenabstände erhalten bleiben.
Quantisierung reduziert die Speicherengpässe erheblich und verbessert die Speichereffizienz.
Der Quantisierungsprozess umfasst drei wichtige Schritte:
1. Komprimierung von hochdimensionalen Vektoren
Bei der Quantisierung werden Techniken wie Codebook-Generierung, Feature-Engineering und Codierung verwendet. Diese Techniken komprimieren hochdimensionale Vektor-Einbettungen in einen niedrigdimensionalen Unterraum. Mit anderen Worten wird der Vektor in zahlreiche Subvektoren aufgeteilt. Vektor-Einbettungen sind numerische Darstellungen von Audio-, Bild-, Video-, Text- oder Signal-Daten, die eine einfachere Verarbeitung ermöglichen.
2. Abbildung auf diskrete Werte
Dieser Schritt umfasst die Abbildung der niedrigdimensionalen Subvektoren auf diskrete Werte. Die Abbildung reduziert die Anzahl der Bits jedes Subvektors weiter.
3. Komprimierte Vektorspeicherung
Schließlich werden die abgebildeten diskreten Werte der Subvektoren in der Datenbank für den ursprünglichen Vektor gespeichert. Die komprimierten Daten, die dieselbe Information in weniger Bits darstellen, optimieren die Speicherung.
Vorteile der Quantisierung für Vektordatenbanken
Quantisierung bietet eine Reihe von Vorteilen, die zu verbesserter Rechenleistung und reduziertem Speicherbedarf führen.
1. Effiziente skalierbare Vektorsuche
Quantisierung optimiert die Vektorsuche, indem sie die Vergleichsrechenkosten reduziert. Daher benötigt die Vektorsuche weniger Ressourcen, was die Gesamteffizienz verbessert.
2. Speicheroptimierung
Quantisierung ermöglicht es, mehr Daten im gleichen Speicherplatz zu speichern. Darüber hinaus sind auch die Datenindizierung und die Suche optimiert.
3. Geschwindigkeit
Mit effizienter Speicherung und Abrufung kommt es zu schnellerer Rechenleistung. Die reduzierten Dimensionen ermöglichen schnelleres Verarbeiten, einschließlich Datenmanipulation, Abfrage und Vorhersage.
Einige beliebte Vektordatenbanken wie Qdrant, Pinecone und Milvus bieten verschiedene Quantisierungstechniken mit unterschiedlichen Anwendungsfällen.
Anwendungsfälle
Die Fähigkeit der Quantisierung, die Datengröße zu reduzieren, während wichtige Informationen erhalten bleiben, macht sie zu einem nützlichen Werkzeug.
Lassen Sie uns einige ihrer Anwendungen genauer betrachten.
1. Bild- und Videoverarbeitung
Bild- und Videodaten haben eine breitere Palette von Parametern, was die Rechenkomplexität und den Speicherbedarf erheblich erhöht. Quantisierung komprimiert die Daten, ohne wichtige Details zu verlieren, was eine effiziente Speicherung und Verarbeitung ermöglicht. Dies beschleunigt die Suche nach Bildern und Videos.
2. Komprimierung von Machine-Learning-Modellen
Das Training von KI-Modellen auf großen Datensätzen ist eine intensive Aufgabe. Quantisierung hilft, indem sie die Modellgröße und -komplexität reduziert, ohne die Effizienz zu beeinträchtigen.
3. Signalverarbeitung
Signaldaten stellen kontinuierliche Datenpunkte wie GPS- oder Überwachungsvideos dar. Quantisierung abbildet die Daten auf diskrete Werte, was eine schnellere Speicherung und Analyse ermöglicht. Darüber hinaus beschleunigt die effiziente Speicherung und Analyse die Suchvorgänge, was eine schnellere Signalvergleichung ermöglicht.
Unterschiedliche Quantisierungstechniken
Obwohl Quantisierung eine nahtlose Handhabung von billionenschkaligen Parametern ermöglicht, birgt sie das Risiko eines irreversiblen Informationsverlusts. Es ist jedoch wichtig, das richtige Gleichgewicht zwischen akzeptablem Informationsverlust und Komprimierung zu finden, um die Effizienz zu verbessern.
Jede Quantisierungstechnik hat ihre Vor- und Nachteile. Bevor Sie eine Technik wählen, sollten Sie die Komprimierungsanforderungen sowie die Stärken und Schwächen jeder Technik verstehen.
1. Binäre Quantisierung
Binäre Quantisierung ist eine Methode, die alle Vektor-Einbettungen in 0 oder 1 umwandelt. Wenn ein Wert größer als 0 ist, wird er auf 1 abgebildet, andernfalls wird er als 0 markiert. Daher wandelt sie hochdimensionale Daten in deutlich niedrigdimensionale um, was eine schnellere Ähnlichkeitssuche ermöglicht.
Formel
Die Formel lautet:

Binäre Quantisierungsformel. Bild von Autor.
Hier ist ein Beispiel, wie die binäre Quantisierung auf einem Vektor funktioniert.

Graphische Darstellung der binären Quantisierung. Bild von Autor.
Stärken
- Schnellste Suche, die sowohl skalare als auch Produkt-Quantisierungstechniken übertrifft.
- Reduziert den Speicherbedarf um einen Faktor von 32.
Schwächen
- Höheres Verhältnis von Informationsverlust.
- Vektor-Komponenten erfordern einen Mittelwert, der ungefähr gleich 0 ist.
- Schlechte Leistung bei niedrigdimensionalen Daten aufgrund höheren Informationsverlusts.
- Erneute Bewertung ist erforderlich, um die besten Ergebnisse zu erzielen.
Vektordatenbanken wie Qdrant und Weaviate bieten binäre Quantisierung.
2. Skalare Quantisierung
Skalare Quantisierung wandelt Fließkommazahlen oder Dezimalzahlen in Ganzzahlen um. Dies beginnt mit der Identifizierung eines Minimum- und Maximumwerts für jede Dimension. Der identifizierte Bereich wird dann in mehrere Bins unterteilt. Schließlich wird jeder Wert in jeder Dimension einem Bin zugeordnet.
Die Genauigkeit oder Detailtiefe in quantisierten Vektoren hängt von der Anzahl der Bins ab. Mehr Bins resultieren in höherer Genauigkeit, da feinere Details erfasst werden. Daher hängt auch die Genauigkeit der Vektorsuche von der Anzahl der Bins ab.
Formel
Die Formel lautet:

Skalare Quantisierungsformel. Bild von Autor.
Hier ist ein Beispiel, wie die skalare Quantisierung auf einem Vektor funktioniert.

Graphische Darstellung der skalaren Quantisierung. Bild von Autor.
Stärken
- Erhebliche Speicheroptimierung.
- Geringer Informationsverlust.
- Teilweise umkehrbarer Prozess.
- Schnelle Komprimierung.
- Effiziente skalierbare Suche aufgrund geringen Informationsverlusts.
Schwächen
- Geringe Abnahme der Suchqualität.
- Niedrigdimensionale Vektoren sind anfälliger für Informationsverlust, da jeder Datenpunkt wichtige Informationen trägt.
Vektordatenbanken wie Qdrant und Milvus bieten skalare Quantisierung.
3. Produkt-Quantisierung
Produkt-Quantisierung teilt die Vektoren in Subvektoren auf. Für jeden Abschnitt werden die Mittelpunkte oder Zentroide mithilfe von Clustering-Algorithmen berechnet. Ihre nächsten Zentroide stellen dann jeden Subvektor dar.
Die Ähnlichkeitssuche bei der Produkt-Quantisierung funktioniert, indem die Suchvektoren in die gleiche Anzahl von Subvektoren aufgeteilt werden. Dann wird eine Liste ähnlicher Ergebnisse in aufsteigender Reihenfolge des Abstands von jedem Subvektor-Zentroid zu jedem Abfrage-Subvektor erstellt. Da der Vektorsuchprozess den Abstand von Abfrage-Subvektoren zu den Zentroiden der quantisierten Vektoren vergleicht, sind die Suchergebnisse weniger genau. Die Produkt-Quantisierung beschleunigt jedoch den Ähnlichkeitssuchprozess, und eine höhere Genauigkeit kann durch Erhöhung der Anzahl der Subvektoren erreicht werden.
Formel
Die Ermittlung der Zentroide ist ein iterativer Prozess. Er verwendet die Neuberechnung des euklidischen Abstands zwischen jedem Datenpunkt und seinem Zentroid, bis die Konvergenz erreicht ist. Die Formel des euklidischen Abstands im n-dimensionalen Raum lautet:

Produkt-Quantisierungsformel. Bild von Autor.
Hier ist ein Beispiel, wie die Produkt-Quantisierung auf einem Vektor funktioniert.

Graphische Darstellung der Produkt-Quantisierung. Bild von Autor.
Stärken
- Höchstes Komprimierungsverhältnis.
- Bessere Speichereffizienz als andere Techniken.
Schwächen
- Nicht geeignet für niedrigdimensionale Vektoren.
- Ressourcenintensive Komprimierung.
Vektordatenbanken wie Qdrant und Weaviate bieten Produkt-Quantisierung.
Auswahl der richtigen Quantisierungsmethode
Jede Quantisierungsmethode hat ihre Vor- und Nachteile. Die Auswahl der richtigen Methode hängt von Faktoren ab, die unter anderem Folgendes umfassen:
- Datendimension
- Komprimierungs-Genauigkeits-Kompromiss
- Effizienzanforderungen
- Ressourcenbeschränkungen.
Betrachten Sie die folgende Vergleichstabelle, um zu verstehen, welche Quantisierungstechnik für Ihren Anwendungsfall geeignet ist. Diese Tabelle hebt die Genauigkeit, Geschwindigkeit und Komprimierungsfaktoren für jede Quantisierungsmethode hervor.

Bild von Qdrant
Von der Speicheroptimierung bis zur schnelleren Suche mildert die Quantisierung die Herausforderungen bei der Speicherung von billionenschkaligen Parametern. Es ist jedoch wichtig, die Anforderungen und Kompromisse im Voraus zu verstehen, um eine erfolgreiche Implementierung zu gewährleisten.
Für weitere Informationen zu den neuesten Trends und Technologien besuchen Sie Unite AI.












