Vektorraummodell
Vektorraummodell oder Begriff Vektormodell ist ein algebraisches Modell zur Darstellung von Textdokumenten (und allen Objekten im Allgemeinen) als Vektoren von Identifikatoren (wie Indexbegriffen). Es wird in verwendet Informationsfilterung, Informationsrückgewinnung, Indizierung und Relevanz -Rangliste. Seine erste Verwendung war in der Smart Information Retrieval System.
Definitionen
Dokumente und Abfragen werden als Vektoren dargestellt.
Jeder Abmessungen entspricht einem separaten Term. Wenn im Dokument ein Begriff auftritt, ist sein Wert im Vektor ungleich Null. Es wurden verschiedene Arten zur Berechnung dieser Werte entwickelt, die auch als (Term) Gewichte bezeichnet werden. Eines der bekanntesten Programme ist tf-idf Gewichtung (siehe Beispiel unten).
Die Definition von Begriff hängt von der Anwendung ab. Typischerweise sind Begriffe einzelne Wörter, Schlüsselwörteroder längere Phrasen. Wenn Wörter als Begriffe ausgewählt werden, ist die Dimensionalität des Vektors die Anzahl der Wörter im Wortschatz (die Anzahl der unterschiedlichen Wörter, die in der vorkommen Korpus).
Vektoroperationen können verwendet werden, um Dokumente mit Abfragen zu vergleichen.
Anwendungen
Relevanz Ranglisten von Dokumenten in einer Schlüsselwortsuche kann berechnet werden, wobei die Annahmen von verwendet werden Ähnlichkeiten dokumentieren Theorie, indem die Abweichung von Winkeln zwischen jedem Dokumentvektor und dem ursprünglichen Abfragetektor verglichen wird, bei dem die Abfrage als Vektor mit der gleichen Dimension wie die Vektoren dargestellt wird, die die anderen Dokumente darstellen.
In der Praxis ist es einfacher, die zu berechnen Kosinus des Winkels zwischen den Vektoren anstelle des Winkels selbst:
Wo ist die Kreuzung (d. H. Die Skalarprodukt) des Dokuments (D.2 in der Abbildung nach rechts) und die Abfrage (q in der Abbildung) Vektoren, ist die Norm von Vektor D.2, und ist die Norm von Vektor q. Das Norm eines Vektors wird als solcher berechnet:
Verwenden des Cosinus die Ähnlichkeit zwischen Dokument dj und Abfrage q kann berechnet werden als:
Da alle von diesem Modell betrachteten Vektoren nicht negativ sind, bedeutet ein Kosinuswert von Null, dass der Abfrage- und Dokumentvektor sind senkrecht und haben keine Übereinstimmung (d. H. Der Abfragebegriff existiert nicht im Dokument, das berücksichtigt wird). Sehen Kosinusähnlichkeit Für weitere Informationen.
Term Frequenz-Inverse-Dokument Frequenzgewichte
Im klassischen Vektorraummodell vorgeschlagen von SaltonWong und Yang [1] Die Term-spezifischen Gewichte in den Dokumentvektoren sind Produkte lokaler und globaler Parameter. Das Modell ist bekannt als Term Frequenz-Invers-Dokumentfrequenz Modell. Der Gewichtsvektor für Dokument d ist , wo
und
- ist Term Häufigkeit des Terms t im Dokument d (ein lokaler Parameter)
- ist umgekehrte Dokumentfrequenz (ein globaler Parameter). ist die Gesamtzahl der Dokumente im Dokumentsatz; ist die Anzahl der Dokumente, die den Begriff enthalten t.
Vorteile
Das Vektorraummodell hat die folgenden Vorteile gegenüber dem Standard -Boolesche Modell:
- Einfaches Modell basierend auf linearen Algebra
- Begriffsgewichte nicht binär
- Ermöglicht das Berechnen eines kontinuierlichen Grads der Ähnlichkeit zwischen Abfragen und Dokumenten
- Ermöglicht das Ranking von Dokumenten entsprechend ihrer möglichen Relevanz
- Ermöglicht teilweise Übereinstimmungen
Die meisten dieser Vorteile sind eine Folge des Unterschieds in der Dichte der Dokumentensammlungspräparatur zwischen Booleschen und Term Frequenz-Inverse-Dokumentfrequenzansätzen. Bei Verwendung von Booleschen Gewichten befindet sich jedes Dokument in einem Scheitelpunkt in einem n-dimensionalen Hypercube. Daher sind die möglichen Dokumentenabmerkmale und der maximale euklidische Abstand zwischen Paaren ist . Wenn Dokumente zur Dokumentsammlung hinzugefügt werden, wird die von den Scheitelpunkten des Hypercube definierte Region besiedelter und daher dichter. Im Gegensatz zu booleschen Dokument wird ein Dokument unter Verwendung des Begriffs Frequenz-Inverse-Dokumentfrequenzgewichte hinzugefügt, die inversen Dokumentfrequenzen der Begriffe im neuen Dokument, während die der verbleibenden Begriffe zunehmen. Im Durchschnitt, wie Dokumente hinzugefügt werden, wird in der Region, in der Dokumente liegen, die Regulierung der Dichte der gesamten Sammelrepräsentation erweitert. Dieses Verhalten modelliert die ursprüngliche Motivation von Salton und seinen Kollegen, die eine in einer Region mit niedrigen Dichte dargestellte Dokumentensammlung zu besseren Abrufgebieten liefern könnte.
Einschränkungen
Das Vektorraummodell hat die folgenden Einschränkungen:
- Lange Dokumente sind schlecht dargestellt, weil sie schlechte Ähnlichkeitswerte haben (ein kleiner Skalarprodukt und ein große Dimensionalität)
- Suchschlüsselwörter müssen genau den Dokumentenbegriffen übereinstimmen. Wort Substrings könnte zu einem "führen"Falsch positiv passen"
- Semantische Empfindlichkeit; Dokumente mit ähnlichem Kontext, aber unterschiedlichem Begriff Vokabular werden nicht zugeordnet, was zu einem "führt"Falsch negativ passen".
- Die Reihenfolge, in der die Begriffe im Dokument erscheinen, geht in der Vektorraumdarstellung verloren.
- Theoretisch geht davon aus, dass die Begriffe statistisch unabhängig sind.
- Gewichtung ist intuitiv, aber nicht sehr formal.
Viele dieser Schwierigkeiten können jedoch durch die Integration verschiedener Werkzeuge, einschließlich mathematischer Techniken wie Einzelwertzerlegung und lexikalische Datenbanken wie zum Beispiel Wordnet.
Modelle basieren auf und erweitern das Vektorraummodell
Modelle basieren auf und erweitern das Vektorraummodell, umfassen:
- Verallgemeinerter Vektorraummodell
- Latente semantische Analyse
- Begriff
- Rocchio -Klassifizierung
- Zufällige Indizierung
Software, die das Vektorraummodell implementiert
Die folgenden Softwarepakete können für diejenigen von Interesse sein, die mit Vektormodellen experimentieren und auf ihnen basierend auf Suchdiensten implementieren möchten.
Kostenlose Open Source -Software
- Apache Lucene. Apache Lucene ist eine Hochleistungs-, Open-Source-Bibliothek mit vollem Funktionsbereitschaft in Java.
- OpenSearch (Software) und Solr: Die 2 berühmtesten Suchmaschinensoftware (viele kleiner existieren) basierend auf Lucene.
- Gensim ist eine Python+Numpy Framework für Vektorraummodellierung. Es enthält inkrementelle (speichereffiziente) Algorithmen für Term Frequenz-Invers-Dokumentfrequenz, Latente semantische Indexierung, Zufällige Projektionen und Latent Dirichlet Allocation.
- Weka. Weka ist ein beliebtes Data Mining -Paket für Java, einschließlich der Wortvektoren und Tasche mit Wörtern Modelle.
- Word2Vec. Word2VEC verwendet Vektorräume für Worteinbettungen.
Weitere Lektüre
- G. Salton (1962), ","Einige Experimente zur Erzeugung von Wort- und Dokumentverbänden" Verfahren AFIPS '62 (Herbst) Verfahren des 4. bis 6. Dezember 1962, Herbst Joint Computer Conference, Seiten 234–250. (Frühes Papier von Salton unter Verwendung der Formalisierung der Term-Dokumentmatrix)
- G. SaltonA. Wong und C. S. Yang (1975), "Ein Vektorraummodell für die automatische Indizierung" Kommunikation der ACM, vol. 18, nr. 11, Seiten 613–620. (Artikel, in dem ein Vektorraummodell vorgestellt wurde)
- David Dubin (2004), Das einflussreichste Papier, das Gerard Salton nie geschrieben hat (Erklärt die Geschichte des Vektorraummodells und die Nichteinhaltung einer häufig zitierten Veröffentlichung)
- Beschreibung des Vektorraummodells
- Beschreibung des klassischen Vektorraummodells von Dr. E. Garcia
- Beziehung der Vektorraumsuche zur Suche "K-Nearest Neighbor"
Siehe auch
Verweise
- ^ G. Salton, A. Wong, C. S. Yang, Ein Vektorraummodell für die automatische Indexierung, Kommunikation des ACM, V.18 N.11, S. 613–620, November 1975