Einführung in die Computerlinguistik

Ähnliche Dokumente
Einführung in die Computerlinguistik

Einführung in die Computerlinguistik

Einführung in die Computerlinguistik

Grammatik Prüfung möglich, ob eine Zeichenfolge zur Sprache gehört oder nicht

Kapitel IV Formale Sprachen und Grammatiken

Alphabet, formale Sprache

Grammatiken. Grammatiken sind regelbasierte Kalküle zur Konstruktion von Systemen und Sprachen Überprüfung von Systemen und Sprachen

Sei Σ ein endliches Alphabet. Eine Sprache L Σ ist genau dann regulär, wenn sie von einem regulären Ausdruck beschrieben werden kann.

Einführung in die Computerlinguistik

Theoretische Informatik I

Syntax von Programmiersprachen

Abschnitt 5. Grammatiken

Syntax von Programmiersprachen

Programmiersprachen und Übersetzer

I.5. Kontextfreie Sprachen

Syntax von Programmiersprachen

6 Modellierung von Strukturen 6.1 Kontextfreie Grammatiken

Grundlagen der Theoretischen Informatik

Ein Fragment von Pascal

Sprachen sind durch folgenden Aufbau gekennzeichnet:

Grundlagen der Theoretischen Informatik

Theoretische Informatik I

7. Syntax: Grammatiken, EBNF

Kontextfreie Grammatiken

Formale Methoden 1. Gerhard Jäger 28. November Uni Bielefeld, WS 2007/2008 1/15

Sprachanalyse. Fachseminar WS 08/09 Dozent: Prof. Dr. Helmut Weber Referentin: Nadia Douiri

Grammatiken. Eine Grammatik G mit Alphabet Σ besteht aus: Variablen V. Startsymbol S V. Kurzschreibweise G = (V, Σ, P, S)

Automaten und formale Sprachen Klausurvorbereitung

Algorithmen und Datenstrukturen I - Exkurs Formale Sprachen -

Algorithmen und Datenstrukturen I - Exkurs Formale Sprachen -

1. Der Begriff Informatik 2. Syntax und Semantik von Programmiersprachen - 1 -

1. Der Begriff Informatik 2. Syntax und Semantik von Programmiersprachen - 1 -

Einführung Computerlinguistik. Konstituentensyntax II

Kapitel: Die Chomsky Hierarchie. Die Chomsky Hierarchie 1 / 14

Kontextfreie Grammatiken. Kontextfreie Grammatiken 1 / 48

Kontextfreie Grammatiken. Kontextfreie Grammatiken 1 / 45

Theorie der Informatik. Theorie der Informatik. 6.1 Einführung. 6.2 Alphabete und formale Sprachen. 6.3 Grammatiken. 6.4 Chomsky-Hierarchie

Was bisher geschah Chomsky-Hierarchie für Sprachen: L 0 Menge aller durch (beliebige) Grammatiken beschriebenen Sprachen L 1 Menge aller monotonen

DisMod-Repetitorium Tag 4

Einführung in die Computerlinguistik Formale Grammatiken rechtslineare und kontextfreie Grammatiken Kellerautomaten

Automatentheorie und formale Sprachen

Einführung in die Computerlinguistik

Formale Methoden 1. Gerhard Jäger 12. Dezember Uni Bielefeld, WS 2007/2008 1/22

Kapitel 2. Methoden zur Beschreibung von Syntax

Kontextfreie Grammatiken

Fragenkatalog 2. Abgabegespräch Formale Modellierung 3 Reguläre Sprachen

Das Halteproblem für Turingmaschinen

Theoretische Grundlagen des Software Engineering

2.2 Syntax, Semantik und Simulation

Theoretische Informatik Mitschrift

MODIFIKATIONEN DES TOMITA-PARSERS FÜR ID/LP UND FEATURE GRAMMARS Jens Woch

Grundlagen der Theoretischen Informatik

7. Formale Sprachen und Grammatiken

Definition 4 (Operationen auf Sprachen) Beispiel 5. Seien A, B Σ zwei (formale) Sprachen. Konkatenation: AB = {uv ; u A, v B} A + = n 1 An

Grundlagen der Theoretischen Informatik / Einführung in die Theoretische Informatik I

2.1 Grundlagen: Kontextfreie Grammatiken

Grundlagen der Theoretischen Informatik / Einführung in die Theoretische Informatik I

Einführung in die Computerlinguistik. Syntax II

Ogden s Lemma: Der Beweis (1/5)

Einführung in die Computerlinguistik Kontextfreie Grammatiken und. Kellerautomaten. Dozentin: Wiebke Petersen

Funktionale Programmierung ALP I. λ Kalkül WS 2012/2013. Prof. Dr. Margarita Esponda. Prof. Dr. Margarita Esponda

Grundbegriffe der Informatik

Theoretische Informatik I

Grammatiken und ANTLR

Algorithmen und Formale Sprachen

Nachklausur zur Vorlesung Informatik 3 mit einigen Anmerkungen zu Lösungen

Theoretische Informatik I

FORMALE SYSTEME. 3. Vorlesung: Endliche Automaten. TU Dresden, 17. Oktober Markus Krötzsch

Einführung in die Informatik: Programmierung und Software-Entwicklung, WS 17/18. Syntax. Philipp Wendler

Einführung in die Informatik: Programmierung und Software-Entwicklung, WS 18/19. Syntax. Dr. Philipp Wendler

Dank. Grundlagen der Theoretischen Informatik / Einführung in die Theoretische Informatik I. Reguläre Ausdrücke als Suchmuster für grep

Einführung in die Computerlinguistik: Morphologie und Automaten I

Syntax. Gilbert Beyer und Annabelle Klarl. Einführung in die Informatik. Zentralübung zur Vorlesung Einführung in die Informatik

Sprachen/Grammatiken eine Wiederholung

Übungsblatt 6. Vorlesung Theoretische Grundlagen der Informatik im WS 18/19

Grundlagen der Theoretischen Informatik

Formalismen für REG. Formale Grundlagen der Informatik 1 Kapitel 7 Kontextfreie Sprachen. Das Pumping Lemma. Abschlusseigenschaften

Kapitel 5: Syntaxdiagramme und Grammatikregeln

Formale Sprachen. Script, Kapitel 4. Grammatiken

WS06/07 Referentin: Katharina Blinova. Formale Sprachen. Hauptseminar Intelligente Systeme Dozent: Prof. Dr. J. Rolshoven

Vorlesung Automaten und Formale Sprachen Sommersemester Beispielsprachen. Sprachen

Einführung in die Computerlinguistik

F2 Zusammenfassung Letzte Tips zur Klausur

Kontextfreie Sprachen. Automaten und Formale Sprachen alias Theoretische Informatik. Sommersemester Kontextfreie Sprachen

Interdisziplinäre fachdidaktische Übung: Modelle für Sprachen in der Informatik. SS 2016: Grossmann, Jenko

Grundlagen der Theoretischen Informatik Musterlösungen zu ausgewählten Übungsaufgaben

Einführung in die Informatik. Programming Languages

6 Kontextfreie Grammatiken

Grundlagen der Informatik II

3. Vorlesung: Endliche Automaten Markus Kr otzsch Lehrstuhl Wissensbasierte Systeme

Theoretische Grundlagen der Informatik

Kapitel 3: Grundlegende Ergebnisse aus der Komplexitätstheorie Gliederung

Formale Sprachen. Formale Grundlagen (WIN) 2008S, F. Binder. Vorlesung im 2008S

Formale Sprachen. Grammatiken und die Chomsky-Hierarchie. Rudolf FREUND, Marian KOGLER

1 Formale Sprachen, reguläre und kontextfreie Grammatiken

Transkript:

Morphologiesysteme: Grundaufgaben Einführung in die Computerlinguistik Syntax I WS 2012/2013 Flexionsmorphologie: Lemmatisierung/Stemming veranstalt+et, Veranstaltung+en Ableitungs-/Derivationsmorphologie Veranstalt+ung, un+glaubwürdig Komposita-Zerlegung Fach+veranstaltung, glaub+würdig Manfred Pinkal Anforderungen an Morphologiesysteme Übergenerierung: Beispiele aus der Praxis Korrektheit Abdeckung (engl. coverage ) Effizienz Ein klassiches Beispiel aus der maschinellen Übersetzung (Systran, um 1980) Barbarei -> nightclub nightclub egg Bar bar ei Ein Beispiel aus der Rechtschreibkonversion (Corrigo, um 2000) Hufeisenniere -> Hufeisennniere Huf ei senn niere

Korrektheit Wortbildungsmorphologie: Ableitung/ Derivationsmorphologie Flexionsmorphologie: Typischerweise unproblematisch, Korrekt, wenn die Flexionsklassen im Lexikon korrekt angegeben sind. Kompositazerlegung: Übergenerierung ist ein massives Problem... wenn sie nicht durch Zusatzmechanismen behoben wird (Blockierungslisten, statistische Gewichtung) Derivationsmorphologie: Tendenziell Übergenerierung (Semiproduktivität) Tendenziell semantisch irreführende Identifikation von Stämmen Derivationsmorphologie ist in verschiedener Hinsicht unsystematisch. Beispiele: die Lesung bezeichnet den Akt des Vorlesens, die Singung ist ist unmöglich die Vorlesung gibt es, bezeichnet aber nicht den Akt des Vorlesens, die Schreibung nicht den Akt des Schreibens Viele Ableitungspräfixe und -suffixe sind semiproduktiv. Viele Ableitungen sind semantisch "nicht transparent": Sie haben eine konventionelle, lexikalisierte Bedeutung, die mit der Bedeutung des Stammworts nicht in systematischer Beziehung steht. Abdeckung Aktuelle Morphologiesysteme haben eine gute bis sehr gute Abdeckung (s. z.b. Word-Rechtschreibung) Abdeckung und Korrektheit allein sind für sich genommen keine guten Bewertungskriterien: Man kann Korrektheit billig auf Kosten der Abdeckung erreichen und umgekehrt. Ziel: Zuverlässigkeit bei gleichzeitig großer Abdeckung Effizienz Grundsätzlich: Morphologische Analyse benötigt lineare Zeit in Abhängigkeit von der Länge der Eingabe. Gute Morphologiesysteme liegen im mittleren µs-bereich (pro Wortform). Durch Vorverarbeitung, Zwischenspeichern von Analysen, Indexierung etc. lässt sich für größere Dokumente die Zeit pro Textwort weiter erheblich drücken. Das ist - exzellent für Online- und Offline-Rechtschreibkorrektur - akzeptabel für begrenzte Datensammlungen (große Textkorpora, Firmen-Intranet etc.) - zu langsam fürs Web-Suchmaschinen (Alternative: Datenexpansion mit Wortformengenerierung)

Morphologie und Syntax Gegenstand der Morphologie ist die Struktur des Wortes: der Aufbau von Wörtern aus Morphemen, den kleinsten funktionalen oder bedeutungstragenden Einheiten der Sprache. Gegenstand der Syntax ist die Struktur des Satzes: der Aufbau von Sätzen aus Wörtern. Morphologie beschreibt die grammatischen Eigenschaften von Wörtern, die durch Wortform oder Flexionsmorpheme kodiert werden. Syntax beschreibt die Interaktion der grammatischen Eigenschaften unterschiedlicher Wörter im Satz. Eigenschaften der syntaktischen Struktur [1] Er hat die Übungen gemacht. Der Student hat die Übungen gemacht. Der interessierte Student hat die Übungen gemacht. Student hat die Übungen gemacht. Student im ersten Semester hat die Übungen gemacht. Student im ersten Semester, der im Hauptfach Informatik studiert, hat die Übungen gemacht. Student im ersten Semester, der im Hauptfach, für das er sich nach langer Überlegung entschieden hat, Informatik studiert, hat die Übungen gemacht. Reale Beispiele aus der juristischen Praxis Eigenschaften der syntaktischen Struktur [2] "Der für die Werkstoffabholung auf der Annahme von drei Anund Abfahrten mit LKW, die Wertstoffe umfüllen, und zwei Anund Abfahrten eines LKW, der zuerst die volle Schrottmulde abholt und diese nach Leerung wiederabliefert, errechnete Beurteilungspegel..." "Bei der Umsetzung der Vorgaben der Gerichte für eine verfassungskonformeregelung der Überführung von Ansprüchen und Anwartschaften aus den Zusatz-und Sonderversorgungssystemen der ehemaligen DDR..." Peter hat der Dozentin das Übungsblatt heute ins Büro gebracht. Das Übungsblatt hat Peter der Dozentin heute ins Büro gebracht. Der Dozentin hat Peter heute das Übungsblatt ins Büro gebracht. Ins Büro hat heute Peter der Dozentin das Übungsblatt gebracht. Heute hat Peter das Übungsblatt der Dozentin ins Büro gebracht.? Ins Büro hat das Übungsblatt der Dozentin Peter heute gebracht. * Ins Büro heute Peter das Übungsblatt hat gebracht der Dozentin. * Ins heute Büro der Peter Dozentin das hat Übungsblatt gebracht.

Eigenschaften der syntaktischen Struktur [3] Eigenschaften der syntaktischen Struktur [3] Wie finden Sie stattdessen die angehängten Bilder? Das sind Fotos, die im Rahmen des TALK-Projektes entstanden sind, uns gehören, und von BMW schon freigegeben waren. Außerdem vermitteln sie besser den Bezug zur Forschung." Wie finden Sie stattdessen die angehängten Bilder? Das sind Fotos, die im Rahmen des TALK-Projektes entstanden sind, uns gehören, und von BMW schon freigegeben waren. Außerdem vermitteln sie besser den Bezug zur Forschung." Eigenschaften der syntaktischen Struktur Sätze setzen sich aus Satzteilen (Konstituenten) zusammen, die wiederum aus einfachen oder ihrerseits komplexen Satzteilen bestehen können. Sätze können deshalb beliebig lang und beliebig tief geschachtelt sein. Die Syntax natürlicher Sprachen erlaubt variable Wortstellung: Wörter und Konstituenten mit der gleichen Funktion können an unterschiedlichen Stellen eines Satzes stehen. Unterschiedliche Sprachen erlauben sehr unterschiedliche Freiheitsgrade. Die grammatischen Eigenschaften unterschiedlicher Wörter und Konstituenten im Satz hängen voneinander ab zum Teil auch in Fällen, in denen die Wörter und Konstituenten im Satz weit auseinander liegen. Fragen zur Repräsentation und Verarbeitung syntaktischer Strukturen Natürliche Sprachen sind Sprachen im Sinne der formalen Definition: Wörter sind die Symbole Das Lexikon ist das "Alphabet" (!) Korrekte Sätze sind "Worte" über dem Alphabet Die Menge der korrekten Sätze definieren die Sprache L "!* Können natürliche Sprachen mit endlichen Automaten beschrieben werden? Gibt es also für eine Sprache L einen Automaten A mit L(A) = L? Anders gefragt: Sind natürliche Sprachen durch einen regulären Ausdruck darstellbar, sind sie regulär? Kann eventuell jede denkbare Sprache mit einem endlichen Automaten beschrieben werden? Die Antwort ist Nein. Es gibt sehr einfache Sprachen, die sich nicht mit endlichen Automaten beschreiben lassen. Ein Beispiel: a n b n

Beschränkungen endlicher Automaten Beschränkungen endlicher Automaten Um Zugehörigkeit zu a n b n zu erkennen, müsste sich der Automat beliebig lange Ketten von a s merken können, weil er die Information anschließend beim Abarbeiten von b s braucht. Endliche Automaten haben eine fundamentale Einschränkung: Ihr Gedächtnis ist endlich, durch die Anzahl ihrer Zustände beschränkt. Ein Automat mit k Zuständen kann sich nur an einen beschränkten Kontext erinnern, nämlich maximal die k voraufgegangenen Symbole. (Anders ausgedrückt: Er kann nur bis k zählen.) Ein endlicher Automat kann deshalb nur solche Sprachen erkennen, bei denen die Zulässigkeit eines Symbols in einer Zeichenfolge auf der Grundlage eines Vorkontextes von begrenzter Länge entschieden werden kann. Diese Eigenschaft heißt die Markov-Eigenschaft. q n s q i/ q j Kontextfreie Grammatik: Ein neuer Formalismus Kontextfreie Grammatiken Kontextfreie Gramatiken ( KFG, CFG ) beschreiben Sprachen mithilfe von Ersetzungsregeln ( rewrite rules, Produktionen) der Form A # w Beispiel: S # asb, S # $ beschreibt L= a n b n A # u ist zu lesen als: Ein Vorkommen von A in einer Symbolfolge/ einem Wort kann durch u ersetzt werden Beispiel: aasbb wird zu aaasbbb oder zu aa$bb = aabb Eine solche Ersetzung ist ein zulässiger Ableitungsschritt. Wir schreiben: aasbb % aaasbbb bzw. aasbb % aabb. Um ein Wort über der Sprache {a, b} abzuleiten, beginnen wir mit S (dem Startsymbol ). Wir wenden Ersetzungsregeln an, bis ein Wort w entsteht, das nur noch a s und b s enthält ( Terminalsymbole ). Beispiel: S % asb % aasbb % aaasbbb % aaabbb Wir haben damit gezeigt, dass w durch die Regeln der Grammatik aus S ableitbar ist: w ein Wort der durch die Grammatik beschriebenen (erzeugten) Sprache L. Die Ableitung S % asb % aasbb % aaasbbb % aaabbb kann alternativ durch den Ableitungsbaum rechts dargestellt werden. Die Wurzel des Baumes ist das Startsymbol. Die Blätter des Baums ergeben, von links nach rechts gelesen und aneinandergehängt, das abgeleitete Wort. Alternative Schreibweise: [ S a[ S a[ S a[ S $ ] b] b] b] S a S b a S b a S b $

Kontextfreie Grammatik: Definitionen Kontextfreie Grammatik: Definitionen G = <V,!, P, S>, wobei V nicht-leere Menge von Symbolen! " V nicht-leere Menge von Terminalsymbolen P " (V-!)&V* nicht-leere Menge von Produktionsregeln S ' V-! das Startsymbol Die Beispielgrammatik für L= a n b n in formaler Notation: G1 = < {a,b,s}, {a,b}, {<S, asb>, <S, $>}, S > Für <A, (> ' P schreibt man üblicherweise A # (. Wenn A#( Produktion, w = uav und w = u(v, so ist w aus w in einem Schritt ableitbar: w % w w ist aus w ableitbar: w %* w gdw. es eine Folge von Ableitungsschritten gibt, die mit w beginnt und mit w endet. Die durch G erzeugte Sprache L(G) ist die Menge aller Worte über!*, die aus S ableitbar sind: L(G) = {w'!* S %* w} Sprachen, die durch kontextfreie Grammatiken erzeugt werden, heißen kontextfreie Sprachen. a n b n und die deutsche Satzstruktur Er hat die Übungen gemacht. Der Student hat die Übungen gemacht. Der interessierte Student hat die Übungen gemacht. Student hat die Übungen gemacht. Student im ersten Semester hat die Übungen gemacht. Student im ersten Semester, der im Hauptfach Informatik studiert, hat die Übungen gemacht. Student im ersten Semester, der im Hauptfach, für das er sich nach langer Überlegung entschieden hat, Informatik studiert, hat die Übungen gemacht. Geschachtelte Strukturen in natürlicher Sprache [ NP der an computerlinguistischen Fragestellungen interessierte Student im ersten Semester, [ SRel der [ NP das Fach, [ SRel das [ NP er ] nach langer Überlegung gewählt hat ] ], eifrig studiert] ] NP Det N SRel der Student RPro NP VT der Det N SRel studiert das Fach RPro NP VT das Pro wählte er

Ein zweites Beispiel "Der für die Werkstoffabholung auf der Annahme von drei An- und Abfahrten mit LKW, die Wertstoffe umfüllen, und zwei An- und Abfahrten eines LKW,der zuerst die volle Schrottmulde abholt und diese nach Leerung wiederabliefert, errechnete Beurteilungspegel..." Eine erste kontextfreie Grammatik für deutsche Sätze G1 = <V,!, P, S> mit V = {S, SRel, NP, VI, VT, N, Det, RPro} )!! = {schläft, arbeitet, studiert, wählte, Student, Fach, der, das, er} P = S # NP VI NP # Det N S # NP VT NP NP # Det N SRel SRel # RPro NP VT NP # Pro SRel # RPro VI VI # schläft N # Student VI # arbeitet N # Fach VT # studiert RPro # der VT # wählte RPro # das Det # der Det # das Pro # er Pro # sie Eine kontextfreie Grammatik für deutsche Sätze Notationskonventionen: Alternative Elemente werden durch zusammengefasst (manchmal auch durch geschweifte Klammern) Optionale Elemente werden durch runde Klammern notiert. Kompaktere Notation der Grammatik: S # NP VI S # NP VT NP SRel # RPro VI NP # Det N (SRel) SRel # RPro NP VT NP # Pro VI # schläft arbeitet VT # wählte studiert N # Student Fach RPro # der das Det # der das Pro # er sie Kontextfreie Sprachen und reguläre Sprachen Kontextfreie Sprachen sind eine echte Obermenge der regulären Sprachen: Jede reguläre Sprache kann von einer CFG erzeugt werden, und es gibt kontextfreie Sprachen, die nicht regulär sind. Endliche Automaten verwenden Iteration: Der Automat läuft beliebig oft durch Schleifen und arbeitet dabei Wiederholungen gleicher Symbolfolgen ab. Kontextfreie Grammatiken verwenden Rekursion. Produktionsregeln verwenden in der Definition eines Ausdruckstyps den Ausdruckstyp selbst: Nicht-Terminale Symbole tauchen auf der linken und der rechten Seite von Regeln auf. Die Regel S # asb besagt, dass ein Ausdruck, der mit einem a beginnt, mit einem b endet und dazwischen einen korrekten Ausdruck des Typs S enthält, ebenfalls ein korrekter Ausdruck vom Typ S ist. Rekursive Regeln erlauben die tiefe Schachtelung von Strukturen, und sie ermöglichen, dass eine Regel Elemente in Beziehung setzt, die in der Kette beliebig weit voneinander entfernt sind.

Kontextfreie Sprachen und natürliche Sprachen Kontextfreie Grammatiken sind ein Standardformalismus zur Beschreibung der Grammatik natürlicher Sprachen. Kontextfreie Grammatiken bilden den Standard-Formalismus zur syntaktischen Beschreibung von formalen Sprachen (Logik, Arithmetik, Programmiersprachen). Ein alternatives, der CGF ähnliches Format zur Beschreibung kontextfreier Sprachen ist BNF (die Backus-Naur-Form ). CFG: Konstituentenstruktur Anders als endliche Automaten beschreibt eine CFG nicht nur die zulässigen Ausdrücke einer Sprache, sondern implizit auch deren Struktur. Sie ordnet den Sätzen der Sprache Ableitungsbäume zu (auch Parse-Bäume genannt, Parsing = automatische syntaktische Analyse). Durch den Ableitungsbaum/ Parse-Baum werden Teilausdrücke (Teilketten) u des generierten Satzes einer Kategorie zugeordnet: dem nicht-terminalen Symbol A, aus dem u abgeleitet wurde. Wir nennen u eine Konstituente von der Kategorie A, und sagen, dass A die Elemente von u dominiert. Beispiel 1 CFG für einfache arithmetische Gleichungen: S # Term = Term Term # x y z Term # ( Term Op Term ) Op # + * : Term # Term Konstituenten der Kategorie Term sind zum Beispiel x, y, z, (x*(y+z)) Beispiel 2 Die obige CFG für ein Fragment des Deutschen. er ist eine Konstituente der Kategorie Pro er, der Student, der Student, der Informatik studiert sind Konstituenten der Kategorie NP der Informatik studiert - der arbeitet sind Konstituenten der Kategorie SRel