Vector Search
Erkunde, wie die Vektorsuche Einbettungen nutzt, um ähnliche Daten zu finden. Lerne, hochwertige Vektoren mit Ultralytics YOLO26 für präzise Informationsabrufe zu generieren.
Vektorsuche ist eine ausgeklügelte Methode der Informationsabfrage, die ähnliche Elemente in einem Datensatz anhand ihrer mathematischen Eigenschaften anstelle exakter Schlüsselwortübereinstimmungen identifiziert. Im Gegensatz zur herkömmlichen keyword search, die auf dem Finden spezifischer Zeichenfolgen beruht, analysiert die Vektorsuche die zugrunde liegende semantische Bedeutung der Daten. Diese Technik ist grundlegend für moderne Anwendungen der artificial intelligence (AI), da sie Computern ermöglicht, Beziehungen zwischen abstrakten Konzepten zu verstehen und unstructured data wie Bilder, Audiodateien und natürlichsprachlichen Text mit bemerkenswerter Genauigkeit zu verarbeiten.
Wie die Vektorsuche funktioniert#
Der Kern der Vektorsuche besteht darin, Rohdaten in hochdimensionale numerische Vektoren, sogenannte embeddings, umzuwandeln. Dieser Prozess bildet Elemente auf Punkte in einem mehrdimensionalen Raum ab, in dem sich konzeptionell ähnliche Elemente nahe beieinander befinden.
-
Vektorisierung: Ein Modell des deep learning (DL) verarbeitet die Eingabedaten – zum Beispiel das Bild eines Hundes – und gibt einen Merkmalsvektor aus. Fortgeschrittene Modelle wie YOLO26 werden häufig verwendet, um diese reichhaltigen Merkmalsrepräsentationen effizient zu generieren.
-
Indizierung: Um Suchen schnell durchzuführen, werden diese Vektoren mithilfe spezialisierter Algorithmen organisiert und häufig in einer dedizierten vector database gespeichert.
-
Ähnlichkeitsberechnung: Wenn ein Benutzer eine Abfrage sendet, konvertiert das System diese Abfrage in einen Vektor und misst den Abstand zu gespeicherten Vektoren mithilfe von Metriken wie cosine similarity oder Euclidean distance.
-
Abruf: Das System gibt die "nächsten Nachbarn" zurück, die die kontextuell relevantesten Ergebnisse darstellen.
Python-Beispiel: Embeddings generieren#
Um die Vektorsuche zu implementieren, musst du deine Daten zunächst in Vektoren umwandeln. Der folgende Code-Schnipsel zeigt, wie du feature maps und Embeddings aus einem Bild mithilfe des Pakets ultralytics und einem vortrainierten YOLO26-Modell generierst.
from ultralytics import YOLO
# Load a pre-trained YOLO26 classification model
model = YOLO("yolo26n-cls.pt")
# Generate feature embeddings for an image URL
# The 'embed' method returns the high-dimensional vector representation
results = model.embed("https://ultralytics.com/images/bus.jpg")
# Print the shape of the resulting embedding vector
print(f"Embedding vector shape: {results[0].shape}")Praxisanwendungen#
Die Vektorsuche ist der Motor hinter vielen intuitiven Funktionen im heutigen Software-Ökosystem und schlägt eine Brücke zwischen computer vision (CV) und der Absicht des Benutzers.
- Visuelle Empfehlungssysteme: Im Sektor von AI in retail unterstützt die Vektorsuche „Shop-the-Look“-Funktionen. Wenn einem Kunden eine bestimmte Handtasche gefällt, findet das System Artikel mit ähnlichen visuellen Vektoren – die in Form, Textur und Stil übereinstimmen – und erstellt so ein personalisiertes recommendation system.
- Retrieval-Augmented Generation (RAG): Um Large Language Models (LLMs) zu verbessern, verwenden Entwickler die Vektorsuche, um relevante Dokumente aus einer Wissensbasis abzurufen. Dies liefert der KI Kontext, reduziert Halluzinationen und verbessert die Genauigkeit bei chatbot-Interaktionen.
- Anomalieerkennung: Durch das Clustern von Vektoren „normaler“ Vorgänge können Systeme Ausreißer identifizieren, die stark vom Cluster abweichen. Dies ist entscheidend für die anomaly detection in der Fertigungsqualitätskontrolle und data security.
Unterscheidung verwandter Konzepte#
Es ist hilfreich, die Vektorsuche von ähnlichen Begriffen zu unterscheiden, um die gesamte machine learning (ML)-Pipeline zu verstehen.
- Vektorsuche vs. Semantic Search: Semantische Suche ist die breitere Anwendung des Verstehens der Benutzerabsicht (das „Was“). Die Vektorsuche ist die spezifische algorithmische Methode, die verwendet wird, um dies durch Berechnung der Vektornähe (das „Wie“) zu erreichen.
- Vektorsuche vs. Vector Database: Eine Vektordatenbank ist die Infrastruktur, die darauf ausgelegt ist, Embeddings im großen Maßstab zu speichern und zu verwalten. Die Vektorsuche ist der Prozess des Abfragens dieser Datenbank, um Informationen abzurufen.
- Vektorsuche vs. Keyword Search: Die Schlüsselwortsuche gleicht exakte Textstrings ab (z. B. „Apfel“ stimmt mit „Apfel“ überein). Die Vektorsuche gleicht Bedeutung ab, sodass „Apfel“ möglicherweise mit „Frucht“ oder „rot“ übereinstimmt, selbst wenn die Wörter unterschiedlich sind.
Integration mit der Ultralytics-Plattform#
Für Teams, die Systeme zur similarity search entwickeln, ist die Verwaltung von Datensätzen und das Training von Embedding-Modellen ein entscheidender erster Schritt. Die Ultralytics Platform vereinfacht diesen Workflow, indem sie Tools für Datenmanagement, Cloud-Training und Modellbereitstellung bereitstellt. Indem du sicherstellst, dass deine Basismodelle – sei es für object detection oder Klassifizierung – leistungsstark sind, stellst du sicher, dass die resultierenden Vektoren genaue und aussagekräftige Suchergebnisse liefern.






