2. Natürliche Sprache
Rückblick Information Retrieval an der Schnittstelle zwischen Bibliotheks- und Kommunikationswissenschaft, Computerlinguistik und Informatik Informationsbedürfnis des Benutzers als Ausgangspunkt Inhalte meist natürlichsprachlich und unstrukturiert Invertierter Index als Indexstruktur Precision und Recall als Gütemaße 2
Motivation Herausforderungen bei Umgang mit natürlicher Sprache wie teilt man einen Text in zu indexierende Dokumente auf? wie teilt man ein Dokument in zu indexierende Wörter auf? Welche Wörter sollen in welcher Form indexiert werden? Mehrwortgruppen und Komposita (z.b. information retrieval, bundeskanzleramt) Unterschiedliche Formen des gleichen Worts (z.b. house/houses, laufen/laufe/lief) Synonyme und Polyseme (z.b. bank, present, automobile/car) 3
Inhalt 2.1 Aufteilung in Dokumente und Wörter 2.2 Normalisierung 2.3 Gesetz von Zipf und Stoppwörter 2.4 Reduktion auf Grund- oder Stammformen 2.5 Synonyme und Polyseme 2.6 Rechtschreibung 4
2.1 Aufteilung und Dokumente und Wörter Granularität von Dokumenten hängt von der Anwendung ab und muss vor Indexierung festgelegt werden z.b. als Webseite Office-Datei E-Mail mit ihren Anhängen Veröffentlichung (z.b. Buch oder Artikel) Kapitel eines Buches Abschnitt / Passage eines Artikels Satz 5
Aufteilung von Dokumenten Prinzipielles Vorgehen um vom Inhalt der Dokumente zu einem suchbaren Index zu gelangen Zeichen O N e i l _ m a d e _ t h e _ b o o k s _ c o v e r Tokenisierung Tokens O Neil made the book s cover Sprachabhängige Transformationen Terme oneil made book cover Indexierung Terme werden in einem invertierten Index indexiert und dadurch suchbar gemacht 6
Tokenisierung Tokenisierung (tokenization) durch Aufteilen an Leerzeichen (white spaces) und Entfernen von Satzzeichen (z.b.?,!,.) als Ausgangspunkt für Sprachen wie Englisch und Deutsch Sprach- und anwendungsabhängige Feinheiten z.b. Apostroph (z.b. l âme, coup d état, peter s, Johnsons ) Bindestriche (z.b. vingt-et-un, bread-and-butter) 7
2.2 Normalisierung Groß- und Kleinschreibung wird meist verworfen und alle Tokens in Kleinbuchstaben konvertiert (case folding) Beibehalten von Groß- und Kleinschreiben sinnvoll für Akronyme (z.b. CAT, SIAM, MIT) Familiennamen (z.b. Bush, Black, Green) Markennamen (z.b. General Motors, Apple) Definition solcher Ausnahmen z.b. mittels Wortlisten Benutzer formulieren Anfragen meist in Kleinbuchstaben 8
Normalisierung Akzente und Umlaute auf kanonische Form abgebildet école ecole, résumé resume saarbrücken saarbruecken, dächer daecher Bindestriche (hypen) werden für bestimmte Präfixe entfernt anti-discriminatory antidiscriminatory Akronyme werden auf kanonische Form abgebildet C.I.A. CIA, U.S.A. USA 9
2.3 Gesetz von Zipf und Stoppwörter George K. Zipf (1902 1950) beobachtete, dass für natürlichsprachliche Text gilt, dass die Häufigkeit eines Wortes f(w) umgekehrt proportional zu seinem Häufigkeitsrang r(w) ist, d.h.: f(w) Ã 1 r(w) mit 1 Quelle: http://en.wikipedia.org Das häufigste Wort kommt somit doppelt so oft vor wie das zweithäufigste Wort zehnmal so oft vor wie das Wort auf Rang 10 hundertmal so oft vor wie das Wort auf Rang 100 10
Gesetz von Zipf Beispiel: Worthäufigkeit und Häufigkeitsrang in The New York Times zwischen 1987 und 2007 log(häufigkeit) 4 5 6 7 0 1 2 3 4 log(häufigkeitsrang) 11
Gesetz von Zipf Anteil von c der Wortvorkommen entfällt auf das häufigste Wort (für Englisch gilt c 0.1) 10% der Wortvorkommen entfallen auf häufigstes Wort, 5% auf das zweithäufigste, 2.5% auf vierthäufigstes, etc. Verteilung der Worthäufigkeiten ist schief (skewed) und folgt einem sogenannten Potenzgesetz (power law) 12
Stoppwörter Stoppwörter sind Wörter die wenig Information enthalten, da sie in sehr vielen Dokumenten vorkommen und damit von geringem Nutzen für Beantwortung von Anfragen sind Eliminierung von Stoppwörtern führt zu Reduzierung zur Indexierung benötigten Speicherplatzes Verbesserung der Antwortzeiten Verbesserung der Ergebnisgüte (z.b. a movie that bill murray has directed) Verschlechterung der Ergebnisgüte (z.b. the who, let it be) 13
Stoppwörter Stoppwortliste wird meist manuell definiert, evtl. basierend auf vorheriger Analyse der Termhäufigkeiten a an and are as at be by for has has he in is it its of on that the to was were will with Alternativ kann Stoppwortliste automatisch bestimmt werden z.b. als alle Wörter, die in mehr als k% der Dokumente vorkommen in weniger als m% der Dokumente vorkommen Eliminierung von Stoppwörtern heute unüblich 14
2.4 Reduktion auf Grund- oder Stammformen Wörter in verschiedenen Beugungen (Flexionsformen) Konjugation bei Verben (z.b. gehen ging gegangen, go went gone) Deklination bei Substantiven (z.b. Boot Bootes Boote, boat boats, billig billige billiges billigen billigem) Komparation bei Adjektiven (z.b. cheap cheaper cheapest) Wörter mit gleichem Wortstamm (z.b. Fahrt Fahrer fahren, house housing, arbeit arbeiter arbeiten, work working) 15
Grundformreduktion Grundformreduktion (Lemmatisierung, lemmatization) erfolgt immer auf ein existierendes Wort Nominativ Singular bei Substantiven und Adjektiven (z.b. boot bootes boote boot) Infinitiv bei Verben (z.b. go went gone go) Bestimmung der korrekten Grundform eines Tokens ist oft schwierig und bedarf zusätzlicher Information z.b. Kontext Wortart (part of speech) Wörterbuch (z.b. um mice auf mouse abzubilden) 16
Stammformreduktion Stammformreduktion (stemming) erfolgt auf den Wortstamm, der kein existierendes Wort sein muss boat boat, boats boat go go, went went, gone gone vegetation veget, vegetables veget Regelbasierte Ansätze zur sukzessiven Suffixentfernung für schwach flektierte Sprachen wie Englisch Lovins (1968) : Regeln Porter (1980) : Regeln Krovetz (1983) : Regeln und Wörterbuch 17
Porters Algorithmus zur Stammformreduktion Suffixentfernung in fünf Schritten (suffix stripping) Schritt 1a: Wende Regel für längstmögliches Suffix an sses ss z.b. caresses caress ies i z.b. ponies poni ss ss z.b. caress caress Schritt 2: Falls Token aus zwei oder mehr Silben besteht ational ate z.b. relational relate tional tion z.b. conditional condition Algorithmus wird auf jedes Token separat angewendet 18
Porters Algorithmus zur Stammformreduktion Code & Demo zu Porters Stammformreduktion: http://snowballstem.org liseberg is an amusement park located in gothenburg, sweden, that opened in 1923. It is one of the most visited amusement parks in Scandinavia, attracting about three million visitors annually. among the noteworthy attractions is the wooden roller coaster balder... Quelle: https://en.wikipedia.org/wiki/liseberg liseberg is an amus park locat in gothenburg, sweden, that open in 1923. it is one of the most visit amus park in scandinavia, attract about three million visitor annual. among the noteworthi attract is the wooden roller coaster balder... 19
Grundform- und Stammformreduktion Grundform- und Stammformreduktion kann erreichen toleranteres Matchingvon Dokumenten im Boole schen Retrieval, das nicht mehr von spezifischer Wortform abhängt keine exakte Suche nach spezifischer Wortform mehr möglich kleineres Wörterbuch da weniger Terme zu indexieren sind Verbesserung von Recall (z.b. working conditions chinese factories) Verschlechterung von Precision (z.b. marine vegeation vs. marinated vegetables) Nutzen tendenziell höher für stark flektierte Sprachen 20
2.5 Synonyme und Polyseme Synonyme (z.b. car/automobile, buy/purchase) sind Wörter mit gleicher oder sehr ähnlicher Bedeutung wirken sich negativ auf Recall aus Polyseme (z.b. bank, present, bed, green, party) sind Wörter mit mehreren Bedeutungen wirken sich negativ auf Precision aus 21
Thesaurus Thesaurus (wörtlich: Wortschatz) ist eine Sammlung von Begriffen, die zueinander in Beziehung stehen, z.b. Synonyme (gleiche Bedeutung) (z.b. car automobile, holidays vacation) Antonyme (gegensätzliche Bedeutung) (z.b. lucky unlucky, expensive cheap) Hypernyme (Überbegriffe) (z.b. mammal rodent, machine computer) Hyponyme (Unterbegriffe) (z.b. rat rodent, rodent mammal) Meronyme (Teil-von-Beziehung) (z.b. tree forest, board computer) 22
WordNet WordNet ist eine lexikalische Datenbank in Englisch http://wordnet.princeton.edu 23
GermaNet GermaNet ist eine lexikalische Datenbank für Deutsch http://www.sfs.uni-tuebingen.de/germanet/ 24
2.6 Rechtschreibung Rechtschreibefehler sowie unterschiedliche Schreibweisen in Dokumenten und Anfragen wirken sich negativ auf Ergebnisgüte aus britnie spears, britany speers, britnee speers aple ipod, apple ifone, apple iped neighbor, neighbour prolog, prologue Enthält eine Anfrage ein unbekanntes Wort (z.b. ifone), so kann man versuchen, es durch ein ähnliches bekanntes Wort (z.b. iphone) zu ersetzen 25
Editierdistanz nach Levenshtein Editierdistanz zwischen zwei Zeichenketten s und t misst die minimal benötigte Anzahl folgender Operationen zur Umwandlung von s in t Einfügen eines Zeichens (insert) Löschen eines Zeichens (delete) Ersetzen eines Zeichens (replace) Beispiel: Distanz zwischen ifone und iphone beträgt 2 ersetze f durch p (d.h. ifone ipone) füge h ein (d.h. ipone iphone) 26
Editierdistanz nach Levenshtein Editierdistanz lässt sich mit dynamischer Programmierung in Zeit- und Platzkomplexität O( s t ) berechnen Idee: Editierdistanz d(i, j) der beiden Präfixe s[1... i ] und t[1... j ] lässt sich ermitteln als Minimum von d(i-1, j-1) + (s[i] == t[j]? 0 : 1) (ersetze letztes Zeichen) d(i, j-1) + 1 (füge letztes Zeichen) d(i-1, j) + 1 (lösche letztes Zeichen) Berechnen der Editierdistanz für Präfixe aufsteigender Länge mit Speicherung (Memoisation) in einer Tabelle 27
Editierdistanz nach Levenshtein Beispiel: Editierdistanz zwischen s = phisch und t = fish Editierdistanz zwischen s[1..3] = phi und t[1..2] = fi p h i s c h f i s h 1 2 3 4 2 2 3 3 3 2 3 4 4 3 2 3 5 4 3 3 6 5 4 3 28
Editierdistanz nach Levenshtein Beispiel: Editierdistanz zwischen s = phisch und t = fish f i s h p h i s c h 1 2 3 4 2 2 3 3 3 2 3 4 4 3 2 3 5 4 3 3 6 5 4 3 Ersetze p durch f Füge h ein Ersetze i nicht Ersetze s nicht Füge c ein Ersetze h nicht Backtracking erlaubt Bestimmen einer optimalen Folge von Editieroperationen 29
Soundex Abbildung ähnlich klingender Wörter auf kanonische Form durch die schrittweise Anwendung folgender Regeln Behalte ersten Buchstaben bei Ersetze A, E, I, O, U, H, W und Y durch die Zahl 0 Ersetze B, F, P und V durch die Zahl 1 Ersetze C, G, J, K, Q, S, X und Z durch die Zahl 2 Ersetze D und T durch die Zahl 3 Ersetze L durch die Zahl 4 Ersetze M und N durch die Zahl 5 Ersetze R durch die Zahl 6 Verschmelze Folgen der gleichen Zahl (z.b. 33311 31) Entferne die Zahl 0 und füge 000 am Ende an Kanonische Form sind die ersten vier Zeichen 30
Soundex Beispiel: lightening L0g0t0n0ng L020t0n0n2 L02030n0n2 L020305052 L23552000 L235 Beispiel: lightning L0g0tn0ng L020tn0n2 L0203n0n2 L02035052 L23552000 L235 31
Zusammenfassung Aufteilung in Dokumente anwendungsabhängig Tokenisierung und Normalisierung sprachabhängig Gesetz von Zipf sagt aus, dass einige Wörter sehr häufig vorkommen; Stoppwörter können eliminiert werden Stamm- und Grundformreduktion führt Beugungen des gleichen Wortes auf kanonische Form zurück Editierdistanz nach Levenshtein misst Ähnlichkeit als Anzahl benötigter Editieroperationen Soundex vereinheitlicht Wörter mit ähnlicher Aussprache 32
Literatur [1] C. D. Manning, P. Raghavan, H. Schütze: Introduction to Information Retrieval, Cambridge University Press, 2008 (Kapitel 2 & 3) 33