1 Endliche Automaten in der Sprachverarbeitung Eine kleine Einführung Karin Haenelt 6.12.2012.

58
1 Endliche Automaten in der Sprachverarbeitung Eine kleine Einführung Karin Haenelt 6.12.2012

Transcript of 1 Endliche Automaten in der Sprachverarbeitung Eine kleine Einführung Karin Haenelt 6.12.2012.

Page 1: 1 Endliche Automaten in der Sprachverarbeitung Eine kleine Einführung Karin Haenelt 6.12.2012.

1

Endliche Automaten in der SprachverarbeitungEine kleine Einführung

Karin Haenelt

6.12.2012

Page 2: 1 Endliche Automaten in der Sprachverarbeitung Eine kleine Einführung Karin Haenelt 6.12.2012.

Themen

Endliche Automaten Abstrakte Automaten Abstrakte endliche Automaten Automatentheorie: endl. Automaten haben kein Gedächtnis

Reguläre Ausdrücke Definition Äquivalenz: Reguläre Ausdrücke und endliche Automaten Operatoren für reguläre Ausdrücke in Programmiersprachen

Attraktivität endlicher Automaten für die Sprachverarbeitung Adäquatheit endlicher Automaten für die Sprachverarbeitung

© Karin Haenelt,Endliche Automaten in der Sprachverarbeitung, 6.12.2012

2

Page 3: 1 Endliche Automaten in der Sprachverarbeitung Eine kleine Einführung Karin Haenelt 6.12.2012.

Abstrakte Automaten

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

© Karin Haenelt,Endliche Automaten in der Sprachverarbeitung, 6.12.2012

3

Zustände des Automaten

Eingabe Ausgabe

Page 4: 1 Endliche Automaten in der Sprachverarbeitung Eine kleine Einführung Karin Haenelt 6.12.2012.

Abstrakte AutomatenDefinitionen

Seien X, Y, Z beliebige nichtleere Mengen, dann ist A = (X, Y, Z, γ)

ein determinierter abstrakter Automat, wenn γ eine auf Z X definierte Funktion ist, deren Werte in Y Z

liegen. B = (X, Y, Z, h)

ein nicht-deterministischer Automat, wenn h eine eindeutige Abbildung von Z X in *(Z Y) ist.

C = (X, Y, Z, H) ein stochastischer Automat, wenn H eine auf Z X definierte Funktion ist, die diskrete

Wahrscheinlichkeitsmaße über Y Z als Werte H(z,x) hat

© Karin Haenelt,Endliche Automaten in der Sprachverarbeitung, 6.12.2012

4

(Starke 1969: 22 (A), 121 (B), 211 (C))

Page 5: 1 Endliche Automaten in der Sprachverarbeitung Eine kleine Einführung Karin Haenelt 6.12.2012.

Abstrakte AutomatenInterpretation der Definition „determ. abstrakt. A“

A = (X, Y, Z, γ) ein determinierter abstrakter Automat, wenn γ eine auf Z X definierte Funktion ist, deren Werte in Y Z

liegen. (Starke 1969:22)

Interpretation

X Menge der Eingabesymbole

Y Menge der Ausgabesymbole

Z Menge der Zustände

© Karin Haenelt,Endliche Automaten in der Sprachverarbeitung, 6.12.2012

5

Z × X

a b

0 Y × Z Y × Z

A 1 B 1

Page 6: 1 Endliche Automaten in der Sprachverarbeitung Eine kleine Einführung Karin Haenelt 6.12.2012.

Abstrakte endliche AutomatenDefinitionen

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 ■

(X,Y,Z)-endliche nichtdeterministische Automaten …endlich.

(X,Y,Z)-endliche stochastische Automaten … endlich.

© Karin Haenelt,Endliche Automaten in der Sprachverarbeitung, 6.12.2012

6

Page 7: 1 Endliche Automaten in der Sprachverarbeitung Eine kleine Einführung Karin Haenelt 6.12.2012.

Endliche Automateneine Standardnotation

EA = (Q,q0,F,Σ,Δ,,δ,σ,ρ)

© Karin Haenelt,Endliche Automaten in der Sprachverarbeitung, 6.12.2012

7

p,q Q

δ(p,i) = q

σ(p,i,q) = o

i Σo Δ

Zustände

Eingabesymbole

Ausgabesymbole

Zustandsübergangsfunktion

Ausgabefunktion

p qi

o

Zustand FolgezustandEingabesymbol

Ausgabesymbol

w /

Gewicht

w Gewichte

ρ(p,i,o,q) = w Gewichtungsfunktion

F Q Endzustände

q0 Q Startzustand

Page 8: 1 Endliche Automaten in der Sprachverarbeitung Eine kleine Einführung Karin Haenelt 6.12.2012.

Typen endlicher AutomatenGraphische Darstellung

Akzeptoren Automaten ohne Ausgabe

Transduktoren Automaten mit Ausgabe

deterministisch jedem Paar [p,i] ist ein Paar [o,q]

eindeutig zugeordnet nicht-deterministisch

einem Paar [p,i] können mehreremögliche Paare [o,q] zugeordnet sein

stochastisch jedem Paar [p,i] ist für ein Paar [o,q]

ein Wahrscheinlichkeitsmaß zugeordnet

© Karin Haenelt,Endliche Automaten in der Sprachverarbeitung, 6.12.2012

8

p qio

qi

p

qoi

p :

pq2

q1

io2/w2

io1/w1

pq2

q1

io2

io1

Page 9: 1 Endliche Automaten in der Sprachverarbeitung Eine kleine Einführung Karin Haenelt 6.12.2012.

Automatentheorie

klassifiziert Algorithmen nach der Art des Speichers, der für die Implementierung zum Merken von Zwischergebnissen gebraucht wird

© Karin Haenelt,Endliche Automaten in der Sprachverarbeitung, 6.12.2012

9

Automat Speicher Turingmaschine unendlich großer Speicher linear beschränkter Automat endlich großer Speicher Kellerautomat (Push Down Automaton)

Kellerspeicher (Stack)

endlicher Automat kein zusätzlicher Speicher

Speziali-sierungen

Page 10: 1 Endliche Automaten in der Sprachverarbeitung Eine kleine Einführung Karin Haenelt 6.12.2012.

AutomatentheorieEndliche 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.

© Karin Haenelt,Endliche Automaten in der Sprachverarbeitung, 6.12.2012

10

B Bu Buc BuchStart B u c h

Page 11: 1 Endliche Automaten in der Sprachverarbeitung Eine kleine Einführung Karin Haenelt 6.12.2012.

Themen

Endliche Automaten Abstrakte Automaten Abstrakte endliche Automaten Automatentheorie: endl. Automaten haben kein Gedächtnis

Reguläre Ausdrücke Definition Äquivalenz: Reguläre Ausdrücke und endliche Automaten Operatoren für reguläre Ausdrücke in Programmiersprachen

Attraktivität endlicher Automaten für die Sprachverarbeitung Adäquatheit endlicher Automaten für die Sprachverarbeitung

© Karin Haenelt,Endliche Automaten in der Sprachverarbeitung, 6.12.2012

11

Page 12: 1 Endliche Automaten in der Sprachverarbeitung Eine kleine Einführung Karin Haenelt 6.12.2012.

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,Endliche Automaten in der Sprachverarbeitung, 6.12.2012

12

Page 13: 1 Endliche Automaten in der Sprachverarbeitung Eine kleine Einführung Karin Haenelt 6.12.2012.

Reguläre Mengen, Reguläre Sprachen, Reguläre AusdrückeStephen 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,Endliche Automaten in der Sprachverarbeitung, 6.12.2012

13

Page 14: 1 Endliche Automaten in der Sprachverarbeitung Eine kleine Einführung Karin Haenelt 6.12.2012.

Reguläre Mengen, Reguläre Sprachen, Reguläre AusdrückeStephen Kleene

© Karin Haenelt,Endliche Automaten in der Sprachverarbeitung, 6.12.2012

14

(Kleene, 1956)

Page 15: 1 Endliche Automaten in der Sprachverarbeitung Eine kleine Einführung Karin Haenelt 6.12.2012.

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,Endliche Automaten in der Sprachverarbeitung, 6.12.2012

15

Page 16: 1 Endliche Automaten in der Sprachverarbeitung Eine kleine Einführung Karin Haenelt 6.12.2012.

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,Endliche Automaten in der Sprachverarbeitung, 6.12.2012

16

Page 17: 1 Endliche Automaten in der Sprachverarbeitung Eine kleine Einführung Karin Haenelt 6.12.2012.

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,Endliche Automaten in der Sprachverarbeitung, 6.12.2012

17

Page 18: 1 Endliche Automaten in der Sprachverarbeitung Eine kleine Einführung Karin Haenelt 6.12.2012.

Sei ={a1, ..,an} ein Alphabet. Ein regulärer Ausdruck über st eine Sequenz von Symbolen, die durch wiederholte Anwendung der folgenden Regeln gebildet wird: Reguläre Ausdrücke sind bezeichnen 1) ø die reguläre Menge ø 2) ε die reguläre Menge {ε} 3) a für a die reguläre Menge {a} 4) wenn p und q reguläre Ausdrücke sind, die die Sprachen P und Q bezeichnen, dann ist 4 a)

p + q auch: p|q

die Vereinigung (auch Disjunktion oder Addition) die reguläre Menge P Q

4 b)

p ⋅q auch: pq

die Konkatenation (auch Multiplikation) die reguläre Menge P ⋅ Q

4 c)

p* die Kleenesche Hülle die reguläre Menge P* ■

Definitionen (4)Reguläre Ausdrücke

© Karin Haenelt,Endliche Automaten in der Sprachverarbeitung, 6.12.2012

18

Hopcroft/Ullmann 1988:29

Page 19: 1 Endliche Automaten in der Sprachverarbeitung Eine kleine Einführung Karin Haenelt 6.12.2012.

Themen

Endliche Automaten Abstrakte Automaten Abstrakte endliche Automaten Automatentheorie: endl. Automaten haben kein Gedächtnis

Reguläre Ausdrücke Definition Äquivalenz: Reguläre Ausdrücke und endliche Automaten Operatoren für reguläre Ausdrücke in Programmiersprachen

Attraktivität endlicher Automaten für die Sprachverarbeitung Adäquatheit endlicher Automaten für die Sprachverarbeitung

© Karin Haenelt,Endliche Automaten in der Sprachverarbeitung, 6.12.2012

19

Page 20: 1 Endliche Automaten in der Sprachverarbeitung Eine kleine Einführung Karin Haenelt 6.12.2012.

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,Endliche Automaten in der Sprachverarbeitung, 6.12.2012

20

Page 21: 1 Endliche Automaten in der Sprachverarbeitung Eine kleine Einführung Karin Haenelt 6.12.2012.

Reguläre Mengen, Reguläre Sprachen, Reguläre AusdrückeÄquivalenzen

© Karin Haenelt,Endliche Automaten in der Sprachverarbeitung, 6.12.2012

21

EndlicheAutomaten

ReguläreAusdrücke

spezifizieren

akzeptieren

sind äquivalent

regExΣ

A(regExΣ) ReguläreSprachen

L(regExΣ) =

L (A(regExΣ))

nach einer Darstellung von Martin Kay, zitiert in Jurafsky/Martin (2000)

Page 22: 1 Endliche Automaten in der Sprachverarbeitung Eine kleine Einführung Karin Haenelt 6.12.2012.

Äquivalenzen: Endliche Automaten, reguläre Sprachen, reguläre Ausdrücke

22

spezifizieren

akzeptieren

sind äquivalent

Reguläre Ausdrücke

de([mnrs]|“ssen“)

d0 1

e2

m3

nr

5s

4s

7e

6n

Endliche Automaten

{dem, den, der, des, dessen}

Reguläre Sprachen

© Karin Haenelt,Endliche Automaten in der Sprachverarbeitung, 6.12.2012

Page 23: 1 Endliche Automaten in der Sprachverarbeitung Eine kleine Einführung Karin Haenelt 6.12.2012.

Themen

Endliche Automaten Abstrakte Automaten Abstrakte endliche Automaten Automatentheorie: endl. Automaten haben kein Gedächtnis

Reguläre Ausdrücke Definition Äquivalenz: Reguläre Ausdrücke und endliche Automaten Operatoren für reguläre Ausdrücke in Programmiersprachen

Attraktivität endlicher Automaten für die Sprachverarbeitung Adäquatheit endlicher Automaten für die Sprachverarbeitung

© Karin Haenelt,Endliche Automaten in der Sprachverarbeitung, 6.12.2012

23

Page 24: 1 Endliche Automaten in der Sprachverarbeitung Eine kleine Einführung Karin Haenelt 6.12.2012.

Basisoperatoren und abgeleitete Operatoren

© Karin Haenelt,Endliche Automaten in der Sprachverarbeitung, 6.12.2012

24

r+ *rr r? )|( r r{2,4} rrrrrrrrr || [rst] )||( tsr

elementare Ausdrücke Ø leere Menge ε leeres Zeichen a elementares Symbol zusammengesetzte Ausdrücke r|s r oder s rs r verkettet mit s r* r beliebig oft (auch: null Mal)mit

sich selbst verkettet

abgeleitete OperatorenBasis

Page 25: 1 Endliche Automaten in der Sprachverarbeitung Eine kleine Einführung Karin Haenelt 6.12.2012.

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:

1. Kleenesche Hülle (Symbol: *)

2. Multiplikation bzw. Verkettung (Symbol ’∙’ oder ohne explizites Symbol).

3. Addition bzw. Vereinigung (Symbol ’+’ oder ’|’).

© Karin Haenelt,Endliche Automaten in der Sprachverarbeitung, 6.12.2012

25

Page 26: 1 Endliche Automaten in der Sprachverarbeitung Eine kleine Einführung Karin Haenelt 6.12.2012.

Muster für nicht-reguläre Sprachen in Programmiersprachen

einige Programmiersprachen (z.B. Perl) erlauben auch Muster, die über reguläre Ausdrücke hinausgehen

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,Endliche Automaten in der Sprachverarbeitung, 6.12.2012

26

Page 27: 1 Endliche Automaten in der Sprachverarbeitung Eine kleine Einführung Karin Haenelt 6.12.2012.

Themen

Endliche Automaten Abstrakte Automaten Abstrakte endliche Automaten Automatentheorie: endl. Automaten haben kein Gedächtnis

Reguläre Ausdrücke Definition Äquivalenz: Reguläre Ausdrücke und endliche Automaten Operatoren für reguläre Ausdrücke in Programmiersprachen

Attraktivität endlicher Automaten für die Sprachverarbeitung Adäquatheit endlicher Automaten für die Sprachverarbeitung

© Karin Haenelt,Endliche Automaten in der Sprachverarbeitung, 6.12.2012

27

Page 28: 1 Endliche Automaten in der Sprachverarbeitung Eine kleine Einführung Karin Haenelt 6.12.2012.

Attraktivität endlicher Automaten (1)

Effizienz in der Regel besonders effizientes Laufzeitverhalten:

Traversion deterministischer endlicher Automaten: O(n)

platzsparende Repräsentation

© Karin Haenelt,Endliche Automaten in der Sprachverarbeitung, 6.12.2012

28

Page 29: 1 Endliche Automaten in der Sprachverarbeitung Eine kleine Einführung Karin Haenelt 6.12.2012.

Attraktivität endlicher Automaten (2)

Grundlagen mathematisch wohl-fundiert daher systematisch und kontrolliert handhabbar

Softwaretechnik direkte Umsetzungen in Computerprogramme für

Datenstrukturen und Operationen auf den Datenstrukturen

abstrakte Spezifikation mit regulären Ausdrücken modulare und inkrementelle Entwicklung durch

Komponierbarkeit von Automaten

© Karin Haenelt,Endliche Automaten in der Sprachverarbeitung, 6.12.2012

29

Page 30: 1 Endliche Automaten in der Sprachverarbeitung Eine kleine Einführung Karin Haenelt 6.12.2012.

Anwendungsgebiete

© Karin Haenelt,Endliche Automaten in der Sprachverarbeitung, 6.12.2012

30

flaches Parsing

head-modifier-Paare

Textzerlegung

SpracherkennungÜbersetzung

Rechtschreib-Korrektur

LexikaRegeln

AnalyseSyntheseTransfer

Phonologie

Morphologie

Fakten-extraktion

Text:Sprechen

Sprechen:Text

part-of-speechtagging

Page 31: 1 Endliche Automaten in der Sprachverarbeitung Eine kleine Einführung Karin Haenelt 6.12.2012.

Endliche Automaten in der Sprachtechnologie

direkte Anwendung Spracherkennung, Sprechen:Text, Text:Sprechen Übersetzung, Faktenextraktion, Rechtschreibkorrektur,

SMS-Lexika direkte Anwendung für linguistische Teilaufgaben

Worterkennung, Textzerlegung Phonologie, Morphologie part-of-speech-tagging flaches Parsing head-modifier-Paare

© Karin Haenelt,Endliche Automaten in der Sprachverarbeitung, 6.12.2012

31

Page 32: 1 Endliche Automaten in der Sprachverarbeitung Eine kleine Einführung Karin Haenelt 6.12.2012.

Endliche Automaten in der Sprachtechnologie

Kompakte Repräsentation Wörterbücher Systemlexika und lexikalische Regeln

Morphologie, Phonologie partielle syntaktische Strukturen (chunks)

Indexierung von Texten Grundlage vieler Parsing-Mechanismen

anwendbar zum Parsing kontextfreier Sprachen (RTN, Woods, 1970)

erweiterbar für Kontext-Abhängigkeiten grundlegende Implementierungstechniken

© Karin Haenelt,Endliche Automaten in der Sprachverarbeitung, 6.12.2012

32

Page 33: 1 Endliche Automaten in der Sprachverarbeitung Eine kleine Einführung Karin Haenelt 6.12.2012.

Themen

Endliche Automaten Abstrakte Automaten Abstrakte endliche Automaten Automatentheorie: endl. Automaten haben kein Gedächtnis

Reguläre Ausdrücke Definition Äquivalenz: Reguläre Ausdrücke und endliche Automaten Operatoren für reguläre Ausdrücke in Programmiersprachen

Attraktivität endlicher Automaten für die Sprachverarbeitung Adäquatheit endlicher Automaten für die Sprachverarbeitung

© Karin Haenelt,Endliche Automaten in der Sprachverarbeitung, 6.12.2012

33

Page 34: 1 Endliche Automaten in der Sprachverarbeitung Eine kleine Einführung Karin Haenelt 6.12.2012.

Sind menschliche Sprachen reguläre Sprachen?

man muss unterscheiden zwischen der Komplexität der Sprache (= Menge von Zeichenketten) der Komplexität der Maschine zur Erkennung bestimmter

Konstruktionen eine reguläre Sprache kann auch eine kontextfreie oder

kontextsensitive Teilmenge enthalten; Beispiel: L = {apbq : p, q ∈ ℕ } ist eine reguläre Sprache Ein Automat, der L erkennt, erkennt auch

L1 = {anbn : n }∈ ℕ

L2 = {wwR: w ∈ Σ*} wR Spiegelbild der Sequenz w

© Karin Haenelt,Endliche Automaten in der Sprachverarbeitung, 6.12.2012

34

Mohri/Sproat 2006

Page 35: 1 Endliche Automaten in der Sprachverarbeitung Eine kleine Einführung Karin Haenelt 6.12.2012.

Sind menschliche Sprachen reguläre Sprachen?

Das Vorkommen der Teilmengen L1 und L2 sagt also nichts über die Komplexität von L

aber: die Teilmengen L1 und L2 sind möglicherweise linguistisch motivierte Teilmengen, die man besonders auszeichnen möchte

© Karin Haenelt,Endliche Automaten in der Sprachverarbeitung, 6.12.2012

35

Mohri/Sproat 2006

Page 36: 1 Endliche Automaten in der Sprachverarbeitung Eine kleine Einführung Karin Haenelt 6.12.2012.

Sind menschliche Sprachen reguläre Sprachen?Fehlerhafte Argumentationen in Lehrbüchern

Chomsky (1957): English is not a finite state language. (Korrekte Terminologie: regular language) Large classes of context-free languages such as some of those

used in Chomsky’s argument have been proved to be representable by weighted finite automata (Cortes & Mohri 2000).

Hobbs & al. (1997) Finite-state models are clearly not adequate for full natural language processing... . Every computational linguistics graduate student knows, from the first textbook that introduces the Chomsky hierarchy, that English has constructs, such as center embedding, that cannot be described by any finite-state grammar.

(Arnold 2000). Natural Languages are not Finite State (‘regular’). There is no FSA (hence type 3 grammar) that can generate anbn. Natural Languages are infinite, and have constructions like anbn, i.e. ‘nested dependencies’...

© Karin Haenelt,Endliche Automaten in der Sprachverarbeitung, 6.12.2012

36

Mohri/Sproat 2006

Page 37: 1 Endliche Automaten in der Sprachverarbeitung Eine kleine Einführung Karin Haenelt 6.12.2012.

Sind menschliche Sprachen reguläre Sprachen?

Morphologie Mittel der Wahl: Typ-3-Grammatiken, reguläre Sprachen einige Fälle können durch geringe spezielle Erweiterungen

endlicher Automaten effizienter behandelt werden Syntax

Für die endliche "Kernsprache" der tatsächlich vorkommenden akzeptablen Sätze des Deutschen (und anderer Sprachen) kann man annehmen, dass eine nicht-triviale Beschreibung als Typ-3-Sprache möglich ist

Der menschliche Analysator bewältigt nur bestimmte Schachtelungstiefen (für begrenzte Schachtelungstiefen reicht Typ-3)

© Karin Haenelt,Endliche Automaten in der Sprachverarbeitung, 6.12.2012

37

Kunze 2001: 143f

Page 38: 1 Endliche Automaten in der Sprachverarbeitung Eine kleine Einführung Karin Haenelt 6.12.2012.

Morphologie: Buchstabenfolgen und ihre Strukturen

© Karin Haenelt,Endliche Automaten in der Sprachverarbeitung, 6.12.2012

38

ententste

machlachbau

ententte

sitzpreisgießfließbeiß

weitgehend regulär Ausnahmen im Deutschen:

ge-mach-t(aber nicht: ge-mach-st; Gedächtnis für „ge“ erforderlich)

um-zu-bau-en Kompositionsmorphologie komplexer einfache Ergänzungen endlicher

Automaten zur zusätzlichen Handhabung von Einschränkungen

Page 39: 1 Endliche Automaten in der Sprachverarbeitung Eine kleine Einführung Karin Haenelt 6.12.2012.

Morphologie: Buchstabenfolgen und ihre Strukturen

Erweiterung endlicher Automaten für long distance dependencies: einfaches Gedächtnis: flags prozedurale Interpretation

mit Bitvektor-Operationen

© Karin Haenelt,Endliche Automaten in der Sprachverarbeitung, 6.12.2012

39

verb-stems

ε

ge

inflectionsuffixes

en

et

n

t

@set(+ge) @require(+ge)

@require(-ge)

Beesley/Karttunen, 2003

Page 40: 1 Endliche Automaten in der Sprachverarbeitung Eine kleine Einführung Karin Haenelt 6.12.2012.

Sätze: Wortfolgen und ihre Strukturen

hier sind zu unterscheiden

1. syntaktische Strukturen

1. die regulär darstellbar sind

2. die nicht regulär darstellbar sind

2. syntaktische Strukturen und semantische Strukturen

© Karin Haenelt,Endliche Automaten in der Sprachverarbeitung, 6.12.2012

40

Page 41: 1 Endliche Automaten in der Sprachverarbeitung Eine kleine Einführung Karin Haenelt 6.12.2012.

SatzstrukturSyntax vs. semantische/pragmatische Interpretation

Syntax erkennbar auf der Basis rein formaler Eigenschaften (Kasus,

Folge von Wortarten, ..) teilweise: reguläre Konstrukte teilweise: nicht-reguläre Konstrukte (sofern unendlich)

Interpretation alle Entscheidungen, die darüberhinaus auf der Basis der

Erfahrung der Sprachverwendung beruhen Satzstrukturen

sind Mischungen aus Syntax und Interpretation

© Karin Haenelt,Endliche Automaten in der Sprachverarbeitung, 6.12.2012

41

Page 42: 1 Endliche Automaten in der Sprachverarbeitung Eine kleine Einführung Karin Haenelt 6.12.2012.

Satzstruktur: Syntax: reguläre KonstrukteLokale Syntagmen

© Karin Haenelt,Endliche Automaten in der Sprachverarbeitung, 6.12.2012

42

L(e)= { (dete,adje,nomn), (dete,nomn), (adje, nomn), (nomn) }

L(A)= { (dete,adje,nomn), (dete,nomn), (adje, nomn), (nomn) }

e = (dete,adje,nomn) | (dete,nomn) | (adje,nomn) | (nomn)

e = (dete|ε) (adje|ε) nomn

e = dete? adje? nomn

beschreiben erkennen

0dete

1adje

2nomn

3nomn

nomn

adjeA

Page 43: 1 Endliche Automaten in der Sprachverarbeitung Eine kleine Einführung Karin Haenelt 6.12.2012.

Satzstruktur: Syntaxnicht-reguläre Konstrukte

viele beobachteten Konstrukte sind nur dann nicht-regulär, wenn die Folge der Wörter oder Sätze als unbegrenzt angenommen wird

keines der genannten Argumente ist interessant, wenn man die Länge der Sätze (oder Wörter) als begrenzt durch eine große Zahl N annimmt

alle Beweise einer höheren Komplexität als regulärer Sprachen gelten nicht, wenn die Phänomene nicht als unbegrenzt angenommen werden können.

so auch Chomsky 1957 der endliche Automat zur Beschreibung der Sprache kann

allerdings sehr groß werden

© Karin Haenelt,Endliche Automaten in der Sprachverarbeitung, 6.12.2012

43

Mohri/Sproat 2006

Page 44: 1 Endliche Automaten in der Sprachverarbeitung Eine kleine Einführung Karin Haenelt 6.12.2012.

the regulation

defines

which the commission

had formulated

which the Council

had elected

...

Satzstruktur: Syntaxnicht-reguläre Konstrukte (falls infinit)

Bei Fortsetzung der „Kernsprache“ ins Unendliche tritt ein „Komplexitätsschub“ bei Zentraleinbettungen auf

nicht mit Typ-3 Grammatik darstellbare Bedingungen: Anzahl der Nomina und Verben muss übereinstimmen gewisse Merkmale, die eine Kongruenz sichern, müssen

übereinstimmen Unendliche Einbettungen kommen in der Praxis nicht vor

© Karin Haenelt,Endliche Automaten in der Sprachverarbeitung, 6.12.2012

44

Page 45: 1 Endliche Automaten in der Sprachverarbeitung Eine kleine Einführung Karin Haenelt 6.12.2012.

Satzstruktur: Syntaxnicht reguläre Konstrukte (falls infinit)

obligatorische paarweise Korrespondenzen either ... or, if ... then können ineinander geschachtelt werden nicht regulär kontrollierbar: Anzahl der „öffnenden“ und

„schließenden“ Klammern und ihre Korrespondenz Unendliche Einbettungen kommen in der Praxis nicht vor

© Karin Haenelt,Endliche Automaten in der Sprachverarbeitung, 6.12.2012

45

Page 46: 1 Endliche Automaten in der Sprachverarbeitung Eine kleine Einführung Karin Haenelt 6.12.2012.

Satzstruktur: Syntaxnicht reguläre Konstrukte

überkreuzende Abhängigkeit (cross-serial dependency)

© Karin Haenelt,Endliche Automaten in der Sprachverarbeitung, 6.12.2012

46

x1 x2 x3 y1 y2 y3

John said that we the children-acc let Hans-dat help the house paint

Jan säit das mer d’chind em Hans es huus lönd hälfe aastriiche

Shieber, 1985

Page 47: 1 Endliche Automaten in der Sprachverarbeitung Eine kleine Einführung Karin Haenelt 6.12.2012.

Satzstruktur: Syntax / Semantiksyntakt. vs. semant./pragmat. Interpretation

© Karin Haenelt,Endliche Automaten in der Sprachverarbeitung, 6.12.2012

47

with stopper fasteningcork materialormade of withbottle closed

PP

PP

AP

NP

NP-c

AP

NPsyntactic link

semantic link

text structure

Page 48: 1 Endliche Automaten in der Sprachverarbeitung Eine kleine Einführung Karin Haenelt 6.12.2012.

Satzstruktur: Semantik

Überfrachtung der Syntax mit semantischer Interpretation führt zu kombinatorischer Explosion von Lesarten

Erzeugung kostet unnötige Rechenzeit bringt keinen verwertbaren Informationsgewinn (455 Lesarten!)

© Karin Haenelt,Endliche Automaten in der Sprachverarbeitung, 6.12.2012

48

List the sales of products in 1973 3 readings

List the sales of products produced in 1973 10 readings

List the sales of products in 1973 with the products in 1972

28 readings

List the sales of products produced in 1973 with the products produced in 1972

455 readings

Bod, 1998: 2

Page 49: 1 Endliche Automaten in der Sprachverarbeitung Eine kleine Einführung Karin Haenelt 6.12.2012.

„All Grammars Leak“ Edward Sapir, 1921

exakte und vollständige Charakterisierung aller wohlgeformten Äußerungen nicht möglich

Regeln nicht völlig unbegründet irgendwie müssen wir die Dinge lockerer handhaben, um der

Kreativität der Sprache Rechnung zu tragen

© Karin Haenelt,Endliche Automaten in der Sprachverarbeitung, 6.12.2012

49

Manning/Schütze, 1999, S. 3

Page 50: 1 Endliche Automaten in der Sprachverarbeitung Eine kleine Einführung Karin Haenelt 6.12.2012.

SatzstrukturenFlache Ansätze

finite-state approximation of sentence structures (Abney 1995) finite-state cascades: sequences of levels of regular expressions recognition approximation: tail-recursion replaced by iteration interpretation approximation: embedding replaced by fixed levels

finite-state approximation of phrase structure grammars (Pereira/Wright 1997) flattening of shift-reduce-recogniser no interpretation structure (acceptor only) used in speech recognition where syntactic parsing serves to rank

hypotheses for acoustic sequences finite-state approximation (Sproat 2002)

bounding of centre embedding reduction of recognition capacity flattening of interpretation structure

© Karin Haenelt,Endliche Automaten in der Sprachverarbeitung, 6.12.2012

50

Page 51: 1 Endliche Automaten in der Sprachverarbeitung Eine kleine Einführung Karin Haenelt 6.12.2012.

SatzstrukturAnsatz: Finite-State Cascades (Abney)

© Karin Haenelt,Endliche Automaten in der Sprachverarbeitung, 6.12.2012

51

D N P D N N V-tns Pron

the woman in the lab coat thoughtyou

Aux V-ing

were sleeping

NP P NP VP NP VP

NP PP VP NP VP

S S

L2 ----

L1 ----

L0 ----

L3 ----

T2

T1

T3

Finite-State Cascade

}{:}{:

|*?

:

3

2

1

PP* VP* PP NP* PP SLNP PPPL

ing-V AuxtnsVVPNNDNP

L

Regular-Expression

Grammar

Page 52: 1 Endliche Automaten in der Sprachverarbeitung Eine kleine Einführung Karin Haenelt 6.12.2012.

SatzstrukturFinite State Kaskaden (Abney)

patterns: reliable indicators of bits of syntactic structure parsing

easy-first parsing (easy calls first) proceeds by growing islands of certainty into larger and larger

phrases no systematic parse tree from bottom to top recognition of recognizable structures containment of ambiguity

prepositional phrases and the like are left unattached noun-noun modifications not resolved

no unification of features: additional bit vector operations possible

© Karin Haenelt,Endliche Automaten in der Sprachverarbeitung, 6.12.2012

52

Page 53: 1 Endliche Automaten in der Sprachverarbeitung Eine kleine Einführung Karin Haenelt 6.12.2012.

SatzstrukturFinite State Kaskaden (Abney) + Bitvektoren

© Karin Haenelt,Endliche Automaten in der Sprachverarbeitung, 6.12.2012

53

der masc sg fem sg neutr sg pl (m,f,n) nom gen dat acc nom gen dat acc nom gen dat acc nom gen dat acc 1 0 0 0 0 1 1 0 0 0 0 0 0 1 0 0 Mann masc sg fem sg neutr sg pl (m,f,n) nom gen dat acc nom gen dat acc nom gen dat acc nom gen dat acc 1 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 der Mann masc sg fem sg neutr sg pl (m,f,n) nom gen dat acc nom gen dat acc nom gen dat acc nom gen dat acc 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

Page 54: 1 Endliche Automaten in der Sprachverarbeitung Eine kleine Einführung Karin Haenelt 6.12.2012.

SatzstrukturAnsatz: 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

© Karin Haenelt,Endliche Automaten in der Sprachverarbeitung, 6.12.2012

54

4

the0 1

man2

3

6

7

the

manthe

man 9bites

8

5dog

dog

dogwalkes walkes

bites

walkesbiteswalkes

bites

bites

walkes

S → the (man|dog) S1 (bites|walks)S1 → the (man|dog) S2 (bites|walks)S2 → the (man|dog) (bites|walks)S1 → εS2 → ε

Page 55: 1 Endliche Automaten in der Sprachverarbeitung Eine kleine Einführung Karin Haenelt 6.12.2012.

Anwendungen endlicher Automaten im Information Retrieval: Beispiele

Dokumentindex als endlicher Automat kompakt, schnell traversierbar

Faktenextraktion mit endlichen Automaten schnelle Durchsuchung sehr großer Textmengen linguistisch adäquat für

schablonenartige Information teilstrukturierte Information (HTML)

abstrakte Sprache für die Anwendung: spezifizierbar mit regulären Ausdrücken

Dokumentanalyse/Sprachverarbeitung Traversion eines deterministischen endlichen Automaten: O(n) linguistisch adäquat für Morphologie und Syntax

© Karin Haenelt,Endliche Automaten in der Sprachverarbeitung, 6.12.2012

55

Page 56: 1 Endliche Automaten in der Sprachverarbeitung Eine kleine Einführung Karin Haenelt 6.12.2012.

Literatur

Abney, Steven (1995). Partial Parsing via Finite-State Cascades. In: Journal of Natural Language Engineering, 2(4): 337-344. http://www.vinartus.net/spa/97a.pdf

Beesley Kenneth R. und Lauri Karttunen (2003). Finite-State Morphology. Distributed for the Center for the Study of Language and Information. (CSLI- Studies in Computational Linguistics)

Bod, Rens (1998). Beyond Grammar. An Experienced-Based Theory of Language. CSLI Lecture Notes, 88, Standford, California: Center for the Study of Information and Language

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

56© Karin Haenelt,Endliche Automaten in der Sprachverarbeitung, 6.12.2012

Page 57: 1 Endliche Automaten in der Sprachverarbeitung Eine kleine Einführung Karin Haenelt 6.12.2012.

Literatur

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, 1956. Princeton University Press.

Kunze, Jürgen (2001). Computerlinguistik. Voraussetzungen, Grundlagen, Werkzeuge. Vorlesungsskript. Humboldt-Universität zu Berlin.

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.

Manning, Christopher D.; Schütze, Hinrich (1999). Foundations of Statistical Natural Language Processing. Cambridge, Mass., London: The MIT Press. http://www.sultry.arts.usyd.edu.au/fsnlp

57© Karin Haenelt,Endliche Automaten in der Sprachverarbeitung, 6.12.2012

Page 58: 1 Endliche Automaten in der Sprachverarbeitung Eine kleine Einführung Karin Haenelt 6.12.2012.

Literatur

Mehryar Mohri und Richard Sproat (2006). On a Common Fallacy in Computational Linguistics. In: Mickael Suominen, Antti Arppe, Anu Airola, Orvokki Heinämäki, Matti Miestamo, Urho Määttä, Jussi Niemi, Kari K. Pitkänen and Kaius Sinnemäki (Hrsg.). A Man of Measure: Festschrift in Honour of Fred Karlsson on this 60th Birthday. pages 432-439. SKY Journal of Linguistics, Volume 19, 2006.

Pereira, Fernando C. N. and Rebecca N. Wright (1997). Finite-State Approximation of Phrase-Structure Grammars. In: Roche/Schabes 1997.

Shieber, Stuart. 1985. Evidence against the context-freeness of natural language. Linguistics and Philosophy 8: 333–343.

Sproat, Richard (2002). The Linguistic Significance of Finite-State Techniques. February 18, 2002. http://www.research.att.com/~rws

Starke, Peter H. (1969). Abstrakte Automaten. VEB Deutscher Verlag der Wissenschaften: Berlin (ältere, aber sehr gute mathematische Darstellung)

58© Karin Haenelt,Endliche Automaten in der Sprachverarbeitung, 6.12.2012