1. Hintergrund: Automatische Erkennung von Ähnlichkeiten zwischen Dokumenten
  2. Einfaches Umsetzungsbeispiel: Dokument-Deskriptor-Matrix
  3. Komplexeres Modell: Das Vektorraummodell

1. Hintergrund: Automatische Erkennung von Ähnlichkeiten zwischen Dokumenten

Das Erkennen von ähnlichen Mustern in Dokumenten ist eine der Hauptaufgaben der automatischen Verarbeitung natürlicher Sprache. Diese Muster können genutzt werden, um Dokumente automatisch miteinander zu vergleichen, zu bündeln oder zu klassifizeren. Dazu muss man sich zunächst Gedanken über einige grundlegende Fragen machen.

Viele Ansätze des Ähnlichkeitsvergleichs basieren auf dem Vorkommen von Wörtern oder Phrasen in Dokumenten. Häufig wird auch noch ausgewertet, in welchem Teil eines Dokumentes (Titel, der URL, einem Abschnitte oder in einem Hyperlink) ein Wort vorkommt und mit welchen anderen Wörtern es gemeinsam auftritt. Grundsätzlich kann man jede Art von Metadaten (z. B. auch Social Media Daten wie User Ratings) zum Merkmalsableich verwenden. Das gleichzeitige Vorkommen einzelner Merkmale in mehreren Dokumenten nennt man Kookkurenz.
Dieser Art des Ähnlichkeitsvergleichs liegt dann das naheliegende Modell zugrunde, dass Texte, in denen dieselben oder ähnliche Wörter vorkommen, eine ähnliche Bedeutung haben. Im Alltag trifft diese Annahme häufig zu.
Das muss aber nicht so sein. Schauen Sie sich diese Briefanfänge an, in denen mit denselben Wörtern eine komplett andere Aussage erreicht wird.

Brief 1 Brief 2
Dear John, I want a man who knows what love is all about. Your are generous, kind, thoughtful. People who are not like you admit to being useless and inferior. You have ruined me for other men ... Gloria Dear John, I want a man who knows what love is. All about your are generous, kind thoughtful people who are not like you. Admit to being useless and inferior. You have ruined me. ... Gloria

Die automatische Erkennung von Ähnlichkeiten in Dokumenten läßt sich z. B. nutzen für die Entwicklung von Spamfiltern. Die Software erkennt, ob es sich bei einer Mail um Spam handelt oder nicht und sortiert die Mails in zwei Gruppen. Auch bei der 'sentiment analysis', die z. B. im PR Bereich eingesetzt wird, um herauszufinden, ob in der Presse positiv oder negativ über ein Unternehmen berichtet wird, werden Dokumente zwei Gruppen zugeordnet. Sie können diese Demoversion eines Sentiment Analyzers z.B. mit Filmkritiken von der Seite Rotten Tomatoes ausprobieren.

2. Umsetzungsbeispiel: Die Dokument-Deskriptor-Matrix

Die Ähnlichkeit zwischen zwei Objekten wird als Funktion der Anzahl der Eigenschaften berechnet, die beiden Objekten gemeinsam sind. Eine Gemeinsamkeit von Dokumenten kann die Zuordnung von Schlagworten (tags) zu diesen Dokumenten sein.
Die Zuordnung von Schlagworten zu einem Dokument lässt sich gut in Form einer Tabelle vorstellen. In ihrer einfachsten, binären, Form kann man in einer solchen Tabelle festhalten, ob einem Dokument ein Schlagwort zugeordnet wird oder nicht. Dok 1 lautet im Volltext "Protest gegen Sparmaßnahmen und Sternmarsch zum Rathaus." Nur die fett gedruckten Wörter wurden in die Tabelle übernommen.

Schlagwort Dok 1 Dok 2 Dok 3 Dok 4
Student 0 1 0 1
Protest 1 1 1 1
Sparmaßnahme 1 1 0 1
Sternmarsch 1 0 1 1
Senat 1 0 1 1

Das Dokument 1 wird durch die in der Spalte Dok 1 angefügten Schlagworte repräsentiert. Diese Spalte kann man auch in Form eines Vektors mathematisch darstellen. Die Ähnlichkeit zwischen zwei Vektoren, in unserem Fall also Repräsentanten für zwei Dokumente, kann man ermitteln, wenn man die beiden Vektoren miteinander multipliziert. Für die Multiplikation wird jeder Wert innerhalb eines Vektors mit dem entsprechenden Wert des anderen Vektors multipliziert. Die Werte werden also paarweise multipliziert. Es können nur Vektoren mit derselben Anzahl Dimensionen miteinander multipliziert werden. Als Ergebnis entsteht ein neuer Vektor. Die einzelnen Werte innerhalb des Vektors können anschließend zu einem Ergebnis addiert werden. Wir können jetzt ausrechnen, ob Dokument 4 oder Dokument 2 eine größere Ähnlichkeit zu Dokument 1 aufweist, indem wir die Dokumente paarweise miteinander multiplizieren.

einfache mathematische Darstellung Skalarprodukt

Das Skalarprodukt von Dok 1 und Dok 4 errechnet man also, indem man die einzelnen Werte des Vektors miteinander multipliziert und addiert:
0*1 + 1*1 + 1*1 + 1*1 +1*1 = 4
Aus dem Ergebnis können wir schließen, dass Dok 1 und Dok 4 (Skalarprodukt = 4) sich ähnlicher sind als Dok 1 und Dok 2 (Skalarprodukt = 2).

Die gängige mathematische Formeldarstellung für dieses sogenannte Skalarprodukt sieht so aus:

Formeldarstellung Skalarprodukt

Dieses Wissen reicht bereits aus, um mit Vektoren rechnen zu können und auf diese Weise Änhlichkeiten zwischen Dokumenten zu errechnen.


3. Komplexeres Modell: Vektorraummodell

Diese Ähnlichkeitsfunktion wird in der Fachliteratur als Vektorraummodell bezeichnet.

Mit Vektoren wird vor allem in der Physik gearbeitet. Es gibt physikalische Größen, wie z. B. die Temperatur, die sich durch eine Zahl ausdrücken lassen. Andere Größen bestehen aus mehreren Werten: So hat die auf einen Körper ausgeübte Kraft eine Richtung und eine Stärke. Solche Größen nennt man Vektoren. Ein Vektor kann aus beliebig vielen Merkmalen bestehen.

Auch die in den Spalten der Dokument-Deskriptor-Matrix festgehaltenen Dokumente lassen sich mathematisch als Vektoren darstellen. Die Schlagworte bilden die Dimensionen des Vektorraums. Wenn für ein Dokument 5 Schlagworte bestimmt werden, besitzt der Vektor des Dokuments 5 Dimensionen (n=5). 5 Dimensionen sind für uns graphisch nicht mehr umsetzbar. In den aufgeführten Links können Sie sich einige Beispiele für Visulisierungen des Modells ansehen. Aus Gründen der Darstellbarkeit müssen sich die Visualisierungen auf drei Dimensionen beschränken.

Links zu Visalisierungen des Vektorraummodells

Mehr zum Vektorraummodell in Dirk Lewandowski: Web Information Retrieval, Kapitel "Modelle des Information Retrieval" (aufgerufen: 7. Dezember 2014).

Beispiel aus einem Software-Tutorial, das zeigt, wie aus Zeichenketten (Wörtern) Vektorräume werden. Gensim: Corpora and Vector Space

Reginald Ferber: Information Retrieval, Kapitel 1.3.6. http://information-retrieval.de/irb/ir.part_1.chapter_3.section_6.topic_1.html

Einfache Erklärung zur Berechnung der Winkel zwischen Vektoren http://www.youtube.com/watch?v=pRsIUubHtCM

Auch zum Vektorraummodell gibt es ein interessantes Online-Video von der Universität Stanford:The Vector Space Model (VSM) von Dan Jurafsky auf Englisch


Stand: 29. Mai 2018

< Seite drucken >
< Zum Seitenanfang >

STEP 1

Einführung

STEP 2

Initialaufgabe

STEP 4

Übung 1

STEP 5

Übung 2
Step 1
Step 2
Step 3
Step 4
Step 5
Lektüre: Die Berechnung von Ähnlichkeiten zwischen Dokumenten

LE 09: Ermittlung von Dokumentähnlichkeit