ASV-Label
Login

16px-feed-icon Lehrveranstaltung View this page in English

Textdatenbanken - Vorlesung Übung

Sommersemester 2020  •  Modul: Textdatenbanken (10-202-2322)  •  Freitag, 09:15 Uhr  •  SG 3-14

Referenten:  Prof. Dr. Uwe Quasthoff

Informationen zur Prüfung:

Prüfungsergebnisse:

Matrikel Punkte Note
3720220 42 (11 + 15 + 16) 2,7
3722126 16 ( 9 + 7 + 0) 5
3313302 12 (12 + 0 + 0) 5
3744113 54 (18 + 19 + 17) 1,3
2527532 38 (13 + 14 + 11) 3,3
3707883 49 (18 + 18 + 13) 2,0
3739186 33 ( 7 + 11 + 15) 3,7
3709557 50 (15 + 17 + 18) 2,0
3718389 39 (19 + 13 + 7) 3,0
3724646 59 (20 + 20 + 19) 1,0
3270460 45 (18 + 17 + 10) 2,3
3737104 55 (20 + 17 + 18) 1,3
3719195 46 (18 + 15 + 13) 2,3
3724289 50 (17 + 17 + 16) 2,0
3707469 48 (19 + 15 + 14) 2,0
3702471 54 (19 + 19 + 16) 1,3
3713674 50 (17 + 16 + 17) 2,0
3708108 51 (19 + 17 + 15) 1,7
3743208 48 (18 + 15 + 15) 2,0
3759556 52 (18 + 17 + 17) 1,7
3721240 40 (13 + 14 + 13) 3,0
3710120 58 (20 + 20 + 18) 1,0
373518 41 (18 + 16 + 7) 3,0
3756415 56 (19 + 18 + 19) 1,3
3750217 57 (19 + 19 + 19) 1,0
3749871 28 (11 + 5 + 12) 5

Die Punktelisten der drei Serien sind auch jeweils an den entsprechenden Terminen veröffentlicht.

Falls Einsicht in die individuelle Bewertung gewünscht wird, bitte per Email an Felix Helfer wenden.

Hinweis: Leider sind bei der Punkteliste zu Serie 2 einige Bewertungen durcheinandergeraten. Die Liste wurde inzwischen durch die berichtigte Version ersetzt.

Informationen zur Prüfung

Auf Grund der besonderen Situation in diesem Semester gibt es auch für die Prüfungen besondere Rahmenbedingungen.
Für die Vorlesung Textdatenbanken wird es in diesem Semester keine schriftliche Prüfungsklausur geben, sondern wir möchten verfahren wie unten beschrieben.

Wir stellen drei Serien von prüfungsrelevanten Übungsaufgaben, und zwar an den folgenden Tagen: 12.6.2020, 26.6.2020 und 10.7.2020
Für die Lösung stehen jeweils 14 Tage zur Verfügung, Abgabe per E-Mail als PDF.
Pro Serie sind maximal 20 Punkte erreichbar. Aus der Gesamtpunktzahl wird eine Prüfungsnote ermittelt.
Es steht frei, an dieser Prüfung teilzunehmen. Note 5 wird wie Nichtteilnahme gewertet. Alle anderen Noten sind endgültig.
Für Nicht-Teilnehmer wird es zu einem späteren Zeitpunkt (frühestens im Oktober 2020) eine Prüfung als Klausur geben.

Die drei Serien der Übungsaufgaben mit den dazugehörigen Daten finden Sie unten bei den Materialien zu den entsprechenden Tagen (12.6.2020, 26.6.2020 und 10.7.2020).

Zusatzinformationen:

Wöchentlich werden Folien und weitere Materialien hier zum Selbststudium angeboten.

Es ist kein zusätzliches Login nötig.

10.04.2020   Vorlesung 1: Material für E-Learning

1)
Benutzen Sie das Wortschatz-Portal: https://corpora.uni-leipzig.de/

Schlagen Sie im deutschen Korpus https://corpora.uni-leipzig.de/de?corpusId=deu_newscrawl-public_2018 einige deutsche Wörter nach:

  • Versuchen Sie, die drei häufigsten Wörter zu finden (d.h. mit Rang 1, 2 und 3)
  • Versuchen Sie, das häufigste deutsche Substantiv zu finden.
  • Versuchen Sie, den häufigsten Vornamen zu finden.
  • Suchen Sie (ohne Zuhilfenahme der Datenbanktabelle) nach extrem seltenen Wörtern mit Anzahl 1 oder 2.
  • Welches ist das längste wohlgeformte deutsche Wort, dass Sie finden können?
  • Was für Beispielsätze finden Sie, wenn Sie nach fremdsprachigen Wörtern wie “the” oder “jest” suchen?

Sie können die dahinterliegenden MySQL-Datenbanken herunterladen unter https://wortschatz.uni-leipzig.de/de/download. Die Wörter finden Sie in der Tabelle words.

2)
Textextraktion aus HTML

Angehängt finden Sie eine WARC-Datei, wie sie nach einem typischen Crawl entstanden sein könnte. Versuchen Sie sich an der Extraktion des Textes. Mögliche empfohlene Tools sind Beautiful Soup (Python), oder JSoup (Java). Ziehen Sie deren Dokumentationen zur Extraktion von Text heran (es benötigt nur wenige Zeilen Code).

Begutachten Sie die Ergebnisse: was hat gut funktioniert? Wo liegen Schwachstellen? Wie könnten diese bereinigt/abgeschwächt werden? Wie könnten die nächsten Verarbeitungsschritte aussehen?

Dateien: Folien - Teil 1    Beispiel-WARC-Datei   

17.04.2020   Vorlesung 2: Material für E-Learning

1)
Satzextraktion

Nach der Extraktion des Textes aus der HTML-Quelle soll dieser nun in Sätze zerlegt werden. Sie können dafür das Tool angehängt in der Archivdatei segmentizer.zip verwenden. Das Archiv enthält die entsprechende jar, sowie einen Ordner resources mit Regeln und Entitätslisten. Ausführbar ist das Tool nach Extraktion via:

java -jar sentence-segmentizer.jar -i=INPUTFILE -o=OUTPUTFILE -a=resources/preList.txt -b=resources/postList.txt -r=resources/preRules.txt -s=resources/postRules.txt -bf=resources/boundariesFile.txt

Betrachten Sie die Ergebnisse der Satzextraktion, sowie die verwendeten Regeln/Listen: Gibt es Fälle, in denen das Tool versagt (False Positives + False Negatives)? Fallen Ihnen weitere Kurztexte ein, mit denen das Tool “überlistet” werden kann? Welche zusätzlichen Regeln könnten einer solchen “Überlistung” entgegnen?

2)
Sprachseparierung

Da wir einsprachige Korpora konstruieren wollen, müssen die Sätze weiterhin nach Sprachen separiert werden. Sie finden im Anhang zwei JSON-Dateien mit häufigen Trigrammen für Englisch und Deutsch (basierend auf Referenzkorpora). Mit diesen können Sie eine vereinfachte Spracherkennung der Sätze durchführen. Folgen Sie dabei dem in den Vorlesungsfolien (Folien – Teil 2) geschilderten Ansatz!

Funktioniert dies mit allen Sätzen? Finden Sie weitere Beispiele, denen eine falsche Sprache zugewiesen werden könnte?

Dateien: Folien - Teil 2    Sentence Segmentizer    trigrams-eng.json    trigrams-deu.json   

24.04.2020   Vorlesung 3: Material für E-Learning

Tokenisierung

Nach der Auftrennung in Sätze folgt nun die Tokenisierung. Im Anhang finden Sie eine Datei sentences.txt mit Sätzen wie sie aus der Satzseparierung hervorgegangen sein könnten. Die Archivdatei tokenizer.zip enthält eine JAR zur Tokenisierung (sowie einen dafür benötigten Ordner mit Ressourcen). Ausführbar ist das Programm via:

java -cp tokenizer.jar de.uni_leipzig.asv.tools.medusa.tokenizer.input.TokenizerApp INPUTFILE OUTPUTFILE COLUMNNUMBER

Das Programm erwartet eine tab-separierte Liste von Daten, wobei COLUMNNUMBER die Spalte angibt, welche tokenisiert werden soll. Dies ist hauptsächlich bedingt durch interne Verarbeitungsketten, in der neben den Sätzen auch zusätzliche Informationen in der Datei abgelegt sein können. Eine einfache Textdatei mit einem Satz pro Zeile kann mit einer “0” als Spaltennummer tokenisiert werden.

Betrachten Sie die Ergebnisse: Gibt es ersichtliche Fehler? Falls ja, können Sie diese filtern (via kleinem Skript, regex, etc.)?

Weitere Satzdaten zum Ausprobieren können auch auf dem Wortschatz-Portal gefunden werden:
https://wortschatz.uni-leipzig.de/de/download

Dateien: tokenizer    sentences    Folien - Teil 3   

08.05.2020   Vorlesung 4: Material für E-Learning

Qualitätssicherung Sätze

Satzseparierung allein führt leider nicht immer auch zu ausreichend qualitativen Sätzen. Eine nachträgliche qualitative Filterung ist deshalb notwendig. Versuchen Sie, mithilfe eines kleinen Skriptes die beigefügte Satzliste nach “schönen” Kandidaten zu filtern (z.B. mit Regex-basierten Regeln). Hinweise für sinnvolle Regeln können der Vorlesung entnommen werden. Können Sie alle “problematischen” Sätze abfangen? Wird eventuell manchmal zu viel gefiltert? Statt einer binären Filterung ist auch ein Ranking-System möglich: überlegen Sie, welche Kriterien welche Gewichtungen zur Folge haben könnten!

Dateien: Folien - Teil 4    sentences.txt   

15.05.2020   Vorlesung 5: Material für E-Learning

Suche in Korpora

Verwenden Sie die ASV-Instanz der NoSketch-Engine zur Suche in Korpora:
http://cql.corpora.uni-leipzig.de/

Hierbei hilft besonders die Anfragesprache CQL. Hinweis: Die “Simple Query” der NoSketchEngine akzeptiert kein CQL – stattdessen dafür auf zunächst auf Query_typesCQL).
Dokumentation zu CQL finden Sie in den Vorlesungsfolien, sowie hier:
https://www.sketchengine.eu/documentation/corpus-querying/

Beachten Sie, dass sich die verwendeten Attributsnamen tlw. von der denen der offiziellen Dokumentation unterscheiden können. Hier unterstützte Attribute sind:
word, lemma, pos, lc (lowercase word), lemma_lc (lowercase lemma)

Die Kürzel der verwendeten POS-Tags finden Sie hier:
https://www.cis.uni-muenchen.de/~schmid/tools/TreeTagger/data/STTS-Tagset.pdf

Die Ergebnislisten können mit den Menüpunkten auf der linken Seite tlw weiterverarbeitet werden – so hilft z.B. “Frequency” mit der Sortierung nach Häufigkeit.

Versuchen Sie, die folgenden Anfragen an das Korpus deu-newscrawl_2011 zu stellen:

- Welche 1-3 Worte tauchen zwischen den Token “Kuchen” und “Sahne” auf?
- Jedes Wort das folgendem Muster entspricht: “H” als Anfangsbuchstabe, dann ein beliebiger Buchstabe, dann “nd”, gefolgt von mindestens einem weiteren beliebigen Buchstaben.
- Ausdrücke der Form “(Nomen) und (Nomen)”, wobei ersteres Nomen auf “-bau” enden soll.
- Vornamen und Nachnamen von Bürgermeistern.
- Vornamen und Nachnamen von Bürgermeistern deren Nachname fälschlicherweise als Nomen getaggt wurde.
- Alle Varianten von “große X und kleine Y”, inklusive anderer Beugungen der Adjektive.
- Zwei bis drei beliebige Worte, welche positioniert sind zwischen einem optionalen beliebigen vorausgehenden Artikel + “Feuerwehr” auf der linken Seiten und “Brand” + einem beliebigen Verb auf der rechten Seite.
- Beispiele für Nagetiere (Tipp: überlegen Sie, wie eine solche Nennung in einem Satz formuliert werden würde)?
- Jahreszahlen, in denen jemand oder etwas in Berlin geboren wurde oder gestorben ist.
- Alle Beugungen von “fahren”, sofern in den folgenden 4 Worten irgendwo das Token “Bus” auftaucht.
- Die Resultate der vorherigen Anfrage oder Verben die mit “z” beginnen und höchstens 2 Wortpositionen von “Vogel” bzw. dessen Beugungen entfernt sind.

Dateien: Folien - Teil 5   

22.05.2020   Vorlesung 6: Material für E-Learning
Dateien: Folien - Teil 6   

29.05.2020   Vorlesung 7: Material für E-Learning
Dateien: Folien - Teil 7   

05.06.2020   Vorlesung 8: Material für E-Learning
Dateien: Folien - Teil 8   

12.06.2020   Vorlesung 9: Material für E-Learning
Dateien: Folien - Teil 9    Übungsaufgaben, Serie 1/3    Daten zu den Übungsaufgaben, Serie 1/3    Punkteliste Serie 1    

19.06.2020   Vorlesung 10: Material für E-Learning
Dateien: Folien - Teil 10   

26.06.2020   Vorlesung 11: Material für E-Learning
Dateien: Folien - Teil 11    Übungsaufgaben, Serie 2/3    Punkteliste Serie 2   

03.07.2020   Vorlesung 12: Material für E-Learning
Dateien: Folien - Teil 12   

10.07.2020   Vorlesung 13: Material für E-Learning
Dateien: Folien - Teil 13    Übungsaufgaben, Serie 3/3    Daten zu den Übungsaufgaben, Serie 3/3    Punkteliste Serie 3   

17.07.2020   Vorlesung 14: Material für E-Learning
Dateien: Folien - Teil 14