Angewandtes Programmieren in der Computerlinguistik
Sommersemester 2024
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.

    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 das über das Moodle-Forum zu dem Kurs tun. Dazu sollten Sie sich in Moodle zu dem Kurs anmelden.

    Achtung: Wenn Sie diesen Kurs bereits im Bachelorstudium besucht haben, dürfen Sie ihn im Masterstudium nicht noch einmal besuchen.


  Termine
  • Vorlesung
  • Dienstag10 - 12 Uhr c.t.in Raum 057
  • Übungen
  • Mittwoch10 - 12 Uhr c.t.im Rechnerpool Antarktis

  Programmierübungen
    ÜbungBeschreibungTermin Abgabe bis Hinweise
    Übung 1Anagramm-Erkennung und Kompositazerlegung16. 4. 2023 22. 4. 2023
    Übung 2Parsen mit rekursivem Abstieg23. 4. 2023 29. 4. 2023
    Übung 3Verfeinerung von Parsebaumannotationen30. 4. 2023 6. 5. 2023
    Übung 4Earley-Parser und Profiling7. 5. 2023 13. 5. 2023
    Übung 5Buchstaben-Bäume 14. 5. 202327. 5. 2023
    Übung 6Minimierung endlicher Automaten28. 5. 20233. 6. 2023
    Übung 7Levenshtein-Abstand 4. 6. 2023 10. 6. 2023
    Übung 8Transliteration Mining11. 6. 2023
    Transliteration Mining18. 6. 2023 24. 6. 2023
    Übung 9LSTM-Wortart-Tagger Teil 125. 6. 20231. 7. 2023
    Übung 10LSTM-Wortart-Tagger Teil 22. 7. 20238. 7. 2023
    Übung 11LSTM-Wortart-Tagger Teil 39. 7. 202315. 7. 2023

    Pro Übung gibt es maximal 10 Punkte. Übung 8 wird doppelt gewichtet. Es werden nur die 10 besten Abgaben gewertet (wobei hier Übung 8 als zwei Abgaben zählt).

    Es dürfen nur die Standardbibliotheken (math, collections etc.) 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.

    Bitte schicken Sie Ihre Lösungen per E-Mail-Anhang an schmid@cis.lmu.de.


  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.

  Begleitmaterial