Implementierung eines Vektormodells Hauptseminar Information Retrieval WS 2013/14 Dr. Karin Haenelt Amol Phadke, Mirjam Eppinger Institut für Computerlinguistik Ruprecht-Karls-Universität Heidelberg 03.02.2014 1 / 30
Einleitung Idee 1: Vergleich der VSM-Varianten Vergleich Ähnlichkeitsmaße Vergleich Termgewichtungen Idee 2: Ähnlichkeit von Wikipedia-Artikeln berechnen sehr ähnl. Artikel zu einem zus.fügen, Redundanzen beseitigen Idee 3: zu einem Bibelvers ähnliche Verse ausgeben mehr dazu später Vorteil gegenüber Idee 2: betrachte Verse als Dokumente sehr kurze Dokumente daher: Idee 2 nicht weiter verfolgt 2 / 30
Überblick Modell Vergleich VSM-Varianten Fragestellungen Daten WikiSE Wikipedia Search Engine Ergebnisse Evaluation BibleVerSE Bible Verse Search Engine Motivation Daten BibleVerSE Demo Evaluation Fazit & Ausblick 3 / 30
Modell Vektormodell basiert auf Wortfrequenzen und Ähnlichk.maßen Unser Vektormodell Drei Termgewichtungen: keine (einfache Frequenzen) normalisierte Frequenzen tf-idf Zwei Ähnlichkeitsmaße: Cosinus-Ähnlichkeit euklidische Distanz Alle Möglichkeiten implementiert über Konsole wählbar Modell eingebaut in zwei Programme 4 / 30
Vergleich der VSM-Varianten 5 / 30
Fragestellungen 1 Zusammenhang zwischen berechneter Ähnlichkeit und subjektiver Relevanz der Ergebnisse für eine Query? 2 Unterschiede durch verschiedene Termgewichtungen? 3 Unterschiede durch verschiedene Ähnlichkeitsmaße? 6 / 30
Daten Korpus: Teilkorpus aus Wikicorpus 1.0, eine Sammlung von Wikipedia-Artikeln (Reese et. al. 2010) http://www.lsi.upc.edu/~nlp/wikicorpus/ Berechnung der Ähnlichkeitsmaße durch dafür entwickeltes Programm (WikiSE) Manuelles Ranking der Ergebnisse nach Relevanz auf einer Skala von 1 (nicht relevant) bis 5 (sehr relevant) 7 / 30
WikiSE Wikipedia Search Engine Implementiert in Python Eingabe: Suchanfrage Benutzerdialog: welche Termgewichtung? welches Ähnlichkeitsmaß? Ermittlung der 10 ähnlichsten Wikipedia-Artikel (Vector Space Model) Ausgabe:.html-Datei mit Verlinkungen auf die 10 Artikel 8 / 30
Ergebnisse - Erwartete Ergebnisse Abbildung 1 : Erwartete Verteilung Je höher die Kosinusähnlichkeit, desto höher die Relevanz. Je niedriger die euklidische Distanz, desto höher die Relevanz. 9 / 30
Tatsächliche Ergebnisse - Beispiel 1 - Kosinusähnlichkeit Abbildung 2 : SF, NTF Abbildung 3 : tf-idf Beispiel 1a: Kosinusähnlichkeit für Query british writer mit einfachen Frequenzen (SF), normalisierten Termfrequenzen (NTF) und tf-idf. 10 / 30
Tatsächliche Ergebnisse - Beispiel 1 -Euklidische Distanz Abbildung 4 : SF Abbildung 5 : NTF Abbildung 6 : tf-idf Beispiel 1b: Euklidische Distanz für Query british writer mit SF, NTF und tf-idf 11 / 30
british writer Kosinus vs. ED Kosinusähnlichkeit für british writer für SF, NTF, tf-idf : Kurve wie erwartet SF und NTF: gleiche Kurve SF/NTF vs. tf-idf : nur geringer Unterschied ED für british writer SF: Kurve wie erwartet für NTF, tf-idf : Kurve nicht wie erwartet NTF, tf-idf : sehr ähnlich 12 / 30
Tatsächliche Ergebnisse - Beispiel 2 - Kosinusähnlichkeit Abbildung 7 : SF Abbildung 8 : NTF Abbildung 9 : tf-idf Beispiel 2a: Kosinusähnlichkeit für Query fictional character mit SF, NTF und tf-idf 13 / 30
Tatsächliche Ergebnisse - Beispiel 2 - Euklidische Distanz Abbildung 10 : SF Abbildung 11 : NTF Abbildung 12 : tf-idf Beispiel 2b: Euklidische Distanz für Query fictional character mit SF, NTF und tf-idf 14 / 30
fictional character Kosinus vs. ED Kosinusähnlichkeit für fictional character für SF, NTF, tf-idf : Kurven nicht wie erwartet SF, NTF: fast gleich ED für fictional character für SF, NTF, tf-idf : Kurven nicht ganz wie erwartet für NTF, tf-idf : Kurven sehr ähnlich 15 / 30
Evaluation In unserem Programm ist die erwartete Korrelation von berechneter Ähnlichkeit (beide Ahnlichkeitsmaße) und tatsächlicher Relevanz der darauf basierenden Suchergebnisse nicht festzustellen Die Termgewichtungen haben keinen wesentlichen Einfluss auf die Ergebnisse, d.h. eine Änderung der zugrundeliegenden Termgewichtung führt nicht zu einer Verbesserung der Korrelation von Ähnlichkeitswerten und tatsächlicher Relevanz 16 / 30
Konkrete Anwendung: BibleVerSE Bible Verse Search Engine 17 / 30
Motivation http://www.losungen.de/ Suche zu einem Bibelvers ähnliche Verse Bsp. Herrnhuter Losungen: passender Bibelvers aus dem Neuen Testament zu einem Vers aus dem alten Testament 18 / 30
Daten Testweise 5 Paulus-Briefe aus dem NT Römer, Galater, Epheser, Philipper, Kolosser Grund: durch gleichen Autor + ähnliche Adressaten wahrscheinlich ähnliche Wörter + ähnliche Themen Korpus: SCHLACHTER BIBEL 1951.txt-Datei http://unbound.biola.edu/ 19 / 30
Korpusauszug 20 / 30
BibleVerSE Funktioniert im Prinzip wie WikiSE, aber einige kleinere Anpassungen Eingabe: Bibelvers Benutzerdialog: welches Ähnlichkeitsmaß? welche Termgewichtung? Ermittlung der 15 ähnlichsten Bibelverse Ausgabe:.html-Datei mit den 15 Versen 21 / 30
BibleVerSE Demo 22 / 30
BibleVerSE 23 / 30
BibleVerSE Ergebnisdatei 24 / 30
Evaluation Abbildung 13 : Kosinusähnlichkeit Abbildung 14 : Euklidische Distanz Beispiel 3: Kosinusähnlichkeit und ED für Query Gnade sei mit euch und Friede von Gott, dem Vater und unsrem Herrn Jesus Christus NTF Entsprechen die tatsächlichen Ergebnisse den erwarteten Ergebnissen mehr als bei WikiSE? mehr Daten notwendig, um das zu entscheiden 25 / 30
Fazit Zwar keine quantitative Analyse, aber es macht in manchen Fällen durchaus einen Unterschied, welche Termgewichtung und welches Ähnlichkeitsmaß gewählt werden. Die erwartete Korrelation von berechneter Ähnlichkeit und subjektiver Relevanz der Suchergebnisse ist für kurze Queries nicht festzustellen Vermutungen VSM für BibleVerSE (und WikiSE-Erweiterung) vermutl. besser geeignet als für WikiSE, da ganze Dokumente verglichen werden Bei längeren Queries entsprechen die Ergebnisse vermutl. mehr den Erwartungen (zu wenige Daten zur Überprüfung) 26 / 30
Ausblick WikiSE und BibleVerSE Erweiterung des Korpus evtl. parallele Verarbeitung, wenn Korpora größer WikiSE Vergleich von ganzen Wikipedia-Artikeln Anwendung: Zusammenfügen von Wikipedia-Artikeln, die einander sehr ähnlich sind BibleVerSE einige Verbesserungen (z.b. Kodierungsprobleme lösen) Lemmatisierung (z. B. fröhliches fröhlich) 27 / 30
Diskussion Fragen? 28 / 30
Vielen Dank für die Aufmerksamkeit
Quellen I Reese et. al. (2010) Wikicorpus: A Word-Sense Disambiguated Multilingual Wikipedia Corpus Proceedings of 7th Language Resources and Evaluation Conference (LREC 10),La Valleta, Malta http://www.lsi.upc.edu nlp/papers/reese10.pdf 30 / 30