Programmiertechniken der Computerlinguistik
Eine Vorlesungsreihe zu Programmiertechniken der Computerlinguistik, gehalten vom Wintersemester 1997/98 bis und mit Sommersemester 1999. Der Winterteil führt in Prolog und grundlegende Parsing-Techniken ein, der Sommerteil vertieft Chart-Parsing, effiziente Prolog-Techniken und formale Sprachhierarchien. Dazu gibt es sechs herunterladbare Prolog-Programme als Ausgangspunkt für Übungsaufgaben.
Universität Zürich, Institut für Informatik, Computerlinguistik – Wintersemester 1997/98 bis und mit Sommersemester 1999
Diese Vorlesung habe ich von Grund auf selbst konzipiert. Prolog wäre nicht unbedingt meine erste Wahl für diesen Kurs gewesen – ich selbst programmiere lieber systemnah –, doch das Institut bestand darauf, dass ich genau diese Sprache unterrichte. Aus heutiger Sicht mag das einigermassen kurios wirken, aber in den 1990er Jahren war Prolog, zusammen mit Lisp, die Sprache der Wahl in der Künstlichen Intelligenz.
Wintersemester
- Einführung
- Strukturen
- Ablauf
- Rekursion
- Tracing
- Listen
- Arithmetik
- Term-Prädikate
- Occurs Check
- Parsing-Einführung
- Repetition
- Ein-/Ausgabe
- Parsing-Repetition
- Definit-Klausel-Grammatiken
- Shift-Reduce-Parsing
- Kontrolle
- Musterlösungen zu allen Aufgaben
Sommersemester
- Einführung
- Tokenizer
- Parsing-Repetition
- Morphologie
- Selektions-Beschränkungen
- Chart-Parsing
- Bottom-Up-Chart-Parsing
- Earley-Parsing
- Kanten-Subsumtion
- Effiziente Prolog-Techniken
- Schneller Parsen
- Endliche Automaten
- Sprachenhierarchie; Nicht-Kontextfreiheit des Zürichdeutschen
- Merkmalstrukturen
- Stichwort-Erkennung
Prolog-Programme zum Herunterladen
- Tokenizer
- Ein einfacher Prolog-Tokenizer.
- Definit-Klausel-Grammatik
- Eine sehr einfache Definit-Klausel-Grammatik, die als Ausgangspunkt für eine Übungsaufgabe dient.
- Shift-Reduce-Parser
- Ein einfacher Shift-Reduce-Parser in Prolog.
- Bottom-Up-Chart-Parser
- Ein einfacher Bottom-Up-Chart-Parser in Prolog.
- Earley-Parser
- Ein einfacher Chart-Parser in Prolog, der den Earley-Algorithmus benutzt. Achtung: zwei Fehler sind als Übungsaufgaben zu korrigieren!
- Stichwort-Erkennung
- Ein Prolog-Programm, das in einer natürlichsprachlichen (englischen) Eingabe bestimmte Stichwörter erkennt und daraufhin entsprechende «Datenbank»-Anfragen stellt. Benötigt den Tokenizer.
