Wenn Sie die neuesten Nachrichten in der Suche verfolgt haben, haben Sie wahrscheinlich schon von der Vektorsuche gehört.
Und Sie haben vielleicht sogar begonnen, sich mit dem Thema zu beschäftigen, um mehr darüber zu erfahren, nur um am anderen Ende wieder herauszukommen verwirrt. Haben Sie diese Mathematik nicht auf dem College aufgegeben?
Das Erstellen einer Vektorsuche ist schwierig. Verstehen muss nicht sein.
Und da wir verstehen, dass die Vektorsuche nicht die Zukunft ist, ist die Hybridsuche – das ist genauso wichtig.
Contents
Was sind Vektoren?
Wenn wir im Zusammenhang mit maschinellem Lernen von Vektoren sprechen, meinen wir Folgendes: Vektoren sind Gruppen von Zahlen, die etwas darstellen.
Das Ding könnte ein Bild, ein Wort oder fast alles sein.
Die Fragen sind natürlich, warum diese Vektoren nützlich sind und wie sie erstellt werden.
Schauen wir uns zuerst an, woher diese Vektoren stammen. Die kurze Antwort: Maschinelles Lernen.
Jay Alammar hat vielleicht den besten Blogbeitrag, der je geschrieben wurde was Vektoren sind.
Zusammenfassend lässt sich jedoch sagen, dass Modelle des maschinellen Lernens Elemente eingeben (nehmen wir ab jetzt nur Wörter an) und versuchen, dies zu tun Finden Sie die besten Formeln heraus, um etwas anderes vorherzusagen.
Beispielsweise haben Sie möglicherweise ein Modell, das das Wort „Biene” und es versucht, die besten Formeln herauszufinden, die genau vorhersagen, dass „Biene” wird in ähnlichen Zusammenhängen gesehen wie „Insekten” und „Wespen.“
Sobald dieses Modell die beste Formel hat, kann es das Wort „Biene” in eine Gruppe von Zahlen, die zufällig der Gruppe von Zahlen für „Insekten” und „Wespen.“
Warum Vektoren leistungsfähig sind
Aus diesem Grund sind Vektoren wirklich mächtig: Große Sprachmodelle wie Generative Pre-trained Transformer 3 (GPT-3) oder die von Google berücksichtigen Milliarden von Wörtern und Sätze, damit sie anfangen können, diese Verbindungen herzustellen und wirklich intelligent zu werden.
Es ist leicht zu verstehen, warum Menschen so begeistert davon sind, diese Intelligenz für die Suche einzusetzen.
Manche sagen das sogar Die Vektorsuche wird die Schlüsselwortsuche ersetzen, die wir seit Jahrzehnten kennen und lieben.
Die Sache ist jedoch, dass die Vektorsuche die Schlüsselwortsuche nicht vollständig ersetzt. Zu glauben, dass die Keyword-Suche keinen immensen Wert behalten wird, lässt zu viel Optimismus in das Neue und Glänzende aufkommen.
Vektorsuche und Stichwortsuche haben jeweils ihre eigenen Stärken und funktionieren am besten, wenn sie zusammenarbeiten.
Vektorsuche für Long-Tail-Abfragen
Wenn Sie in der Suche arbeiten, sind Sie wahrscheinlich bestens mit dem langen Ende von Abfragen vertraut.
Dieses Konzept, wurde von Chris Anderson populär gemacht, um es zu beschreiben digitale Inhalte, sagt, dass es einige Artikel (für Suchanfragen) gibt, die viel beliebter sind als alles andere, aber dass es viele einzelne Artikel gibt, die immer noch von jemandem gesucht werden.
So ist es mit der Suche.
Einige Suchanfragen (auch „Kopf”-Suchanfragen genannt) werden jeweils häufig durchsucht, aber die große Mehrheit der Suchanfragen wird durchsucht sehr wenig – vielleicht sogar nur ein einziges Mal.
Die Zahlen sind von Website zu Website unterschiedlich, aber auf einer durchschnittlichen Website kann etwa ein Drittel der gesamten Suchanfragen auf nur wenige Dutzend Suchanfragen zurückgehen, während fast die Hälfte des Suchvolumens auf Suchanfragen entfällt, die nicht zu den 1.000 beliebtesten gehören.
Long-Tail-Abfragen sind tendenziell länger und können sogar Abfragen in natürlicher Sprache sein.
Untersuchungen meiner Firma Algolia haben gezeigt, dass 75 % der Suchanfragen aus zwei oder weniger Wörtern bestehen. 90 % der Suchanfragen bestehen aus vier oder weniger Wörtern. Dann benötigen Sie 13 Wörter, um 99 % der Suchanfragen zu erreichen!
Sie sind jedoch nicht immer lang, sie könnten es sei einfach undurchsichtig. Für eine Website für Damenmode wurde „mauve dress” könnte eine Long-Tail-Abfrage sein, da die Leute nicht sehr oft nach dieser Farbe fragen. „Armband“ könnte ebenfalls eine selten gesehene Suchanfrage sein, selbst wenn die Website Armbänder zum Verkauf anbietet.
Die Vektorsuche funktioniert im Allgemeinen hervorragend für Long-Tail-Abfragen. Es kann verstehen, dass Armbänder Armbändern ähnlich sind, und die Armbänder auch ohne eingerichtete Synonyme auftauchen. Es kann rosa oder violette Kleider anzeigen, wenn jemand nach etwas in Lila sucht.
Die Vektorsuche kann sogar für lange oder natürliche Kleider gut funktionieren Sprachfragen. „Etwas, um meine Drinks kalt zu halten“ bringt Kühlschränke in einer gut abgestimmten Vektorsuche, während Sie bei der Stichwortsuche besser hoffen, dass Text irgendwo in einer Produktbeschreibung steht.
Mit anderen Worten, die Vektorsuche erhöht den Abruf von Suchergebnissen oder wie viele Ergebnisse gefunden werden.
So funktioniert die Vektorsuche
Die Vektorsuche tut dies, indem sie die oben beschriebenen Zahlengruppen nimmt und die Vektorsuchmaschine fragen lässt: „Wenn ich diese Zahlengruppen als Linien darstellen würde, welche lägen am nächsten beieinander?“
Eine einfache Möglichkeit, sich dies vorzustellen, besteht darin, sich Gruppen vorzustellen, die nur zwei Zahlen haben. Die Gruppe [1,2] wird näher an der Gruppe [2,2] sein als an der Gruppe [2.500].
(Da Vektoren natürlich Dutzende von Zahlen enthalten, werden sie in Dutzenden von Dimensionen “grafisch dargestellt“, was nicht so einfach zu visualisieren ist.)
Dieser Ansatz zur Bestimmung der Ähnlichkeit ist leistungsfähig, da die Vektoren, die Wörter wie „Doktor” und „Medizin” werden „dargestellt” viel ähnlicher als die Wörter „Doktor” und „Rock” wäre.
Nachteile der Vektorsuche
Es gibt jedoch auch Nachteile der Vektorsuche.
Erstens sind die Kosten. All das maschinelle Lernen, das wir oben besprochen haben? Es hat Kosten.
Zum einen ist das Speichern der Vektoren teurer als das Speichern eines schlüsselwortbasierten Suchindex. Die Suche nach diesen Vektoren ist in den meisten Fällen auch langsamer als eine Schlüsselwortsuche.
Nun kann Hashing diese beiden Probleme entschärfen.
Ja, wir führen mehr technische Konzepte ein, aber dies ist ein weiteres Konzept, dessen Grundlagen recht einfach zu verstehen sind.
Hashing führt eine Reihe von Schritten durch, um eine Information (wie eine Zeichenfolge oder eine Zahl) in eine Zahl umzuwandeln, was dauert weniger Speicher als die ursprünglichen Informationen.
Es stellt sich heraus, dass wir auch Hashing, um die Größe von Vektoren zu reduzierenwobei immer noch beibehalten wird, was Vektoren nützlich macht: ihre Fähigkeit, konzeptionell ähnliche Elemente abzugleichen.
Durch die Verwendung von Hashing können wir Vektorsuchen viel schneller machen und dafür sorgen, dass die Vektoren insgesamt weniger Platz beanspruchen.
Die Details sind sehr technisch, aber was wichtig ist, ist zu verstehen, dass es möglich ist.
Die fortgesetzte Nützlichkeit der Stichwortsuche
Das bedeutet nicht, dass die Stichwortsuche nicht immer noch nützlich ist! Die Stichwortsuche ist im Allgemeinen schneller als die Vektorsuche.
Außerdem ist es einfacher zu verstehen, warum die Ergebnisse so eingestuft werden, wie sie sind.
Nehmen Sie das Beispiel der Suchanfrage “texas” und „tejano” und „Zustand” als mögliche Wortübereinstimmungen. „tejano” ist näher, wenn wir den Vergleich aus einer reinen Keyword-Suchperspektive betrachten. Es ist jedoch nicht so einfach zu sagen, was einer vektoriellen Suche näher wäre.
Keyword-basierte Suche versteht „Texas” als ähnlicher zu „tejano” weil es einen textbasierten Ansatz zum Auffinden von Datensätzen verwendet.
Wenn Datensätze Wörter enthalten, die genau mit denen in der Abfrage übereinstimmen (oder innerhalb einer bestimmten Differenz liegen, um Tippfehler zu berücksichtigen), wird der Datensatz als relevant betrachtet und in den Ergebnissätzen wieder angezeigt.
Mit anderen Worten, die Stichwortsuche konzentriert sich auf die Genauigkeit der Suchergebnisse oder stellt sicher, dass die zurückgegebenen Datensätze relevant sind, auch wenn es weniger davon gibt.
Keyword-Suche als vorteilhaft für Head-Queries
Aus diesem Grund schneidet die Keyword-Suche bei Kopfabfragen wirklich gut ab: den Abfragen, die am beliebtesten sind.
Head-Abfragen sind in der Regel kürzer und lassen sich auch leichter optimieren. Das heißt, wenn ein Schlüsselwort aus irgendeinem Grund nicht mit dem richtigen Text in einem Datensatz übereinstimmt, wird es häufig von Analysen erfasst, und Sie können dies tun Fügen Sie ein Synonym hinzu.
Da die Stichwortsuche am besten für Head-Abfragen und die Vektorsuche am besten für Long-Tail-Abfragen funktioniert, arbeiten die beiden am besten zusammen.
Dies wird als hybride Suche bezeichnet.
Hybridsuche ist, wenn eine Suchmaschine sowohl die Schlüsselwort- als auch die Vektorsuche für eine einzelne Abfrage verwendet und Datensätze unabhängig von der Suche korrekt einordnet Ansatz führte sie zustande.
Ranking von Datensätzen über Suchquellen hinweg
Das Ranking von Datensätzen, die aus zwei verschiedenen Quellen stammen, ist nicht einfach.
Die beiden Ansätze haben naturgemäß unterschiedliche Arten der Wertung von Rekorden.
Die Vektorsuche gibt eine Punktzahl zurück, während einige schlüsselwortbasierte Suchmaschinen dies nicht tun. Selbst wenn die Keyword-basierten Suchmaschinen eine Punktzahl zurückgeben, gibt es keine Garantie dafür, dass die beiden Punktzahlen gleichwertig sind.
Wenn die Bewertungen nicht äquivalent sind, können Sie nicht sagen, dass eine Bewertung von 0,8 von der Keyword-Engine relevanter ist als eine Bewertung von 0,79 von der Vektor-Engine.
Eine andere Alternative wäre, alle Ergebnisse durch das Scoring entweder der Vektor-Engine oder der Keyword-Engine laufen zu lassen.
Dies hat den Vorteil, dass Sie den zusätzlichen Rückruf von der Vektor-Engine erhalten, hat aber auch einige Nachteile. Diese zusätzlichen abgerufenen Ergebnisse, die von der Vektor-Engine stammen, werden von einem Keyword-Score nicht als relevant bewertet, da sie sonst bereits in der Ergebnisgruppe erschienen wären.
Alternativ könnten Sie alle Ergebnisse ausführen – Schlüsselwort oder anderweitig – durch das Vektor-Scoring, aber das ist langsam und teuer.
Vektorsuche als Fallback
Aus diesem Grund versuchen einige Suchmaschinen nicht einmal, beides zu kombinieren, sondern zeigen stattdessen immer zuerst Keyword-Ergebnisse und dann Vektorergebnisse an zweiter Stelle an.
Der Gedanke hier ist, dass Sie auf die Vektorergebnisse zurückgreifen können, wenn eine Suche null oder wenige Ergebnisse zurückgibt.
Denken Sie daran, dass die Vektorsuche darauf ausgerichtet ist, die Erinnerung zu verbessern oder mehr Ergebnisse zu finden, und daher möglicherweise relevante Ergebnisse findet, die die Schlüsselwortsuche hatte nicht.
Dies ist ein anständiger Notbehelf, aber nicht die Zukunft der echten Hybridsuche.
Echte Hybridsuche ordnet mehrere verschiedene Suchquellen in derselben Ergebnismenge ein, indem sie eine Punktzahl erstellt, die über verschiedene Quellen hinweg vergleichbar ist.
Es gibt heute viel Forschung zu diesem Ansatz, aber nur wenige machen es gut und stellen ihre Engine öffentlich zur Verfügung.
Was bedeutet das also für Sie?
Das Beste, was Sie jetzt tun können, ist wahrscheinlich, sich hinzusetzen und auf dem Laufenden zu bleiben, was in der Industrie.
Die vektor- und schlüsselwortbasierte Hybridsuche kommt in den kommenden Jahren und wird für Personen ohne Data-Science-Teams verfügbar sein.
In der Zwischenzeit ist die Schlüsselwortsuche immer noch wertvoll und wird nur verbessert, wenn die Vektorsuche später eingeführt wird.