Vernetzen Sie sich mit uns

Künstliche Intelligenz

Vergleich von Quantisierungstechniken für die skalierbare Vektorsuche

mm

Stellen Sie sich vor, Sie suchen nach ähnlichen Dingen auf der Grundlage tieferer Erkenntnisse statt nur anhand von Schlüsselwörtern. Dabei helfen Vektordatenbanken und Ähnlichkeitssuchen. Vektordatenbanken Aktivieren Sie die Vektorähnlichkeitssuche. Es nutzt den Abstand zwischen Vektoren, um Datenpunkte in Suchanfragen zu finden.

Allerdings kann die Ähnlichkeitssuche in hochdimensionalen Daten langsam und ressourcenintensiv sein. Geben Sie Quantisierungstechniken ein! Sie spielen eine wichtige Rolle bei der Optimierung der Datenspeicherung und der Beschleunigung des Datenabrufs in Vektordatenbanken.

In diesem Artikel werden verschiedene Quantisierungstechniken, ihre Typen und reale Anwendungsfälle untersucht.

Was ist Quantisierung und wie funktioniert sie?

Quantisierung ist der Prozess der Umwandlung kontinuierlicher Daten in diskrete Datenpunkte. Besonders wenn es um milliardenschwere Parameter geht, ist die Quantisierung für die Verwaltung und Verarbeitung unerlässlich. In Vektordatenbanken wandelt die Quantisierung hochdimensionale Daten in komprimierten Raum um und behält dabei wichtige Merkmale und Vektorabstände bei.

Die Quantisierung reduziert Speicherengpässe erheblich und verbessert die Speichereffizienz.

Der Quantisierungsprozess umfasst drei Schlüsselprozesse:

1. Komprimieren hochdimensionaler Vektoren

Bei der Quantisierung verwenden wir Techniken wie Codebuchgenerierung, Feature Engineering und Kodierung. Diese Techniken komprimieren hochdimensionale Vektoreinbettungen in einen niedrigdimensionalen Unterraum. Mit anderen Worten: Der Vektor wird in zahlreiche Untervektoren aufgeteilt. Vektoreinbettungen sind numerische Darstellungen von Audio-, Bild-, Video-, Text- oder Signaldaten, die eine einfachere Verarbeitung ermöglichen.

2. Zuordnung zu diskreten Werten

Dieser Schritt beinhaltet die Abbildung der niedrigdimensionalen Subvektoren auf diskrete Werte. Durch die Zuordnung wird die Anzahl der Bits jedes Subvektors weiter reduziert.

3. Komprimierte Vektorspeicherung

Abschließend werden die abgebildeten diskreten Werte der Subvektoren in die Datenbank für den ursprünglichen Vektor gestellt. Komprimierte Daten, die dieselben Informationen in weniger Bits darstellen, optimieren ihre Speicherung.

Vorteile der Quantisierung für Vektordatenbanken

Die Quantisierung bietet eine Reihe von Vorteilen, die zu einer verbesserten Berechnung und einem geringeren Speicherbedarf führen.

1. Effiziente skalierbare Vektorsuche

Die Quantisierung optimiert die Vektorsuche, indem sie den Vergleichsberechnungsaufwand reduziert. Daher erfordert die Vektorsuche weniger Ressourcen, was ihre Gesamteffizienz verbessert.

2. Speicheroptimierung

Mit quantisierten Vektoren können Sie mehr Daten auf demselben Raum speichern. Darüber hinaus werden auch die Datenindizierung und -suche optimiert.

3. Schnelligkeit

Mit effizienter Speicherung und Abfrage gehen schnellere Berechnungen einher. Reduzierte Abmessungen ermöglichen eine schnellere Verarbeitung, einschließlich Datenmanipulation, Abfragen und Vorhersagen.

Einige beliebte Vektordatenbanken wie Quadrant, Tannenzapfen und Milvus bieten verschiedene Quantisierungstechniken mit unterschiedlichen Anwendungsfällen an.

Anwendungsfälle

Die Fähigkeit der Quantisierung, die Datengröße zu reduzieren und gleichzeitig wichtige Informationen zu bewahren, macht sie zu einem hilfreichen Vorteil.

Lassen Sie uns einige seiner Anwendungen genauer betrachten.

1. Bild- und Videoverarbeitung

Bilder und Videodaten verfügen über ein breiteres Spektrum an Parametern, was die Rechenkomplexität und den Speicherbedarf erheblich erhöht. Quantisierung komprimiert die Daten, ohne wichtige Details zu verlieren, und ermöglicht so eine effiziente Speicherung und Verarbeitung. Dies beschleunigt die Suche nach Bildern und Videos.

2. Modellkomprimierung für maschinelles Lernen

Das Training von KI-Modellen anhand großer Datenmengen ist eine intensive Aufgabe. Quantisierung hilft durch Reduzierung Modellgröße und -komplexität ohne die Effizienz zu beeinträchtigen.

3. Signalverarbeitung

Signaldaten stellen kontinuierliche Datenpunkte wie GPS oder Überwachungsaufnahmen dar. Durch die Quantisierung werden Daten in diskrete Werte umgewandelt, was eine schnellere Speicherung und Analyse ermöglicht. Darüber hinaus beschleunigen effiziente Speicherung und Analyse die Suchvorgänge und ermöglichen so einen schnelleren Signalvergleich.

Verschiedene Quantisierungstechniken

Die Quantisierung ermöglicht zwar die nahtlose Handhabung von Parametern im Milliardenmaßstab, birgt jedoch das Risiko eines irreversiblen Informationsverlusts. Die richtige Balance zwischen akzeptablem Informationsverlust und Komprimierung zu finden, verbessert jedoch die Effizienz.

Jede Quantisierungstechnik hat Vor- und Nachteile. Bevor Sie sich entscheiden, sollten Sie die Komprimierungsanforderungen sowie die Stärken und Grenzen der einzelnen Techniken kennen.

1. Binäre Quantisierung

Die binäre Quantisierung ist eine Methode, die alle Vektoreinbettungen 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 werden hochdimensionale Daten in deutlich niedrigerdimensionale Daten umgewandelt schnellere Ähnlichkeitssuche.

Formel

Die Formel lautet:

Binäre Quantisierungsformel. Bild vom Autor.

Hier ist ein Beispiel dafür, wie die binäre Quantisierung an einem Vektor funktioniert.

BQ-Illustration

Grafische Darstellung der binären Quantisierung. Bild vom Autor.

Stärken

  • Schnellste Suche, die sowohl Skalar- als auch Produktquantisierungstechniken übertrifft.
  • Reduziert den Speicherbedarf um den Faktor 32.

Einschränkungen

  • Höheres Verhältnis von Informationsverlust.
  • Vektorkomponenten erfordern einen Mittelwert von ungefähr Null.
  • Schlechte Leistung bei niedrigdimensionalen Daten aufgrund eines höheren Informationsverlusts.
  • Um die besten Ergebnisse zu erzielen, ist eine erneute Bewertung erforderlich.

Vektordatenbanken wie Quadrant und Weben bieten binäre Quantisierung.

2. Skalare Quantisierung

Die Skalarquantisierung wandelt Gleitkomma- oder Dezimalzahlen in ganze Zahlen um. Dies beginnt mit der Ermittlung eines Mindest- und Höchstwerts für jede Dimension. Der identifizierte Bereich wird dann in mehrere Bins unterteilt. Schließlich wird jeder Wert in jeder Dimension einem Abschnitt zugeordnet.

Der Genauigkeits- oder Detaillierungsgrad quantisierter Vektoren hängt von der Anzahl der Bins ab. Mehr Bins führen zu einer höheren Genauigkeit durch die Erfassung feinerer Details. Daher hängt die Genauigkeit der Vektorsuche auch von der Anzahl der Bins ab.

Formel

Die Formel lautet:

Skalare Quantisierungsformel. Bild vom Autor.

Hier ist ein Beispiel dafür, wie die Skalarquantisierung an einem Vektor funktioniert.

SQ-Illustration

Grafische Darstellung der Skalarquantisierung. Bild vom Autor.

Stärken

  • Signifikant Erinnerung Optimierung.
  • Kleiner Informationsverlust.
  • Teilweise reversibler Prozess.
  • Schnelle Kompression.
  • Effiziente skalierbare Suche durch geringen Informationsverlust.

Einschränkungen

  • Eine leichte Verschlechterung der Suchqualität.
  • Niedrigdimensionale Vektoren sind anfälliger für Informationsverluste, da jeder Datenpunkt wichtige Informationen enthält.

Vektordatenbanken wie z Quadrant und Milvus bieten skalare Quantisierung.

3. Produktquantisierung

Die Produktquantisierung unterteilt die Vektoren in Subvektoren. Für jeden Abschnitt werden die Mittelpunkte oder Schwerpunkte mit berechnet Clustering-Algorithmen. Ihre nächstgelegenen Schwerpunkte repräsentieren dann jeden Subvektor.

Die Ähnlichkeitssuche bei der Produktquantisierung funktioniert durch die Aufteilung des Suchvektors in die gleiche Anzahl von Subvektoren. Anschließend wird eine Liste ähnlicher Ergebnisse in aufsteigender Reihenfolge der Entfernung vom Schwerpunkt jedes Subvektors zu jedem Abfrage-Subvektor erstellt. Da der Vektorsuchprozess den Abstand von Abfragesubvektoren mit den Schwerpunkten des quantisierten Vektors vergleicht, sind die Suchergebnisse weniger genau. Allerdings beschleunigt die Produktquantisierung den Ähnlichkeitssuchprozess und eine höhere Genauigkeit kann durch eine Erhöhung der Anzahl der Subvektoren erreicht werden.

Formel

Das Finden von Schwerpunkten ist ein iterativer Prozess. Es nutzt die Neuberechnung des euklidischen Abstands zwischen jedem Datenpunkt und seinem Schwerpunkt bis zur Konvergenz. Die Formel des euklidischen Abstands im n-dimensionalen Raum lautet:

Produktquantisierungsformel. Bild vom Autor.

Hier ist ein Beispiel dafür, wie die Produktquantisierung auf einem Vektor funktioniert.

PQ-Illustration

Grafische Darstellung der Produktquantisierung. Bild vom Autor.

Stärken

  • Höchstes Kompressionsverhältnis.
  • Bessere Speichereffizienz als andere Techniken.

Einschränkungen

  • Nicht geeignet für niedrigdimensionale Vektoren.
  • Ressourcenintensive Komprimierung.

Vektordatenbanken wie Quadrant und Weaviate bieten Produktquantisierung.

Auswahl der richtigen Quantisierungsmethode

Jede Quantisierungsmethode hat ihre Vor- und Nachteile. Die Wahl der richtigen Methode hängt unter anderem von folgenden Faktoren ab:

  • Datendimension
  • Kompromiss zwischen Komprimierung und Genauigkeit
  • Effizienzanforderungen
  • Ressourcenbeschränkungen.

Sehen Sie sich die Vergleichstabelle unten an, um besser zu verstehen, welche Quantisierungstechnik für Ihren Anwendungsfall geeignet ist. Dieses Diagramm zeigt Genauigkeit, Geschwindigkeit und Komprimierungsfaktoren für jede Quantisierungsmethode.

Bild von Qdrant

Von der Speicheroptimierung bis zur schnelleren Suche verringert die Quantisierung die Herausforderungen bei der Speicherung milliardenschwerer Parameter. Für eine erfolgreiche Umsetzung ist es jedoch entscheidend, die Anforderungen und Kompromisse im Vorfeld zu verstehen.

Weitere Informationen zu den neuesten Trends und Technologien finden Sie unter KI vereinen.

Haziqa ist ein Datenwissenschaftler mit umfangreicher Erfahrung im Schreiben technischer Inhalte für KI- und SaaS-Unternehmen.