Was sind Vektor-Einbettungen und Vektor-Datenbanken?
Warum Rememberizer mehr als nur eine Datenbank oder eine Schlüsselwort-Suchmaschine ist.
Last updated
Warum Rememberizer mehr als nur eine Datenbank oder eine Schlüsselwort-Suchmaschine ist.
Last updated
Rememberizer verwendet Vektor-Embeddings in Vektor-Datenbanken, um Suchen nach semantischer Ähnlichkeit innerhalb von Benutzerwissensquellen zu ermöglichen. Dies ist eine grundsätzlich fortschrittlichere und nuanciertere Form der Informationsbeschaffung als einfach nur nach Schlüsselwörtern in Inhalten über eine Suchmaschine oder Datenbank zu suchen.
In ihrer fortschrittlichsten Form (wie sie von Rememberizer verwendet werden) werden Vektor-Embeddings von Sprachmodellen mit Architekturen erstellt, die den KI-LLMs (Large Language Models) ähneln, die den gpt-Modellen und dem ChatGPT-Dienst von OpenAI sowie Modellen/Diensten von Google (Gemini), Anthropic (Claude), Facebook (LLama 2) und anderen zugrunde liegen. Aus diesem Grund ist es natürlich, Vektor-Embeddings zu verwenden, um relevantes Wissen zu entdecken, das im Kontext von AI-Modellaufforderungen enthalten sein soll. Die Technologien sind komplementär und in gewisser Weise gleichwertig. Aus diesem Grund werden die meisten Anbieter von LLMs als Dienstleistung auch Vektor-Embeddings als Dienstleistung anbieten (zum Beispiel: ein Blog von Together AI oder ein weiterer Blog von OpenAI).
Wie sieht ein Vektor-Embedding aus? Betrachten Sie eine Koordinate (x,y) in zwei Dimensionen. Wenn sie eine Linie vom Ursprung zu diesem Punkt darstellt, können wir sie als eine Linie mit einer Richtung betrachten, mit anderen Worten als einen Vektor in zwei Dimensionen. In unserem Kontext wird ein Vektor-Embedding eine Liste von etwa 768 Zahlen sein, die einen Vektor in einem 768-dimensionalen Raum darstellen. Letztendlich kann diese Liste von Zahlen Gewichte zwischen null und eins in einem Transformer-Modell darstellen, die die Bedeutung in einem Satz wie "Ein Blitz aus heiterem Himmel." definieren. Dies ist grundsätzlich die gleiche zugrunde liegende Darstellung von Bedeutung, die beispielsweise in GPT-4 verwendet wird. Daher können wir erwarten, dass ein gutes Vektor-Embedding dasselbe brillante scheinbare Verständnis ermöglicht, das wir in modernen KI-Sprachmodellen sehen.
Es ist erwähnenswert, dass Vektor-Embeddings verwendet werden können, um mehr als nur Text darzustellen, sondern auch andere Arten von Daten wie Bilder oder Ton. Und mit einem richtig trainierten Modell kann man über Medien hinweg vergleichen, sodass ein Vektor-Embedding eines Textblocks mit einem Bild oder umgekehrt verglichen werden kann. Heute ermöglicht Rememberizer Suchen innerhalb nur des Textkomponenten von Benutzerdokumenten und Wissen. Aber die Suche von Text zu Bild und von Bild zu Text steht auf der Roadmap. Google verwendet Vektor-Embeddings, um ihre Textsuche (Text-zu-Text) und auch ihre Bildsuche (Text-zu-Bild) anzutreiben (Referenz). Facebook hat in Betracht gezogen, Embeddings für ihre soziale Netzwerksuche zu verwenden (Referenz). Snapchat verwendet Vektor-Embeddings, um den Kontext zu verstehen, um die richtige Anzeige zur richtigen Zeit dem richtigen Benutzer zu zeigen (Referenz).
Um zu verstehen, wie Vektor-Embeddings und Vektor-Datenbanken funktionieren, beginnen Sie mit der Übersicht von Hugging Face. Pinecone (eine Vektor-Embedding-Datenbank als Dienst) hat ebenfalls eine gute Übersicht .
Eine weitere großartige Quelle zum Verständnis der Suche und des Wissens in Vektoren ist das Meta/Facebook-Papier und der Code für die FAISS-Bibliothek. "FAISS: A Library for Efficient Similarity Search and Clustering of Dense Vectors" von Johnson, Douze und Jégou (2017): FAISS bietet einen umfassenden Überblick über eine Bibliothek, die für effiziente Ähnlichkeitssuche und Clusterbildung von dichten Vektoren konzipiert ist. Es werden Methoden zur Optimierung der Indexierungs- und Suchprozesse in groß angelegten Vektor-Datenbanken diskutiert, einschließlich solcher, die auf Produktquantisierung basieren. Der beste Ort, um mehr darüber zu erfahren, ist die Dokumentation zusammen mit dem Code auf Github.
Vergessen Sie nicht das Papier von Juni 2017, das die genAI (generative künstliche Intelligenz) Revolution einleitete, "Attention Is All You Need." (Referenz), das die Transformer-Architektur hinter GPT-Modellen und allen LLMs, die von OpenAI, Google, Meta (Facebook), Nvidia, Microsoft, IBM, Anthropic, Mistral, Salesforce, xAI (Elon Musk), Stability AI, Cohere und vielen anderen Open-Source-Projekten folgen, einführt. Betrachten Sie auch "Approximate Nearest Neighbors: Towards Removing the Curse of Dimensionality" (Referenz 1998, Referenz 2010). Diese Papiere diskutieren die Theorie hinter der Suche nach näheren Nachbarn (ANN) in hochdimensionalen Räumen, einem Kernkonzept in Vektor-Datenbanken zur effizienten Abrufung ähnlicher Elemente.
Eine aufregende Sache an diesen auf Transformern basierenden Modellen ist, dass je mehr Daten sie verwendeten, desto größer (mehr Parameter) sie wurden, desto besser ihr Verständnis und ihre Fähigkeiten. OpenAI bemerkte dies erstmals, als sie ihr GPT-2-Modell trainierten. Als sie dieses Potenzial erkannten, hörten sie sofort auf, eine auf Open-Source ausgerichtete Non-Profit-Organisation zu sein, und wurden ein geschlossenes, gewinnorientiertes Unternehmen, das sich auf die Produktion von GPT-3, GPT-4 und seiner berühmten Benutzeroberfläche, ChatGPT, konzentrierte. Interessanterweise besitzt Google das Patent auf diese Technologie – es waren ihre Forscher, die hinter Transformers und Attention Is All You Need standen (Referenz). ChatGPT sieht das ein wenig anders als meine Charakterisierung und schreibt, dass "Die Erzählung über den Übergang von OpenAI von einer auf Open-Source ausgerichteten Non-Profit-Organisation zu einem geschlossenen, gewinnorientierten Unternehmen eine komplexe Evolution vereinfacht. Der Übergang von OpenAI beinhaltete einen Fokus auf Sicherheit und verantwortungsvolle KI-Entwicklung neben kommerziellen Aspekten. Es ist auch erwähnenswert, dass OpenAI, während es die Entwicklung proprietärer Technologien wie GPT-3 und darüber hinaus priorisiert hat, weiterhin mit der Forschungsgemeinschaft durch Veröffentlichungen und Kooperationen zusammenarbeitet."
BERT-Sprachmodelle basieren auf Transformern und werden häufig in fortschrittlichen Vektor-Embedding-Engines verwendet. Dies wurde im Papier von 2018 "BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding" (Referenz) eingeführt. BERT (Bidirectional Encoder Representations from Transformers) markierte einen signifikanten Wandel hin zu vortrainierten Modellen, die für eine Vielzahl von NLP-Aufgaben feinabgestimmt werden können. Seine innovative Verwendung von bidirektionalem Training und Transformer-Architektur setzte neue Maßstäbe für die Modellleistung über zahlreiche Benchmarks hinweg. Frühere innovative Methoden zur Erstellung von Vektor-Embeddings wurden von GloVe (2014, Stanford), Word2Vec (2013, Google) eingeführt. "GloVe: Global Vectors for Word Representation" (Referenz): Das GloVe (Global Vectors)-Papier schlug ein neues globales log-bilineares Regressionsmodell für das unüberwachte Lernen von Wortdarstellungen vor, das die Vorteile der beiden Hauptansätze zur Einbettung kombiniert: globale Matrixfaktorisierung und lokale Kontextfenstermethoden. "Efficient Estimation of Word Representations in Vector Space" (Referenz): Dieses Papier führte Word2Vec ein, einen bahnbrechenden Ansatz zur Generierung von Wort-Embeddings. Word2Vec-Modelle, einschließlich der Continuous Bag of Words (CBOW) und Skip-Gram-Modelle, sind entscheidend für die Entwicklung von Wort-Embeddings.