Parsing-EinfŸhrung Ð 1



Ähnliche Dokumente
Formale Sprachen und Grammatiken

Programmiersprachen und Übersetzer

Grundbegriffe der Informatik

Theorie der Informatik

1 Mathematische Grundlagen

Grundlagen der Theoretischen Informatik, SoSe 2008

2.11 Kontextfreie Grammatiken und Parsebäume

Theoretische Informatik I

Listen. bersicht. Zweck. Listen allgemein Listen in Prolog. Programmiertechniken mit Listen. Erstellen von Prolog-Programmen mit Listen

4. AUSSAGENLOGIK: SYNTAX. Der Unterschied zwischen Objektsprache und Metasprache lässt sich folgendermaßen charakterisieren:

Primzahlen und RSA-Verschlüsselung

Was meinen die Leute eigentlich mit: Grexit?

Informationsblatt Induktionsbeweis

Grammatiken in Prolog

Papierverbrauch im Jahr 2000

Grundbegriffe der Informatik

4. 4. Algorithmen und Datenstrukturen in deskriptiven Programmiersprachen

ONLINE-AKADEMIE. "Diplomierter NLP Anwender für Schule und Unterricht" Ziele

Wortfamilie zahl- Wortfamilie wahl- Wortfamilie fahr-

Lösungen zum Aufgabenblatt 9 Symbolisches Programmieren

Motivation. Formale Grundlagen der Informatik 1 Kapitel 5 Kontextfreie Sprachen. Informales Beispiel. Informales Beispiel.

Holiday plans: ein Gespräch über Urlaubspläne


Zeichen bei Zahlen entschlüsseln

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren

Deutsches Rotes Kreuz. Kopfschmerztagebuch von:

Daten sammeln, darstellen, auswerten

Theoretische Grundlagen der Informatik

Mathematische Grundlagen der Informatik 2

Grammatiken. Einführung

Einführung in die Computerlinguistik

1. Formale Sprachen 1.2 Grammatiken formaler Sprachen

Repetitionsaufgaben Wurzelgleichungen

Einführung Computerlinguistik. Konstituentensyntax II

2. Mathematik Olympiade 2. Stufe (Kreisolympiade) Klasse 7 Saison 1962/1963 Aufgaben und Lösungen

Übung - Konfigurieren einer Windows 7-Firewall

Leichte-Sprache-Bilder

Logische Folgerung. Definition 2.11

Informatik I Tutorium WS 07/08

Lichtbrechung an Linsen

Thematische Abfrage mit Computerlinguistik

Studienplatzbeschaffung

Professionelle Seminare im Bereich MS-Office

Erstellen von x-y-diagrammen in OpenOffice.calc

Grundlagen der Künstlichen Intelligenz

Statuten in leichter Sprache

Die Größe von Flächen vergleichen

150 Rechtschreib- 5. bis 10. Klasse. übungen Regeln und Texte zum Üben. 5. bis 10. Klasse

1. Welche Tiere sind hier versteckt? 4P/

Mit Papier, Münzen und Streichhölzern rechnen kreative Aufgaben zum Umgang mit Größen. Von Florian Raith, Fürstenzell VORANSICHT

Lernerfolge sichern - Ein wichtiger Beitrag zu mehr Motivation

Tipp III: Leiten Sie eine immer direkt anwendbare Formel her zur Berechnung der sogenannten "bedingten Wahrscheinlichkeit".

Die SPD und die Grünen machen im Niedersächsischen Landtag. Alle Menschen sollen in der Politik mitmachen können.

BERECHNUNG DER FRIST ZUR STELLUNGNAHME DES BETRIEBSRATES BEI KÜNDIGUNG

Neun Strategien der Partnerarbeit

Rock-Band. Einleitung. Scratch. In diesem Projekt lernst du, wie du deine eigenen Musikinstrumente programmieren kannst! Activity Checklist

SCHRITT 1: Öffnen des Bildes und Auswahl der Option»Drucken«im Menü»Datei«...2. SCHRITT 2: Angeben des Papierformat im Dialog»Drucklayout«...

1. Man schreibe die folgenden Aussagen jeweils in einen normalen Satz um. Zum Beispiel kann man die Aussage:

Mein persönlicher Lerncheck: Einen Bericht schreiben

Unterrichtsformalitäten für Mathematik, 3. Klasse

Kulturelle Evolution 12

AGROPLUS Buchhaltung. Daten-Server und Sicherheitskopie. Version vom b

Werte und Grundsätze des Berufskodexes für interkulturell Dolmetschende. Ethische Überlegungen: Was ist richtig? Wie soll ich mich verhalten?

Beispiel(unten ist der Spielfeldrand):

Mediator 9 - Lernprogramm

Informationen zum Ambulant Betreuten Wohnen in leichter Sprache

Geld Verdienen im Internet leicht gemacht

Proofreading Was solltest Du beim Korrekturlesen beachten?

Das Leitbild vom Verein WIR

Privatinsolvenz anmelden oder vielleicht sogar vermeiden. Tipps und Hinweise für die Anmeldung der Privatinsolvenz

Der Zwei-Quadrate-Satz von Fermat

Bau, Eigenheim, Hütte, Bude, Behausung, Heim

Grundlagen der Informatik II. Teil I: Formale Modelle der Informatik

Anleitung über den Umgang mit Schildern

Bestandesaufnahme und Bedürfnisanalyse

Kartei zum Lesetagebuch Nr. 2. Kartei zum Lesetagebuch Nr. 1. Kartei zum Lesetagebuch Nr. 4. Kartei zum Lesetagebuch Nr. 3.

Das RSA-Verschlüsselungsverfahren 1 Christian Vollmer

Spielmaterial. Hallo! Ich bin der kleine AMIGO und zeige euch, wie dieses Spiel funktioniert. Viel Spaß! von Liesbeth Bos

Ist Fernsehen schädlich für die eigene Meinung oder fördert es unabhängig zu denken?

Lösungsmethoden gewöhnlicher Differentialgleichungen (Dgl.)

Die Invaliden-Versicherung ändert sich

Der Gabelstapler: Wie? Was? Wer? Wo?

Die richtigen Partner finden, Ressourcen finden und zusammenführen

Das Dilemma des Einbrechers Wer die Wahl hat, hat die Qual!

Das Festkomitee hat die Abi-Seite neu konzipiert, die nun auf einem (gemieteten) Share Point Server

Dokumentenverwaltung im Internet

RSA-Verschlüsselung. Verfahren zur Erzeugung der beiden Schlüssel:

Mit dem Tool Stundenverwaltung von Hanno Kniebel erhalten Sie die Möglichkeit zur effizienten Verwaltung von Montagezeiten Ihrer Mitarbeiter.

Wichtige Forderungen für ein Bundes-Teilhabe-Gesetz

Was ist das Budget für Arbeit?

Mathematik. UND/ODER Verknüpfung. Ungleichungen. Betrag. Intervall. Umgebung

VibonoCoaching Brief -No. 18

Leit-Bild der Sonnenhofschule

Flow Session zum Entdecken Deines idealen Lebensstils

Informatik Kurs Simulation. Hilfe für den Consideo Modeler

Zahlenwinkel: Forscherkarte 1. alleine. Zahlenwinkel: Forschertipp 1

Objektorientierte Programmierung. Kapitel 3: Syntaxdiagramme und Grammatikregeln

Würfelt man dabei je genau 10 - mal eine 1, 2, 3, 4, 5 und 6, so beträgt die Anzahl. der verschiedenen Reihenfolgen, in denen man dies tun kann, 60!.

Transkript:

Parsing-EinfŸhrung bersicht Falsifizierbarkeit, oder: Sind Grammatiken wissenschaftlich? Grammatik, Formalismus Kontextfreie Grammatiken Ableitungen Ziel Verstehen der linguistischen Motivation Intuitives VerstŠndnis, was ein Parser macht Benutzen des in Prolog eingebauten Parsers Parsing-EinfŸhrung Ð 1

Grammatik Lexikon-Definitionen fÿr ÈGrammatikÇ Wissen/Lehre von den RegularitŠten einer natÿrlichen Sprache Strukturelles Regelsystem Systematische Beschreibung der formalen RegularitŠten einer natÿrlichen Sprache Parsing-EinfŸhrung Ð 2

Sind Grammatiken wissenschaftlich? Falsifizierbarkeit Bei einer wissenschaftlichen Theorie soll klar sein, durch welche Beobachtungen sie widerlegt (falsifiziert) werden kšnnte. Womit wird eine Grammatik widerlegt? Bei vielen linguistischen Theorien unklar (!) Umdenken seit den 1950er Jahren Theorie Ÿber die Struktur einer Sprache = formales System von Grammatikregeln Beobachtbar bei einer Grammatik: Ein korrekter Satz entspricht nicht der Grammatik Ein falscher Satz entspricht der Grammatik klares, nachprÿfbares Falsifikations-Kriterium Parsing-EinfŸhrung Ð 3

Grammatik, Formalismus Grammatiken sollen so festgehalten werden, dass nachprÿfbar ist, ob ein Satz der Grammatik entspricht. Das heisst auch: In einer Notation, deren Bedeutung klar ist NatŸrliche Sprache ist jedoch unscharf und mehrdeutig Daher eignet sich eine formale Schreibweise besser Formalismus Formalisierung: Verwendung formaler Sprachen der Mathematik zur Beschreibung der Grammatik einer natÿrlichen Sprache Vorteile eines Formalismus mit mathematischer Grundlage: klarere Terminologie, gršssere PrŠzision Ñ Èes ist klar, worÿber geredet wirdç leichtere und zuverlšssigere berprÿfbarkeit der Argumente Parsing-EinfŸhrung Ð 4

Grammatik, Formalismus Die Grammatik ist in idealerweise in einem mathematisch fundierten Formalismus gehalten. Sonst wird schnell unklar, was genau die Theorie umfasst Sonst sind zwei Theorien kaum miteinander vergleichbar Sonst ist es schwer, SŠtze der Grammatik entsprechend maschinell zu verarbeiten Sonst kann leicht verschleiert werden, durch welche Beobachtungen die Theorie widerlegt wÿrde Parsing-EinfŸhrung Ð 5

Kontextfreie Grammatiken (CFG) Kontextfreie Grammatiken (Context-Free Grammars, CFG) sind ein solcher Formalismus von Noam Chomsky in den 1950er Jahren zur Modellierung der Syntax des Englischen vorgeschlagen gut erforschte mathematische Eigenschaften jahrzehntelange Diskussion, ob fÿr natÿrliche Sprachen mšchtig genug endgÿltige KlŠrung erst 1985: ZŸrichdeutsch und Bambara kšnnen nicht mit CFG beschrieben werden Es gibt andere, besser geeignete Formalismen als CFG dennoch wichtig fÿr Linguistik, Computerlinguistik, Informatik Parsing-EinfŸhrung Ð 6

Kontextfreie Regeln Bestandteile einer kontextfreien Regel: S NP VP linke Seite left-hand side rechte Seite right-hand side Zwei gleichwertige Lesarten: Ein S besteht aus einer NP und einer VP Eine NP, gefolgt von einer VP, ergibt ein S NP S VP Parsing-EinfŸhrung Ð 7

Kontextfreie Grammatiken Beispiele fÿr Regeln einer kontextfreien Grammatik: S NP VP NP Det N VP V NP VP V Det the Det a N man N woman V loves V sleeps V sees V thinks GemŠss diesen Grammatikregeln sind beispielsweise die folgenden SŠtze (S) erlaubt: a man sleeps the woman sees a man a woman loves a woman Parsing-EinfŸhrung Ð 8

Kontextfreie Grammatiken Struktur von Èa man sleepsç: Det NP N S VP V S NP VP NP Det N VP V NP VP V Det the Det a N man N woman V loves V sleeps V sees V thinks a man sleeps Parsing-EinfŸhrung Ð 9

Kontextfreie Grammatiken Struktur von Èa woman sees a manç: S S NP VP NP Det N VP V NP VP V Det the Det a N man N woman V loves V sleeps V sees V thinks NP VP Det N V NP a woman sees Det N a man Parsing-EinfŸhrung Ð 10

Kontextfreie Grammatiken Struktur von Èa woman loves a womanç: S S NP VP NP Det N VP V NP VP V Det the Det a N man N woman V loves V sleeps V sees V thinks NP VP Det N V NP a woman loves Det N a woman Parsing-EinfŸhrung Ð 11

Bestandteile einer CFG Symbole Ñ V V NP N Det VP S woman sees sleeps the man loves thinks Startsymbol Ñ S (Element von V) Terminalsymbole Ñ Σ (Teilmenge von V) Regeln Ñ R S NP VP NP Det N VP V NP VP V Det the Det a N man N woman V loves V sleeps V sees V thinks Parsing-EinfŸhrung Ð 12

Bestandteile einer CFG Eine kontextfreie Grammatik ist ein 4-Tupel V, Σ, R, S, wobei V ist eine endliche Menge von Symbolen Σ ist eine endliche Menge von Terminalsymbolen V R Ñ endliche Menge von Regeln (V Ð Σ) V* S Ñ Startsymbol V Ð Σ Nicht-Terminale V Ð Σ (die Menge der Elemente von V, die nicht in Σ sind) Wir schreiben fÿr die Regeln A u statt A, u, um die Regeln lesbarer zu machen Parsing-EinfŸhrung Ð 13

Ableitung FŸr u, v V* schreibt man u v genau dann wenn es gibt Ketten x, y, võ V* und A V Ð Σ so dass u = x A y v = x võ y A võ Beispiele a man V a woman a man sees a woman Det man V a woman a man V a woman a man VP a man V NP S NP VP S NP VP NP Det N VP V NP VP V Det the Det a N man N woman V loves V sleeps V sees Parsing-EinfŸhrung Ð 14

Ableitung Eine Folge von durch verbundenen Ketten heisst Ableitung (derivation). Da in jedem Schritt irgendein Nichtterminal ersetzt wird, kann dieselbe Kette auf verschiedene Weisen vom Startsymbol abgeleitet werden: S NP VP Det N VP a N VP a man VP a man V a man sleeps S NP VP NP V Det N V Det man V Det man sleeps a man sleeps Parsing-EinfŸhrung Ð 15

Parser, Akzeptor Ein Programm zur syntaktischen Analyse (ÈParserÇ) nimmt eine Kette von Wšrtern entgegen beurteilt, ob die Eingabe gemšss den Regeln einer Grammatik zulšssig ist Wenn ja, geben richtige Parser die Struktur der Eingabekette aus Akzeptoren antworten nur mit ÈakzeptabelÇ bzw. Ènicht akzeptabelç FŸr denselben Grammatik-Formalismus kann es verschiedene Parsingverfahren geben FŸr kontextfreie Grammatiken: Dutzende Verfahren Parsing-EinfŸhrung Ð 16

Top-Down-Parsing Ein Top-Down-Parser fÿr eine kontextfreie Grammatik fšngt mit dem Startsymbol an fÿhrt wiederholt Ableitungsschritte durch Ziel: Ableiten der zu analysierenden Kette S NP VP Det N VP a N VP a man VP a man V a man sleeps S NP VP NP Det N VP V NP VP V Det the Det a N man N woman V loves V sleeps V sees V thinks Parsing-EinfŸhrung Ð 17

Top-Down-Parsing Vorgehen beim Top-Down-Parsing: Ich suche ein S Um ein S zu erhalten, brauche ich eine NP und eine VP Um eine NP zu erhalten, brauche ich ein Det und ein N Um ein Det zu erhalten, kann ich das Wort ÈaÇ verwenden Ñ gefunden Um ein N zu erhalten, kann ich das Wort ÈmanÇ verwenden Ñ gefunden Damit ist die NP vollstšndig Um eine VP zu erhalten, brauche ich ein V Um ein V zu erhalten, kann ich das Wort ÈsleepsÇ verwenden Ñ gefunden Damit ist die VP vollstšndig Damit ist das S vollstšndig Det a NP S NP VP NP Det N VP V NP VP V N man S Det the Det a N man N woman VP V sleeps V loves V sleeps V sees V thinks Parsing-EinfŸhrung Ð 18

Bottom-Up-Parsing Ein Bottom-Up-Parser fÿr eine kontextfreie Grammatik fšngt mit der zu analysierenden Kette an fÿhrt wiederholt Ableitungsschritte ÈrŸckwŠrtsÇ durch Ziel: Erreichen des Startsymbols S NP VP NP V NP sleeps Det N sleeps Det man sleeps a man sleeps S NP VP NP Det N VP V NP VP V Det the Det a N man N woman V loves V sleeps V sees V thinks Parsing-EinfŸhrung Ð 19

Bottom-Up-Parsing Vorgehen beim Bottom-Up-Parsing: Nimm ein Wort Ñ es ist ÈaÇ ÈaÇ ist ein Det S Nimm ein weiteres Wort Ñ es ist ÈmanÇ ÈmanÇ ist ein N NP VP Det und N bilden zusammen eine NP Nimm ein weiteres Wort Ñ es ist ÈsleepsÇ ÈsleepsÇ ist ein V Det N V V bildet (fÿr sich alleine) eine VP NP und VP bilden zusammen ein S a man sleeps S NP VP NP Det N VP V NP VP V Det the Det a N man N woman V loves V sleeps V sees V thinks Parsing-EinfŸhrung Ð 20

Definit-Klausel-Grammatiken (DCGs) In Prolog ist ein einfacher Top-Down-Parser bereits eingebaut. Grammatik besteht aus Prolog-Klauseln (Definiten Klauseln) nÿtzlich zum schnellen Ausprobieren einer Mini-Grammatik Allerdings: eher ineffizientes Verfahren bei mehrdeutigen Grammatiken werden unter UmstŠnden Teile des Satzes mehrmals analysiert ÈAufhŠngenÇ bei bestimmten Grammatiken fÿr richtige Sprachverarbeitungsprojekte so gut wie unbrauchbar Parsing-EinfŸhrung Ð 21

DCGs: Formalismus Regeln mit Nichtterminalen auf der rechten Seite: s --> np, vp. np --> det, n. vp --> v. vp --> v, np. Regeln mit Terminal-Symbolen auf der rechten Seite: det --> [the]. det --> [a]. n --> [cat]. v --> [sees]. v --> [sings]. Parsing-EinfŸhrung Ð 22

DCGs: Benutzung Ein eingebautes PrŠdikat phrase/2 ŸberprŸft, ob von einem Nichtterminal eine Kette von Terminalsymbolen abgeleitet werden kann.?- phrase(s, [the, cat, sings]). yes?- phrase(np, [a, cat]). yes?- phrase(s, [a, cat]). no Parsing-EinfŸhrung Ð 23

Aufgaben: Parsing-EinfŸhrung Programmiertechniken der Computerlinguistik 1 á Wintersemester 1998/99 1. Kontextfreie Grammatik erstellen Schreibe eine Grammatik fÿr einfache deutsche SŠtze. Benutze hierzu folgende Nichtterminal-Symbole: Symbol Bedeutung Beispiel(e) S Satz Die Katze spielt mit dem gelben KŠse. NP Nominal-Phrase die Katze á dem gelben KŠse VP Verbal-Phrase spielt mit dem KŠse á singt PP PrŠpositional-Phrase mit dem KŠse N Nomen KŠse V Verb spielt á singt á sieht P PrŠposition mit á fÿr á unter A Adjektiv gelben á rotes á grÿn Det Artikel (Determiner) der á die á das á dem 3. ber-/untergenerierung Eine Grammatik heisst Ÿbergenerierend, wenn zu ihrer Sprache auch SŠtze gehšren, die nicht Teil der modellierten natÿrlichen Sprache sind. Umgekehrt heisst eine Grammatik untergenerierend, wenn sie bestimmte SŠtze nicht akzeptiert, auch wenn diese Bestandteil der natÿrlichen Sprache wšren, die mit der Grammatik modelliert wird. a) Ist Deine Grammatik aus Aufgabe 1 Ÿbergenerierend? Nenne einige fehlerhafte deutsche SŠtze, welche Deine Grammatik akzeptiert. b) Ist Deine Grammatik untergenerierend? Nenne einige korrekte deutsche SŠtze, welche Deine Grammatik nicht akzeptiert. c) berlege Dir, ob es fÿr die maschinelle Verarbeitung natÿrlicher Sprache schlimmer ist, wenn eine Grammatik Ÿber- oder wenn sie untergeneriert. 2. Formulieren als DCG berprÿfe fÿr einige BeispielsŠtze, ob sie Deiner Grammatik aus der ersten Aufgabe (also Deiner Theorie Ÿber die Syntax des Deutschen) entsprechen, indem Du die Grammatik als DCG formulierst und den in Prolog eingebauten Parser (der in der bisher vorgestellten Form ja eigentlich nur ein Akzeptor ist) benutzt. Gibt es eine Mšglichkeit, wie Du Prolog nach sšmtlichen SŠtze fragen kannst, die der Grammatik entsprechen?