Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Formale Grundlagen der Faktenextraktion mit endlichen Automaten

Ähnliche Präsentationen


Präsentation zum Thema: "Formale Grundlagen der Faktenextraktion mit endlichen Automaten"—  Präsentation transkript:

1 Formale Grundlagen der Faktenextraktion mit endlichen Automaten
Karin Haenelt

2 Themen Endlicher Automat Beispiele Definition Reguläre Ausdrücke
Äquivalenz: Reguläre Ausdrücke und endliche Automaten Operatoren für reguläre Ausdrücke in Programmiersprachen Reguläre Sprachen und menschliche Sprachen Vorgehensweise bei der Modellierung menschlicher Sprachen mit formalen Sprachen © Karin Haenelt, Formale Grundlagen der Faktenextraktion mit endlichen Automaten,

3 Endliche Automaten: Beispiele Kippschalter und Lexikon
an aus Start drücken Lexikon d 1 e 2 m 3 n r 5 s 4 7 6 © Karin Haenelt, Formale Grundlagen der Faktenextraktion mit endlichen Automaten,

4 Informelle Einführung Abstrakter Automat
ein abstrakter Automat ist ein mathematisches Modell für einfache Maschinen/Programme, die bestimmte Probleme lösen beschreibt nicht einen bestimmten Automaten, sondern gemeinsame Grundprinzipien einer Klasse von Automaten Grundlegende Komponenten Zustände Eingabesymbole Zustandsübergänge: reagiert auf Eingaben durch Übergang in einen anderen Zustand Zustände des Automaten Eingabe Ausgabe © Karin Haenelt, Formale Grundlagen der Faktenextraktion mit endlichen Automaten,

5 Definitionen Determinierter abstrakter Automat Mengentheoretische Definition (Version: Starke 1.1)
determinierter abstrakter Automat (Starke 1969: 22) A = (X, Y, Z, γ) heißt determinierter abstrakter Automat, falls X, Y, Z beliebige nichtleere Mengen sind, und γ eine auf Z  X definierte Funktion ist, deren Werte in Y  Z liegen. ■ Interpretation X Menge der Eingabesymbole Y Menge der Ausgabesymbole Z Menge der Zustände Z × X a b Y × Z A 1 B © Karin Haenelt, Formale Grundlagen der Faktenextraktion mit endlichen Automaten,

6 Definitionen Determinierter abstrakter Automat Mengentheoretische Definition (Version: Starke 1.2 = Version Mealy 1955) determinierter Mealy-Automat (Starke 1969: 22) Ein determinierter Automat A = (X, Y, Z, γ) heißt determinierter Mealy-Automat, falls für alle x X, zZ, γ(z,x) = [λ(z,x),δ(z,x)] ist, wobei λ die Ergebnis und δ die Überführungsfunktion von A ist. ■ Interpretation X Menge der Eingabesymbole Y Menge der Ausgabesymbole Z Menge der Zustände λ(z,x ) a b A B δ(z,x ) a b 1 © Karin Haenelt, Formale Grundlagen der Faktenextraktion mit endlichen Automaten,

7 Definitionen Endlicher Automat Mengentheoretische Definition
endlicher determinierter Automat (Starke 1969: 25) Ein determinierter Automat A = [X,Y,Z,δ,λ] heißt X-endlich, Y-endlich bzw. Z-endlich bzw. (X,Y)-endlich usw., wenn die jeweils angegebenen Mengen endlich sind. (X,Y,Z)-endliche Automaten bezeichnen wir schlechthin als endlich ■ © Karin Haenelt, Formale Grundlagen der Faktenextraktion mit endlichen Automaten,

8 Definitionen Mengentheoretische Notation endlicher Automaten – eine Standardnotation
EA = (Q,q0,F,Σ,Δ,,δ,σ,ρ) p,q  Q Zustände p q i o Zustand Folgezustand Eingabesymbol Ausgabesymbol w / Gewicht q0  Q Startzustand F  Q Endzustände i  Σ Eingabesymbole o  Δ Ausgabesymbole w   Gewichte δ(p,i) = q Zustandsübergangsfunktion σ(p,i,q) = o Ausgabefunktion ρ(p,i,o,q) = w Gewichtungsfunktion © Karin Haenelt, Formale Grundlagen der Faktenextraktion mit endlichen Automaten,

9 Einordnung endlicher Automaten Automatentheorie Endliche Automaten haben kein Gedächtnis
Mengen der Zustände, der Eingabesignale, der Ausgabesignale sind endlich kein Gedächtnis zur Speicherung durchlaufener Zustände: Übergang von Zustand zur Zeit t in Zustand zur Zeit t+1 nur abhängig von Zustand zur Zeit t und Eingabe im Zustand zur Zeit t Vorhergehende Zustände nur dadurch wirksam, dass sie über eine bestimmte Eingabe in den aktuellen Zustand geführt haben, und dieser aktuelle Zustand ein bestimmtes Ergebnis repräsentiert. B Bu Buc Buch Start u c h © Karin Haenelt, Formale Grundlagen der Faktenextraktion mit endlichen Automaten,

10 Typen endlicher Automaten Beispiele
Akzeptor Transduktor deterministisch 1 S q t 2 3 a 6 d 4 7 5 1 [ʃ] S q [t] t 2 3 [a] a dt 4 tt nicht-deterministisch 1 S 7 t 2 3 a 9 d 4 6 8 10 5 1 [ʃ] S q [t] t 2 3 [a] a 6 d 4 7 5 stochastisch 1 S/1 q t/1 2 3 a/1 6 d/.65 4 t/.35 7 5 [t] 1 [ʃ] S/1 q t/1 2 3 [a] a/1 6 d/.65 4 t/.35 7 5 © Karin Haenelt, Formale Grundlagen der Faktenextraktion mit endlichen Automaten,

11 Themen Endlicher Automat Beispiele Definition Reguläre Ausdrücke
Äquivalenz: Reguläre Ausdrücke und endliche Automaten Operatoren für reguläre Ausdrücke in Programmiersprachen Reguläre Sprachen und menschliche Sprachen Vorgehensweise bei der Modellierung menschlicher Sprachen mit formalen Sprachen © Karin Haenelt, Formale Grundlagen der Faktenextraktion mit endlichen Automaten,

12 Was sind reguläre Ausdrücke?
Reguläre Ausdrücke sind eine Notation zur Beschreibung der Sprachen, die mit endlichen Automaten erkannt werden können wie arithmetische Ausdrücke aus Konstanten und Operatoren aufgebaut zumeist bekannt aus ihrer Verwendung in Suchfunktionen in Betriebssystemen (grep) Texteditoren Textverarbeitungsprogrammen und Suchmaschinen Textmusterspezifikation in Programmiersprachen © Karin Haenelt, Formale Grundlagen der Faktenextraktion mit endlichen Automaten,

13 Reguläre Mengen, Reguläre Sprachen, Reguläre Ausdrücke Stephen Kleene
Stephen Kleene (Mathematiker) untersuchte (1956), welche Mengen von Zeichenketten von endlichen Automaten akzeptiert werden können entwickelte für diese Mengen eine syntaktische Charakterisierung: Komposition der Zeichenketten aus Elementen und Teilmengen nach bestimmten Regeln führte für diese Mengen den Begriff reguläre Mengen ein © Karin Haenelt, Formale Grundlagen der Faktenextraktion mit endlichen Automaten,

14 Reguläre Mengen, Reguläre Sprachen, Reguläre Ausdrücke Stephen Kleene
© Karin Haenelt, Formale Grundlagen der Faktenextraktion mit endlichen Automaten,

15 Definitionen (1) Symbol a
ein Symbol ist ein unzerlegbares Grundzeichen ■ unzerlegbar bezüglich der Art der Betrachtung, um die es gerade geht Beispiele: a, b, c dete, adje, nomn Alphabet Σ ein Alphabet ist eine endliche nichtleere Menge von Symbolen ■ © Karin Haenelt, Formale Grundlagen der Faktenextraktion mit endlichen Automaten,

16 Definitionen (2) Wort w ein Wort ist eine endliche Folge von Symbolen aus einem Alphabet. Wir schließen das leere Wort (Wort, das kein Zeichen enthält) in die Definition ein und bezeichnen es mit ε. ■ © Karin Haenelt, Formale Grundlagen der Faktenextraktion mit endlichen Automaten,

17 Definitionen (3) Sprache L
Eine Sprache ist die Menge aller endlichen Folgen w von Symbolen aus Σ. ■ es gilt  die leere Sprache ist eine Sprache {ε} die Menge, die nur ein leeres Wort enthält, ist eine Sprache Σ* die Universalsprache, die aus der Menge aller endlichen Folge von Symbolen aus einem Alphabet besteht, ist eine Sprache © Karin Haenelt, Formale Grundlagen der Faktenextraktion mit endlichen Automaten,

18 Definitionen (4) Reguläre Ausdrücke
Hopcroft/Ullmann 1988:29 © Karin Haenelt, Formale Grundlagen der Faktenextraktion mit endlichen Automaten,

19 Themen Endlicher Automat Beispiele Definition Reguläre Ausdrücke
Äquivalenz: Reguläre Ausdrücke und endliche Automaten Operatoren für reguläre Ausdrücke in Programmiersprachen Reguläre Sprachen und menschliche Sprachen Vorgehensweise bei der Modellierung menschlicher Sprachen mit formalen Sprachen © Karin Haenelt, Formale Grundlagen der Faktenextraktion mit endlichen Automaten,

20 Theorem von Kleene Kleene-Theorem: Eine Sprache ist genau dann regulär, wenn sie durch einen endlichen Automaten erkannt werden kann Kleenes Formulierung (1956): Synthesetheorem (Kleene, 1956, Theorem 3): Jede reguläre Sprache kann in einem endlichen Automaten dargestellt werden Analysetheorem (Kleene, 1956, Theorem 5): Jede in einem endlichen Automaten darstellbare Sprache ist regulär © Karin Haenelt, Formale Grundlagen der Faktenextraktion mit endlichen Automaten,

21 Reguläre Mengen, Reguläre Sprachen, Reguläre Ausdrücke Äquivalenzen
Endliche Automaten Reguläre Ausdrücke spezifizieren akzeptieren sind äquivalent regExΣ A(regExΣ) Sprachen L(regExΣ) = L (A(regExΣ)) nach einer Darstellung von Martin Kay, zitiert in Jurafsky/Martin (2000) © Karin Haenelt, Formale Grundlagen der Faktenextraktion mit endlichen Automaten,

22 Reguläre Ausdrücke, Reguläre Sprachen, endliche Automaten Äquivalenzen
L(e)= { (dete,adje,nomn), (dete,nomn), (nomn) } L(a)= { (dete,adje,nomn), e = (dete,adje,nomn) | (dete,nomn) | (nomn) e = (dete|ε) (adje|ε) nomn e = dete? adje? nomn dete 1 adje 2 nomn 3 spezifizieren akzeptieren © Karin Haenelt, Formale Grundlagen der Faktenextraktion mit endlichen Automaten,

23 Themen Endlicher Automat Beispiele Definition Reguläre Ausdrücke
Äquivalenz: Reguläre Ausdrücke und endliche Automaten Operatoren für reguläre Ausdrücke in Programmiersprachen Reguläre Sprachen und menschliche Sprachen Vorgehensweise bei der Modellierung menschlicher Sprachen mit formalen Sprachen © Karin Haenelt, Formale Grundlagen der Faktenextraktion mit endlichen Automaten,

24 Auswertungsreihenfolge der Operatoren regulärer Ausdrücke
Klammern sparen beim Schreiben: Wie für die algebraischen Operatoren ’+’ und ’∙’ gibt es auch für die Operatoren regulärer Ausdrücke eine festgelegte Auswertungsreihenfolge. Für den Ausdruck 4+5∙2 gilt, dass zuerst die Multiplikation und dann die Addition durchzuführen ist. Für die Operatoren für reguläre Ausdrücke gilt folgende Reihenfolge: Kleenesche Hülle (Symbol: *) Multiplikation bzw. Verkettung (Symbol ’∙’ oder ohne explizites Symbol). Addition bzw. Vereinigung (Symbol ’+’ oder ’|’). © Karin Haenelt, Formale Grundlagen der Faktenextraktion mit endlichen Automaten,

25 Auswertungsreihenfolge der Operatoren regulärer Ausdrücke Beispiel
Der Ausdruck de([mns]|ssen) ist äquivalent zu de([mns]|"ssen") oder "de"([mns]|"ssen") © Karin Haenelt, Formale Grundlagen der Faktenextraktion mit endlichen Automaten,

26 Basisoperatoren und abgeleitete Operatoren
© Karin Haenelt, Formale Grundlagen der Faktenextraktion mit endlichen Automaten,

27 Spezifikation von Zeichenmengen in Programmiersprachen
Beispiele [A-Z] A, Z und alle Buchstaben die in der Kodierung (z.B. ASCII) zwischen A und Z liegen [^A-E] alle Zeichen außer A, E und den Zeichen, die in der Kodierung (z.B. ASCII) zwischen A und E liegen © Karin Haenelt, Formale Grundlagen der Faktenextraktion mit endlichen Automaten,

28 Muster für nicht-reguläre Sprachen in Programmiersprachen
einige Programmiersprachen (z.B. Perl) erlauben auch Muster, die über reguläre Ausdrücke hinausgehen (z.B. Zusatzspeicher: Nummerierung der Muster und Kopieren der dem Muster entsprechenden Ausdrücke) Beispiel in Perl : (.*)\1 beliebige Zeichenfolge, verkettet mit der Zeichenfolge, die durch die erste Klammer beschrieben wird Zusatzspeicher zum Merken von Klammerinhalten erforderlich (endliche Automaten haben aber kein Gedächtnis) Muster mit unbegrenzter Zahl von Rückverweisen beschreiben nicht einmal kontextfreie Sprachen, Erkennung NP-vollständig © Karin Haenelt, Formale Grundlagen der Faktenextraktion mit endlichen Automaten,

29 Themen Endlicher Automat Beispiele Definition Reguläre Ausdrücke
Äquivalenz: Reguläre Ausdrücke und endliche Automaten Operatoren für reguläre Ausdrücke in Programmiersprachen Reguläre Sprachen und menschliche Sprachen Vorgehensweise bei der Modellierung menschlicher Sprachen mit formalen Sprachen © Karin Haenelt, Formale Grundlagen der Faktenextraktion mit endlichen Automaten,

30 Wortstruktur / Morphologie
weitgehend regulär Ausnahmen: ge-mach-t, um-zu-bau-en Ergänzung endlicher Automaten © Karin Haenelt, Formale Grundlagen der Faktenextraktion mit endlichen Automaten,

31 Satzstruktur: lokale Syntagmen - regulär
e = (dete,adje,nomn) | (dete,nomn) | (adje,nomn) | (nomn) A dete 1 adje 2 nomn 3 e = (dete|ε) (adje|ε) nomn e = dete? adje? nomn beschreiben erkennen L(e)= { (dete,adje,nomn), (dete,nomn), (adje, nomn), (nomn) } L(A)= { (dete,adje,nomn), (dete,nomn), (adje, nomn), (nomn) } © Karin Haenelt, Formale Grundlagen der Faktenextraktion mit endlichen Automaten,

32 Satzstruktur: Zentrale Einbettung nicht regulär – im allgemeinen Fall der unendlichen Einbettung
concatenations beyond regular languages centre embedding (S → a S b) obligatorily paired correspondences either ... or, if ... then can be nested inside each other © Karin Haenelt, Formale Grundlagen der Faktenextraktion mit endlichen Automaten,

33 Satzstruktur Ansatz: Begrenzung der Zentral-Einbettung
Sproat, 2002: observation: unbounded centre embedding does not occur in language use seems to be too complex for human mental capacities finite state modelling of bounded centre embedding S → the (man|dog) S1 (bites|walks) S1 → the (man|dog) S2 (bites|walks) S2 → the (man|dog) (bites|walks) S1 → ε S2 → ε 4 the 1 man 2 3 6 7 9 bites 8 5 dog walkes © Karin Haenelt, Reguläre Ausdrücke V 4.0,

34 Satzstruktur Ansatz: Finite-State Cascades (Abney)
L3 ---- S S T3 L2 ---- NP PP VP NP VP T2 L1 ---- NP P NP VP NP VP T1 L0 ---- D N P D N N V-tns Pron Aux V-ing the woman in the lab coat thought you were sleeping Regular-Expression Grammar

35 Faktenextraktion mit endlichen Automaten
kann umfassen Morphologie Syntagmen Lexik kombinierte Strukturen © Karin Haenelt, Formale Grundlagen der Faktenextraktion mit endlichen Automaten,

36 Themen Endlicher Automat Beispiele Definition Reguläre Ausdrücke
Äquivalenz: Reguläre Ausdrücke und endliche Automaten Operatoren für reguläre Ausdrücke in Programmiersprachen Reguläre Sprachen und menschliche Sprachen Vorgehensweise bei der Modellierung menschlicher Sprachen mit formalen Sprachen © Karin Haenelt, Formale Grundlagen der Faktenextraktion mit endlichen Automaten,

37 Approximierte Modellierung: Vorgehensweise: schrittweise Annäherung
Aufzählung (bei endlichen Mengen): {Asche, Ascheregen, Aschewolken, Aschefontänen, Vulkanasche} regelhafte Beschreibung, 1. Ansatz [Aa]sche[^ ]* Zyklen Test Evaluierung Asche, Ascheregen, Aschewolken, Aschefontänen, rasche, Flasche, Vulkanasche, Aschring Verfeinerung Erhöhung der Abdeckung: Minimierung der fehlenden Ausdrücke Erhöhung der Präzision: Minimierung der überflüssigen Ausdrücke © Karin Haenelt, Formale Grundlagen der Faktenextraktion mit endlichen Automaten,

38 Approximierte Modellierung: Evaluierung: Logische Einteilung der Datenbasis
Flasche R Aschewolke R auch, Auto, und, …. Aschring nicht-relevante ausgegebene Zeichenreihen relevante ausgegebene Zeichenreihen nicht-relevante nicht ausgeg. Zeichenreihen relevante nicht ausgeg. Zeichenreihen © Karin Haenelt, Formale Grundlagen der Faktenextraktion mit endlichen Automaten,

39 Approximierte Modellierung: Evaluierung: Logische Einteilung der Datenbasis
nicht-relevante ausgegebene Zeichenreihen relevante ausgegebene Zeichenreihen nicht-relevante nicht ausgeg. Zeichenreihen relevante nicht ausgeg. Zeichenreihen © Karin Haenelt, Formale Grundlagen der Faktenextraktion mit endlichen Automaten,

40 Approximierte Modellierung: Evaluierung: Standardmaße zur Evaluierung
Precision Genauigkeit des Suchprozesses Recall Vollständigkeit des Suchprozesses Fallout Effektivität des Suchprozesses © Karin Haenelt, Formale Grundlagen der Faktenextraktion mit endlichen Automaten,

41 Literatur Hopcroft, John E. und Jeffrey D. Ullman (1988). Einführung in die Automatentheorie, formale Sprachen und Komplexitätstheorie. Bonn u. a.: Addison-Wesley, 1988 (engl. Original Introduction to automata theory, languages and computation). Hopcroft, John E., Rajeev Motwani und Jeffrey D. Ullman (2002). Einführung in die Automatentheorie, Formale Sprachen und Komplexität. Pearson Studium engl. Original: Introduction to Automata Theory, Languages and Computation. Addison-Wesley. www-db.stanford.edu/~ullman/ialc.html Kleene, Stephen Cole (1956). Representations of Events in Nerve Sets and Finite Automata, In: C. E. Shannon and J. McCarthy, Hgg., Automata Studies, S. 3-42, Princeton, NJ, Princeton University Press. Jurafsky, Daniel und James H. Martin (2000): Speech and Language Processing. An Introduction to Natural Language Processing, Computational Linguistics and Speech Recognition. New Jersey: Prentice Hall. Sproat, Richard (2002). The Linguistic Significance of Finite-State Techniques. February 18, Starke, Peter H. (1969). Abstrakte Automaten. VEB Deutscher Verlag der Wissenschaften: Berlin (ältere, aber sehr gute mathematische Darstellung) © Karin Haenelt, Formale Grundlagen der Faktenextraktion mit endlichen Automaten,


Herunterladen ppt "Formale Grundlagen der Faktenextraktion mit endlichen Automaten"

Ähnliche Präsentationen


Google-Anzeigen