Hier finden Sie die Übungsblätter, den Programmcode und weitere Informationen zur Übung.
Ablauf der Übung und Leistungsnachweis:
- Die Übungen werden im wöchentlichen Wechsel als “Papierübung” und Rechnerübung abgehalten. Bei den Rechnerübungen gibt es Gelegenheit, Fragen zur Implementierung der Aufgaben zu stellen.
- Die Aufgabenstellung zur Rechnerübung wird jeweils auf der Papierübung bekanntgegeben. Die Ergebnisse müssen einen Tag vor der nächsten Papierübung (also 2 Wochen später) dem Tutorialleiter zugesandt werden. Das implementierte Resultat ist zur nächsten Papierübung vorzuführen. Eine alleinige Abgabe als Email reicht nicht aus!
Übungsblätter:
- 1. Übung, mit 1. Praxisaufgabe “Zipf’s Law”
- 2. Übung, mit 2. Praxisaufgabe “Wort- und Satzgrenzenerkennung”
- 3. Übung, mit Praxisaufgabe “Hidden Markov Modelle”
- 4. Übung, mit Praxisaufgabe “POS Tagging mit Markov Models”
- 5. Übung, mit Praxisaufgabe “Parsing”
- 6. Übung
- 7. Übung
- 8. Übung
Lösungsvorschläge:
- 1. Übung, Lösungsvorschlag
- 2. Übung, Lösungsvorschlag
- 3. Übung, Lösungsvorschlag
- 4. Übung, Lösungsvorschlag
- 5. Übung, Lösungsvorschlag
- 6. Übung, Lösungsvorschlag
- 7. Übung, Lösungsvorschlag
Programmcode:
Die Musterlösungen zu den Programmierübungen werden per Email an alle verschickt, die eine Lösung abgegeben haben.
Weitere Materialien:
- Python-Einführung (1. Programmierübung)
- Shakespeare Textkorpus (1. Programmierübung)
- Exzerpt des Treebank-Korpus, reine Textversion (treebank_untokenized.txt, 2. Programmierübung)
- Mini-Python-Script zum Testen regulärer Ausdrücke (2. Übung)
- Python Tipps (2. Programmierübung)
- Implementierung des Viterbi-Algorithmus für das Beispiel aus Übung 4
Errata:
- 1. Übung, Aufgabe 3 (Satzstruktur & Grammatiken): letzte Ableitungsregel IN -> {in, auf} anstatt IN -> {in}
- 3. Übung, Aufgabe 3: … , ansonsten entweder laufen oder radeln: die Wahrscheinlichkeit für laufen und radeln ist gleich.
- 3. Übung, Aufgabe 3.3: Diese Aufgabe kann mit dem Viterbi Algorithmus gelöst werden (Praxisaufgabe). Eine Rechnung per Hand ist nicht erfordert.
- 3. Übung, Praxisaufgabe: Es ist die dritte, nicht die vierte Aufgabe.
Allgemeine Tips zu Python:
- Ein sehr gutes Online-Buch zur Nutzung von Python für NLP finden man auf der Seite des NLTK Toolkits. Dort wird auch der Einsatz des Toolkits, was für die Übung genutzt werden kann, erläutert.
- Weitere Einführungen in Python bieten Dive into Python und How to think like a computer scientist.
- Eine praktische Programmierumgebung für die Übungen bietet Eclipse mit dem Python-Plugin PyDev.