33
MBT: A Memory-Based Part of Speech Tagger-Generator Konstanze Pfüll UdS 16.06.2011

MBT: A Memory-Based Part of Speech Tagger-Generator Konstanze Pfüll UdS 16.06.2011

Embed Size (px)

Citation preview

Page 1: MBT: A Memory-Based Part of Speech Tagger-Generator Konstanze Pfüll UdS 16.06.2011

MBT: A Memory-Based Part of Speech Tagger-Generator

Konstanze Pfüll

UdS

16.06.2011

Page 2: MBT: A Memory-Based Part of Speech Tagger-Generator Konstanze Pfüll UdS 16.06.2011

Überblick

POS-Tagger

IGTree

Experimente

Page 3: MBT: A Memory-Based Part of Speech Tagger-Generator Konstanze Pfüll UdS 16.06.2011

Tagger-Architektur (1)

Konstruktion eines POS-Taggers: Gegeben: neues annotiertes Korpus 3 Datenstrukturen werden automatisch extrahiert:

Lexikon Fallbasierung für known words Fallbasierung für unknown words

(beide Fallbasierungen als IGTree implementiert)

Page 4: MBT: A Memory-Based Part of Speech Tagger-Generator Konstanze Pfüll UdS 16.06.2011

Tagger-Architektur (2)

Ablauf des Taggen: Jedes Wort wird im Lexikon nachgeschaut Wird es gefunden:

lexikalische Repräsentation wird abgefragt

Kontext wird bestimmt

resultierendes Muster wird in der known words - Fallbasierung nachgeschlagen

Page 5: MBT: A Memory-Based Part of Speech Tagger-Generator Konstanze Pfüll UdS 16.06.2011

Tagger-Architektur (3)

Wird es nicht gefunden:

lexikalische Repräsentation wird auf Grundlage seiner Form berechnet

Kontext wird bestimmt

resultierendes Muster wird in der unknown words Fallbasierung nachgeschlagen.

Page 6: MBT: A Memory-Based Part of Speech Tagger-Generator Konstanze Pfüll UdS 16.06.2011

Erstellung des Lexikons (1)

Für jedes Wort in T wird die Anzahl der Auftreten mit jeder Kategorie berechnet.

Page 7: MBT: A Memory-Based Part of Speech Tagger-Generator Konstanze Pfüll UdS 16.06.2011

Beispiel

Wall Street Journal Corpus Ersten 2 Mio Wörter = T Wort: once RB = 330 (330 mal als Adverb getaggt) IN = 77 ( 77 mal als Präposition)

Alle Kategorien mit weniger als 10% der Wörter wurden ignoriert

Wert wurde benutzt um Generalisierungs accuracy zu maximieren

Page 8: MBT: A Memory-Based Part of Speech Tagger-Generator Konstanze Pfüll UdS 16.06.2011

Erstellung des Lexikons (2)

Für jedes Wort in T wird die Anzahl der Auftreten mit jeder Kategorie berechnet.

Unter Verwendung der erhaltenen lexikalischen Definierung, wird ein neuer (möglicherweise ambiger) Tag für jede Wortart erstellt

Page 9: MBT: A Memory-Based Part of Speech Tagger-Generator Konstanze Pfüll UdS 16.06.2011

Beispiel

Once:

Kategorie, die alle Wörter repräsentiert, die sowohl Adverbien als auch Präpositionen sein können (RB-IN)

Frequentieller Ablauf wird berücksichtigt: Below:sowohl RB als auch IN aber häufiger IN als RB

-> (IN-RB)

Page 10: MBT: A Memory-Based Part of Speech Tagger-Generator Konstanze Pfüll UdS 16.06.2011

Known Words

Ein Fall besteht aus Information über ein Wort das getaggt werden soll, seinem linken und rechten Kontext und einer dazugehörigen Kategorie für das Wort in diesem Kontext

Es gibt verschiedene Typen von Information: vom Wort selbst Bis zu den komplexen lexikalischen Repräsentationen

Page 11: MBT: A Memory-Based Part of Speech Tagger-Generator Konstanze Pfüll UdS 16.06.2011

Beispiel

Fallbasierung für den ersten Satz im Korpus Pierre Vinken, 61 years old, will join the board as a

non execuive director nov. 29

Page 12: MBT: A Memory-Based Part of Speech Tagger-Generator Konstanze Pfüll UdS 16.06.2011

Beispiel

Pierre Vinken, 61 years old, will join the board as a non execuive director nov. 29

Page 13: MBT: A Memory-Based Part of Speech Tagger-Generator Konstanze Pfüll UdS 16.06.2011

Problem:

Speicherbasierte Ansätze sehr teuer

Warum? Jedes neue Wort im Kontext, das getaggt werden soll,

muss mit jedem Muster, das im Speicher ist, verglichen werden

Durch Verwendung von IGTree wird der Ansatz … rechnerisch billiger schneller

Page 14: MBT: A Memory-Based Part of Speech Tagger-Generator Konstanze Pfüll UdS 16.06.2011

Was ist IGTree?

IGTree = eine effiziente Repräsentation von Trainingsdaten für Memory-based Learning

großer Vorteil: optimale Kontextgröße für Disambiguierung wird dynamisch berechnet

Page 15: MBT: A Memory-Based Part of Speech Tagger-Generator Konstanze Pfüll UdS 16.06.2011

Wie funktioniert‘s? (1)

IGTree kombiniert 2 Algorithmen: Einen für das Komprimieren von Fallunterscheidungen in

Bäumen Einen für das Zurückholen von Klassifikationsinformationen aus

diesen Bäumen

Während der Konstruktion von IG-Entscheidungsbäumen, werden Fälle als Wege von verbundenen Knoten gespeichert.

Alle Knoten beinhalten einen Test und ein Klassenlabel (repräsentiert die Default-Klasse an diesem Punkt)

Page 16: MBT: A Memory-Based Part of Speech Tagger-Generator Konstanze Pfüll UdS 16.06.2011

Wie funktioniert‘s? (2)

Mithilfe des Information Gain wird die Reihenfolge, in der die Eigenschaften als Test im Baum genutzt werden, bestimmt.

Page 17: MBT: A Memory-Based Part of Speech Tagger-Generator Konstanze Pfüll UdS 16.06.2011

Information Gain ‚size‘ : 0,75 ‚shape‘ : 0,9 ‚number of holes‘ : 1,10

Page 18: MBT: A Memory-Based Part of Speech Tagger-Generator Konstanze Pfüll UdS 16.06.2011

Komprimierung

ähnliche Fälle teilen sich teilweise Wege

nur die Eigenschaftswerte, die seine Klassifikation eindeutig machen, werden im Baum abgespeichert

Pruning (Entfernung von Redundanz)

(Komprimierung beeinflusst Performance der IGTrees nicht)

Page 19: MBT: A Memory-Based Part of Speech Tagger-Generator Konstanze Pfüll UdS 16.06.2011

Wie funktioniert‘s? (4)

Blätterknoten: umfassen das eindeutige Klassenlabel, das mit einem Weg im Baum übereinstimmt.

Nicht-Terminale Knoten: umfassen Infos über Wahrscheinlichste Klassifikation oder Default-Klassifikation

die vom Weg bis jetzt durch den BaumKonstruktions-Algorithmus gegeben wird.

Page 20: MBT: A Memory-Based Part of Speech Tagger-Generator Konstanze Pfüll UdS 16.06.2011

Wie funktioniert‘s? (5)

Finden der Klassifikation eines neuen Falls bedingt Durchlaufen des Baumes und entweder...

Das Abfragen einer Klassifikation wenn ein Blatt erreicht ist, oder

Das Verwenden der Default-Klassifikation des letzten abgefragten nicht-terminierenden Knotens, falls eine feature-value-Abfrage fehlschlägt

Page 21: MBT: A Memory-Based Part of Speech Tagger-Generator Konstanze Pfüll UdS 16.06.2011

Algorithmus (1)

Page 22: MBT: A Memory-Based Part of Speech Tagger-Generator Konstanze Pfüll UdS 16.06.2011

Algorithmus (2)

Page 23: MBT: A Memory-Based Part of Speech Tagger-Generator Konstanze Pfüll UdS 16.06.2011

Komplexität (1)

Suchen eines Abfragemusters im Baum ist proportional zu F*log(V) (F= Anz. von features, V= das Mittel der Anzahl von Werten pro

feature, d.h. das Mittel der Verzweigungszahl des Baumes)

Page 24: MBT: A Memory-Based Part of Speech Tagger-Generator Konstanze Pfüll UdS 16.06.2011

Komplexität (2)

Suche im Baum ist unabhängig von Anzahl der Trainingsfälle

besonders nützlich für große Fallbasierungen

In der Praxis:Für die durchgeführten Part-of-Speech-tagging-Experimente ist die IGTree-Abfrage 100-200 mal schneller als eine normale speicherbasierte Abfrageund nutzt über 95% weniger Speicher

Page 25: MBT: A Memory-Based Part of Speech Tagger-Generator Konstanze Pfüll UdS 16.06.2011

Architektur eines Tagger-Generators

Page 26: MBT: A Memory-Based Part of Speech Tagger-Generator Konstanze Pfüll UdS 16.06.2011

Experiment 1

Vergleich von 3 speicherbasierten Lernalgorithmen: IB1 IB1-IG IG-Tree

Verwendung eines ddfat-Musters 100.000 Wörter im Trainingsset 10.000 Wörter im Testset Accuracy nur auf known words getestet

Page 27: MBT: A Memory-Based Part of Speech Tagger-Generator Konstanze Pfüll UdS 16.06.2011

Experiment 1

IGTree: Besser bzw. gleich gut bezüglich Generalisierungs-

accuracy 100 mal schneller im Tagger von neuen Wörtern Komprimiert die Fallbasierung auf 4% der

ursprünglichen Fallbasierung

Page 28: MBT: A Memory-Based Part of Speech Tagger-Generator Konstanze Pfüll UdS 16.06.2011

Experiment 2 - Lernkurve

Page 29: MBT: A Memory-Based Part of Speech Tagger-Generator Konstanze Pfüll UdS 16.06.2011

Experiment 3 - Gesamtgenauigkeit

Trainingsset: 2 Mio Wörter Testset: 200.000 Wörter

Page 30: MBT: A Memory-Based Part of Speech Tagger-Generator Konstanze Pfüll UdS 16.06.2011

Vorteile beim speicherbasierten Taggen mit IGTree

Performance von kleinen getaggten Korpora (300.000 - 400.000 getaggten Wörter): gut

Erklärung des Klassifikationsverhaltens des Systems

Flexible Einbindung der Informationsquellen

Page 31: MBT: A Memory-Based Part of Speech Tagger-Generator Konstanze Pfüll UdS 16.06.2011

Vorteile beim speicherbasierten Taggen mit IGTree

Automatische Auswahl des Kontextes

Relativ gute Auswirkungen auf unknown words ohne morphologische Analyse

Schnelles Lernen und Taggen

(Tagging-Geschwindigkeit in der derzeitigen Implementierung: über 1000 Wörter pro Sekunde)

Page 32: MBT: A Memory-Based Part of Speech Tagger-Generator Konstanze Pfüll UdS 16.06.2011

Referenzen

MBT: A Memory-Based Part of Speech Tagger-GeneratorWalter Daelemans, Jakub Zavrel Peter Berck, Steven Gillis

Workshop On Very Large Corpora (1996)

IGTree: Using Trees for Compression and Classification in Lazy Learning Algorithms

Walter Daelemans, Antal van den Bosch, Ton Weijters

Artificial Intelligence Review 11, 407-423, 1997

www.stackoverflow.com/questions/1833252/java-stanford-nlp-part-of-speech-labels

Page 33: MBT: A Memory-Based Part of Speech Tagger-Generator Konstanze Pfüll UdS 16.06.2011

Vielen Dank für Eure Aufmerksamkeit!