Angewandtes Programmieren in der Computerlinguistik
Sommersemester 2026
Dozent: Helmut Schmid
Kursinhalt
Am Beispiel ausgewählter computerlinguistischer Aufgabenstellungen erhalten die
Studierenden die Möglichkeit, ihre praktischen Python-Programmierkenntnisse zu vertiefen.
Sie werden in jeder Woche eine Programmieraufgabe selbständig
lösen. Die neue Aufgabe wird jeweils in der Vorlesung vorgestellt
und besprochen. Die Übungen finden im Rechnerpool statt. Dort
können Sie an Ihrer Lösung für die gestellte Aufgabe arbeiten und
sich bei Fragen und Problemen an mich wenden.
Die einzelnen Aufgaben und den jeweiligen Abgabetermin
finden Sie unten. Sie können die Aufgaben in Gruppen von bis zu 3
Studierenden bearbeiten und gemeinsam abgeben. Nach der Abgabe
erhalten Sie von mir eine Email mit Kommentaren zu Ihrer
Lösung. Es gibt pro Übung maximal 10 Punkte. Die Punkte kann ich
Ihnen nicht mitteilen, da sonst für Bachelorstudierende nach
Erreichen der Mindestpunktezahl kein Anreiz mehr besteht, weitere
Übungen zu bearbeiten.
Ihre Lösungen der Aufgaben sollten sich an dem Lösungsansatz
orientieren, der in der Vorlesung besprochen wurde. Wenn Sie eine
andere Lösung wählen, müssen Sie begründen, warum Sie diese
bevorzugen.
Nicht jeder meiner Kommentare zu Ihrer Abgabe bedeutet einen
Punkteabzug. Manche sind auch nur ein Hinweis, wie Sie Ihren
Code noch lesbarer oder effizienter machen können.
Wenn Sie außerhalb der Übungen Fragen stellen möchten, können Sie
mir gerne eine Email schreiben.
Achtung: Wenn Sie diesen Kurs bereits im Bachelorstudium
besucht haben, können Sie ihn im Masterstudium nicht noch einmal
besuchen.
Termine
- Vorlesung
| Dienstag | 10 - 12 Uhr c.t. | in Raum 057 |
- Übungen
| Mittwoch | 10 - 12 Uhr c.t. | im Rechnerpool Antarktis |
Programmierübungen
Achtung: Die Aufgaben können noch bis kurz vor der Vorlesung geändert werden. Laden Sie daher immer die neueste Version herunter, bevor Sie mit der Bearbeitung beginnen.
| Übung | Beschreibung | Termin | Abgabe bis |
Hinweise |
| Übung
1 | Anagramme, Komposita, Levenshtein | 14. 4. 2026 | 20. 4. 2026 |
|
| Übung 2 | Tries und Automaten-Minimierung | 21. 4. 2026 | 27. 4. 2026 |
|
| Übung 3 | Transliteration Mining | 28. 4. 2026 | 4. 5. 2026 |
|
| Übung 4 | CRF-Tagger 1 | 5. 5. 2026 | 11. 5. 2026 |
|
| Übung 5 | CRF-Tagger 2 | 12. 5. 2026 | 18. 5. 2026 |
|
| Übung 6 | LSTM-Tagger | 19. 5. 2026 | 1. 6. 2026 |
|
| vorlesungsfrei | 26. 5. 2026 | |
|
| Vorlesung | Vorlesung Morphologie und SFST | 2. 6. 2026 | 8. 6. 2026 |
|
| Übung 7 | Morphologie | 9. 6. 2026 | 15. 6. 2026 |
|
| Übung 8 | Parser Teil 1 | 16. 6. 2026 | 22. 6. 2026 |
|
| Übung 9 | Parser Teil 2 | 23. 6. 2026 | 29. 6. 2026 |
|
| Übung 10 | Lemmatisierer 1 | 30. 6. 2026 | 6. 7. 2026 |
|
| Übung 11 | Lemmatisierer 2 | 7. 7. 2026 | 13. 7. 2026 |
|
| fällt aus | 14. 7. 2026 | |
|
Pro Übung gibt es maximal 10 Punkte. Es werden nur die 10 besten
Abgaben gewertet.
Es dürfen nur die Standard-Bibliotheken von Python verwendet werden,
sofern in der Aufgabe nicht explizit mehr erlaubt wird. Fragen Sie im
Zweifelsfall nach, bevor Sie eine Bibliothek benutzen.
Ein gutes Programm erfüllt die gestellte Aufgabe korrekt und effizient. Es ist kurz,
gut lesbar und überall dort dokumentiert, wo es für das Verständnis des Codes
wichtig ist. Variablen und Funktionen sollten aussagekräftige Namen
besitzen. Redundanz im Code ist zu vermeiden. Der Code sollte sinnvoll
strukturiert sein.
Modulprüfung
Zum Bestehen des Kurses sind bei Bachelorstudierenden mindestens 40 Prozent der
möglichen Gesamtpunktezahl aus den Programmieraufgaben erforderlich
und bei Masterstudierenden 50 Prozent.
Bitte vergessen Sie nicht, sich rechtzeitig zu der Prüfung anzumelden!
Begleitmaterial
|