Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Automatische Klassifikation mit Maximum-Entropie-Modellen und Bootstrapping Anwendung bei der Bestimmung von Begriffstypen und der Wortsinn-Disambiguierung.

Ähnliche Präsentationen


Präsentation zum Thema: "Automatische Klassifikation mit Maximum-Entropie-Modellen und Bootstrapping Anwendung bei der Bestimmung von Begriffstypen und der Wortsinn-Disambiguierung."—  Präsentation transkript:

1 Automatische Klassifikation mit Maximum-Entropie-Modellen und Bootstrapping Anwendung bei der Bestimmung von Begriffstypen und der Wortsinn-Disambiguierung Christof Rumpf Heinrich-Heine-Universität Düsseldorf 10. Dezember 2008

2 Überblick Automatische Klassifikation –Probleme und Anwendungsfelder –Methoden Wortsinn-Disambiguierung –Problemstellung –Methoden Bestimmung von Begriffstypen –Problemstellung –Methoden

3 Klassifikation Klassifikation [lateinisch] die, allg.: Einteilung von Dingen oder Begriffen nach gemeinsamen Merkmalen Meyers Lexikon Online

4 Klassifikationsprobleme Systematik, Taxonomie –Hierarchische Ordnung der Lebewesen nach phänotypischen bzw genetischen Kriterien Wissensrepräsentation –Thesaurus, Ontologie, semantisches Netz Linguistik –Wortartenbestimmung –Wortsinnbestimmung Ambiguität –Begriffstypbestimmung –u.v.m. Gleiche Oberflächenformen mit verschiedenen Klassen- zugehörigkeiten

5 Automatische Klassifikation Die automatische Klassifikation ist ein Teilgebiet des maschinellen Lernens und somit auch der sogenannten künstlichen Intelligenz. Bei der automatischen Klassifikation geht es um das algorithmische Lernen eines Klassifikators, d.h. eine Funktion : Objekte Klassen (bzw 2 Klassen ). Verfahren zur automatischen Klassifikation überwacht supervised benötigt handannotierte Trainingsdaten: TEUER nicht überwacht unsupervised benötigt keine handannotierten Trainingsdaten: BILLIG halb-überwacht semi-supervised weniger handannotierte Trainingsdaten: PREISWERT Clustering: unbenannte Gruppen Klassifikation : benannte Klassen

6 Klassifikator Es gibt zwei konkurrierende Paradigmen zur Bestimmung von Klassifikatoren : Objekte Klassen Funktion Symbolische Methoden Logik, Automatentheorie Objektbeschreibung Klasse Deduktion aufgrund von Regeln Monotone vs nicht-monotone Systeme, Ausnahmen, Präferenzen, Formale Begriffsanalyse als symbolisches Clustering Statistische Methoden Wahrscheinlichkeits- und Informationstheorie P( Klasse | Objektbeschreibung ) bedingte Wahrscheinlichkeiten Beliebig feine Modellierung der Evidenz einzelner Faktoren in der Objektbeschreibung Die Objektbeschreibung enthält Merkmale des Objekts und ggf. des Kontexts, in dem das Objekt auftritt, z.B. in Form von Attribut-Wert-Paaren.

7 Statistischer Klassifikator Die primitivste Möglichkeit zur Berechnung eines statistischen Klassifikators besteht darin, gemeinsame Vorkommen von Klassen mit Kontexten in einem annotierten Trainingskorpus zu zählen: P(Klasse|Kontext) = Count(Klasse,Kontext) / Count(Klasse) Entscheidungsregel für automatische Klassifikation: arg max Klassse P(Klasse|Kontext) Das ist meistens keine gute Methode, denn es bleibt unberücksichtigt: neue Kontexte können auftreten, die im Modell nicht vorkommen unterschiedliche Evidenz einzelner Kontextmerkmale unterschiedliche Abhängigkeiten von Merkmalen untereinander Alternativen: Naiver Bayes-Klassifikator Maximum-Entropie-Modell

8 Naiver Bayes-Klassifikator Bayes Entscheidungsregel Wähle die Klasse höchster Wahrscheinlichkeit Gewinnerklasse = arg max Klasse P(Klasse|Kontext) Bayes Theorem Umkehrung bedingter Wahrscheinlichkeiten P(Klasse|Kontext) = P(Kontext|Klasse) P(Klasse) / P(Kontext) arg max Klasse P(Klasse|Kontext) = arg max Klasse P(Kontext|Klasse) P(Klasse) Naive Bayes Annahme Kontextmerkmale sind voneinander unabhängig P(Kontext|Klasse) = Merkmal Kontext P(Merkmal|Klasse) Berechnung eines Modells Training aufgrund eines Tainingskorpus P(Merkmal|Klasse) = Count(Merkmal,Klasse) / Count(Merkmal) P(Klasse) = Count(Klasse) / Count(Klassen) Automatische Klassifikation Disambiguierung aufgrund eines Modells arg max Klasse log(P(Klasse)) + Merkmal Kontext log(P(Merkmal|Klasse)) vgl. Schütze/Manning 1999

9 Maximum Entropie Modelle Grundlegendes –Entropie: Anzahl der benötigten Bits zur Darstellung von Ereignissen eines bestimmten Typs (Münze werfen: 1 Bit, Würfeln: 2 ½ Bit). –Prinzip der maximalen Entropie: Stecke nur die Information ins Modell, die sicher ist, d.h. beobachtet werden kann. Besonderheiten –Dekompositon der Kontexte in einzelne Merkmale oder deren (Re)- Kombination. –Möglichkeit der Kombination von Merkmalen aus heterogenen Quellen (Syntax, Semantik, Morphologie, …). –Berechnung der Gewichte (Evidenz) einzelner Merkmale oder deren (Re-)Kombination für jede Klasse über alle Kontexte.

10 Maximum Entropie Framework Wobei j > 0 das Gewicht für Merkmal f j ist, k die Gesamtzahl der binären Merkmale und Z(b) eine Normalisierungskonstante, die sicherstellt, dass a p(a|b) = 1 bzw. 100% vgl. Ratnaparkhi 1998

11 Kontextuelle und binäre Merkmale Die Gewichte für kontextuelle Merkmale werden in ME-Modellen über binäre Merkmale bestimmt. Diese setzen die kontextuellen Merkmale mit den Klassen in Beziehung. –Einfache binäre MerkmaleBeispiel –Komplexe binäre MerkmaleBeispiel

12 Generalized Iterative Scaling Es gibt kein analytisches Verfahren zur Bestimmung der Gewichte. Es gibt mehrere iterative Näherungsverfahren zur Bestimmung der Gewichte, die zu einer korrekten Verteilung p(a|b) konvergieren und dabei das Prinzip der maximalen Entropie einhalten. Wir verwenden Generalized Iterative Scaling (GIS): ist der Erwartungswert für Merkmal f j im Trainingskorpus ist der Erwartungswert für Merkmal f j in der letzten Iteration Die Konstante C ist die Gesamtzahl der aktiven binären Merkmale über alle Kontexte Initialisierung Iteration

13 Berechnung der Erwartungswerte Erwartungswert von f j im Trainingskorpus Erwartungswert von f j in der letzten Iteration wobei N die Anzahl der Kontexte im Trainingskorpus ist. Dieser Erwartungswert ist konstant über alle Iterationen. Dieser Erwartungswert muss in jeder Iteration aufwändig neu berechnet werden

14 Berechnung der Konstanten C Allgemein kann die Konstante C wie folgt berechnet werden: wobei B die Potenzmenge der Kontextmerkmale ist. Diese Art der Berech- nung ist aber in den meisten Anwendungsszenarien nicht praktikabel. Insbesondere gilt: Je grösser der Wert der Konstanten C, desto zögerlicher die Konvergenz von GIS. Es gibt den Ausweg, C über die Kontexte des Trainingskopus zu berechnen: Dies erfordert das Hinzufügen eines Korrekturmerkmals f l, mit l = k+1 : Was ist die maximale Anzahl, mit der ein binäres Merkmal in den Kontexten des Trainingskorpus aktiv sein kann?

15 Merkmale als Bitvektoren Wir haben eine Implementierung des Maximum Entropie Frameworks in der Programmiersprache Prolog, bei der die kontextuellen, als auch die binären Merkmale als Bitvektoren dargestellt werden. Jedem Kontextmerkmal entspricht eine Position im Vektor: cf i = 2 i-1 Sei die Bitvektorrepräsentation von Merkmal f j und die Bitvektorrepräsentation von Kontext b i, dann gilt Es ist damit sehr einfach und effizient festzustellen, ob ein Merkmal in einem Kontext aktiv ist, oder nicht.

16 Bootstrapping A5-Erweiterung ACLF, Christof Rumpf,

17 A5-Shortcomings Das ME-Verfahren in A5 ist supervised und setzt einen vollständig annotierten Trainingskorpus voraus. Die für manuelle Annotierungen vorgesehene Hilfskraft wurde nicht bewilligt. Die Annotierung von Begriffstypen ist eine sehr anspruchsvolle Aufgabe.

18 Lösung: Bootstrapping Unter Bootstrapping versteht man semi- supervised Lernverfahren, die teilweise aus annotierten und teilweise aus nicht annotierten Korpora lernen. In der CL sind am verbreitetsten: –Yarowski-Algoritmus (Yarowski 1995) –Co-Training (Blum & Mitchell 1998)

19 Yarowski-Algorithmus Besteht aus zwei Ebenen: –Inner Loop Berechnet für einen annotierten Trainingskorpus einen Klassifikator. –Outer Loop Benutzt den Klassifikator, um einen neuen Korpus zu annotieren. Der annotierte neue Korpus wird dem innneren Loop zur Neuberechnung des Klassifikators übergeben. Anschliessend wird wieder der innere Loop gestartet.

20 Yarowski-Varianten Berechnung des Klassifikators im inneren Loop: –Naive Bayes –EM: Expectation Maximization –ME: Maximum Entropie (gibt es das schon?) Reestimation im äusseren Loop: –Sequentiell: ein Merkmal pro Iteration –Vollständig: alle Merkmale pro Iteration

21 Abney 2004 Abney, Steven (2004): Understanding the Yarowski Algorithm. CL 30(3). Main Claims: –Der Yarowski-Algorithmus wird viel benutzt, ist aber mathematisch unklar. –Er optimiert eine objective function, bzw. maximiert negative log likelihood.

22 Abney 2004

23

24 Architektur des Frameworks in A5 Morphosyntaktische Analyse Trainingskorpus Trainingssample Maximum-Entropie-Modell msyn: Dependenz- grammatik-Parser Extraktion relevanter Kontextmerkmale Morphosyntaktische Analyse Testkorpus Testsample manuelle Annotierung von Begriffstypen Lernen Anwenden Generalized Iterative Scaling Annotierter Testkorpus Klassifikator lernen / anwenden

25 Trainingskorpus Handannotierte Version von Löbner (2003) Semantik Zur Zeit sind lediglich die lexikalisch zugrundeliegenden Klassen annotiert, nicht der Verwendungstyp (kommt noch…) Die Semantik ist das Teilgebiet der Linguistik, das sich mit Bedeutung befasst. Diese Art von Definition mag vielleicht ihrem Freund genügen, der Sie zufällig mit diesem Buch in der Hand sieht und Sie fragt, was denn nun schon wieder sei, aber als Autor einer solchen Einführung muss ich natürlich präziser erklären, was der Gegenstand dieser Wissenschaft ist.

26 Trainingskororpa: Erfordernisse Wir brauchen mehrere intellektuelle Annotatoren. Wir brauchen Stylebooks zur Anleitung intellektueller Annotatoren. Es müssen Evaluationskriterien zur Ermittlung von Übereinstimmungen bzw. Abweichungen intellektueller Annotatoren ermittelt werden.

27 Morphosyntaktische Analyse Die die DET Def FEM SG NOM Semantik semantik N FEM SG NOM ist sein V IND PRES SG P3 das das DET Def NEU SG NOM Teilgebiet teil#gebiet N NEU SG NOM der die DET Def FEM SG GEN Linguistik linguistik N FEM SG GEN

28 Dependenz-Baum main - ist subj - Semantik det - Die Def comp - Teilgebiet det - das Def det - der Def mod - Linguistik Gen Possessor Die Semantik ist das Teilgebiet der Linguistik, …

29 Trainingssample Extraktion relevanter Kontextmerkmale über reguläre Ausdrücke mit Perl- Skripten. Ergebnis: t(f1, [tnr=2, tok=semantik, suff=ik, num=sg, art=def]). t(r2, [tnr=5, tok=teil#gebiet, num=sg, art=def, poss=rgen]). t(f1, [tnr=7, tok=linguistik, suff=ik, num=sg, art=def]). t(f2, [tnr=12, tok=bedeutung, suff=ung, num=sg, art=none]). t(r2, [tnr=16, tok=art, num=sg, art=indef, poss=von]). t(f2, [tnr=18, tok=definition, num=sg, art=none]). t(r2, [tnr=22, tok=freund, num=sg, art=def]). t(so, [tnr=30, tok=buch, num=sg, art=indef]). t(r2, [tnr=33, tok=hand, num=sg, art=def]). t(f2, [tnr=49, tok=autor, num=sg, art=none]). t(r2, [tnr=52, tok=einführung, suff=ung, num=sg, art=indef]). t(f2, [tnr=61, tok=gegenstand, num=sg, art=def]). t(so, [tnr=63, tok=wissenschaft, num=sg, poss=lgen, art=none]).

30 Erste experimentelle Befunde Input: Ein Trainingssample mit 645 Tokens Klassen fe, f1, f2, so, r2, r3 23 verschiedene Kontexte mit Merkmalen art={def, indef, none}, poss={rgen, lgen, von}, suff={ik, ung, heit, keit, in, nis}

31 -Gewichte -Gewichte J A BV Alpha CF 1 f [suff=ik] 2 f [art=none] 3 f [art=def] 4 f [suff=ung] 5 f [suff=in] 6 f [suff=ik] 7 f [poss=von] 8 f [poss=rgen] 9 f [poss=lgen] 10 f [art=none] 11 f [art=indef] 12 f [art=def] J A BV Alpha CF 13 fe [art=none] 14 r [suff=ung] 15 r [suff=keit] 16 r [suff=ik] 17 r [poss=von] 18 r [poss=rgen] 19 r [art=none] 20 r [art=indef] 21 r [art=def] 22 r [suff=ung] 23 so [art=none]

32 Klassifikatoren I (A|B) p~(A|B) p^100(A|B) B (f1| 1) def (f2| 1) def (fe| 1) def (r2| 1) def (r3| 1) def (so| 1) def (f1| 2) ind (f2| 2) ind (fe| 2) ind (r2| 2) ind (r3| 2) ind (so| 2) ind (f1| 4) noa (f2| 4) noa (fe| 4) noa (r2| 4) noa (r3| 4) noa (so| 4) noa (A|B) p~(A|B) p^100(A|B) B (f1|66) ind heit (f2|66) ind heit (fe|66) ind heit (r2|66) ind heit (r3|66) ind heit (so|66) ind heit (f1|68) noa heit (f2|68) noa heit (fe|68) noa heit (r2|68) noa heit (r3|68) noa heit (so|68) noa heit (so, [art=none]) = (f1, [art=none]) = heit hat kein feature, weil es zu selten vorkommt p~(A|B) ensteht durch Auszählen der Kontexte p^100(A|B) ist der GIS-Klassifikator der 100sten Iteration

33 Klassifikatoren II (A|B) p~(A|B) p^100(A|B) B (f1|2060) noa lgen ung (f2|2060) noa lgen ung (fe|2060) noa lgen ung (r2|2060) noa lgen ung (r3|2060) noa lgen ung (so|2060) noa lgen ung (f1|2065) def rgen ung (f2|2065) def rgen ung (fe|2065) def rgen ung (r2|2065) def rgen ung (r3|2065) def rgen ung (so|2065) def rgen ung (f1|2081) def von ung (f2|2081) def von ung (fe|2081) def von ung (r2|2081) def von ung (r3|2081) def von ung (so|2081) def von ung (f1|2084) noa von ung (f2|2084) noa von ung (fe|2084) noa von ung (r2|2084) noa von ung (r3|2084) noa von ung (so|2084) noa von ung Alle Kontexte der Länge 3:

34 Fazit und Ausblick Das Maximum Entropie Framework erlaubt eine feine Analyse der Evidenz, die ein einzelnes Kontextmerkmal für die Klassifikation liefert. Die Auswahl der richtigen Merkmale ist essentiell für den Erfolg der automatischen Klassifikation. Unser Forschungsgegenstand besteht in erster Linie in der Untersuchung dieser Merkmale. Es werden Experimente mit kombinierten Merkmalen folgen, um die kombinierte Evidenz zu modellieren. Unerlässlich ist natürlich auch die Existenz von handannotierten Trainingskorpora, in denen die Verwendungstypen vermerkt sind, die wir leider noch nicht haben.


Herunterladen ppt "Automatische Klassifikation mit Maximum-Entropie-Modellen und Bootstrapping Anwendung bei der Bestimmung von Begriffstypen und der Wortsinn-Disambiguierung."

Ähnliche Präsentationen


Google-Anzeigen