Softwarepraktikum

Werbung
Einführung
Kopora in NLTK
Übungsaufgaben
Softwarepraktikum
Korpora in NLTK
Franz Matthies
Lehrstuhl für Computerlinguistik
Institut für Germanistische Sprachwissenschaft
Friedrich-Schiller-Universität Jena
www.julielab.de
Sommersemester 2016 – Sitzung 3
Franz Matthies
Softwarepraktikum
Einführung
Kopora in NLTK
Übungsaufgaben
Überblick
1
Einführung
Was ist eigentlich . . .
Korpustypen
Annotationstool
2
Kopora in NLTK
Beispielhafte Korpora
Python API
3
Übungsaufgaben
Python Idiome
Franz Matthies
Softwarepraktikum
Einführung
Kopora in NLTK
Übungsaufgaben
Was ist eigentlich . . .
Korpustypen
Annotationstool
Überblick
1
Einführung
Was ist eigentlich . . .
Korpustypen
Annotationstool
2
Kopora in NLTK
Beispielhafte Korpora
Python API
3
Übungsaufgaben
Python Idiome
Franz Matthies
Softwarepraktikum
Einführung
Kopora in NLTK
Übungsaufgaben
Was ist eigentlich . . .
Korpustypen
Annotationstool
Was ist eigentlich . . .
(oder auch) “Recap”:
Korpus: für eine Analyse gesammelte (annotierte)
Sprachdaten
Annotation: Beschreibung/Analyseergebnis für (Teile von)
Sprachdaten
POS-Tag: POS = “part of speech” → Annotation mit der
Wortart, dabei werden typischerweise 30–50 Wortarten
unterschieden
Franz Matthies
Softwarepraktikum
Einführung
Kopora in NLTK
Übungsaufgaben
Was ist eigentlich . . .
Korpustypen
Annotationstool
Korpustypen . . .
sind einteilbar nach (u.a.):
Annotationsskopus: Wortarten, Emotionen, . . .
Medium: geschrieben, gesprochen, Video, multimedial, . . .
Domäne: Zeitungstexte, Telefongespräche, E-Mails,
wissenschaftliche Artikel, . . .
Sprache: monolingual, multilingual (parallel/vergleichbar)
Franz Matthies
Softwarepraktikum
Einführung
Kopora in NLTK
Übungsaufgaben
Was ist eigentlich . . .
Korpustypen
Annotationstool
Beispiel-Annotationstool
BRAT
http://brat.nlplab.org/
Franz Matthies
Softwarepraktikum
Einführung
Kopora in NLTK
Übungsaufgaben
Beispielhafte Korpora
Python API
Überblick
1
Einführung
Was ist eigentlich . . .
Korpustypen
Annotationstool
2
Kopora in NLTK
Beispielhafte Korpora
Python API
3
Übungsaufgaben
Python Idiome
Franz Matthies
Softwarepraktikum
Einführung
Kopora in NLTK
Übungsaufgaben
Beispielhafte Korpora
Python API
Korpora laden
NLTK ermöglicht das einfache Herunterladen diverser
(annotierter) Korpora
Herunterladbar durch nltk.download()
Franz Matthies
Softwarepraktikum
Einführung
Kopora in NLTK
Übungsaufgaben
Beispielhafte Korpora
Python API
Beispielhafte Korpora
Brown Corpus
Projekt Gutenberg
Movie Reviews
Franz Matthies
Softwarepraktikum
Einführung
Kopora in NLTK
Übungsaufgaben
Beispielhafte Korpora
Python API
Beispielhafte Korpora
Brown Corpus
Amerikanisches Englisch (1960er) aus gemischten Domänen
erstes Korpus mit 1 Million Wörtern
Nachträglich mit POS annotiert
Projekt Gutenberg
von Freiwilligen digitalisierte gemeinfreie, literarische Texte
keine Annotationen
http://www.gutenberg.org
Movie Reviews
Filmkritiken; eingeteilt in positiv und negativ
Franz Matthies
Softwarepraktikum
Einführung
Kopora in NLTK
Übungsaufgaben
Beispielhafte Korpora
Python API
Python API
NLTK stellt Methoden zur Interaktion mit Korpora zur Verfügung:
fileids() listet alle Dateien, aus denen das Korpus besteht
raw() bietet den blanken Text
words(),sents(),paras() entsprechend die Wörter, Sätze und
Paragraphen
bei annotierten Korpora kann über
tagged words(),tagged sents(),tagged paras() jeweils eine
Liste aus Tupeln (Token, Tag) mit Annotationen ausgegeben
werden
siehe auch http://www.nltk.org/howto/corpus.html für
detaillierte Informationen
Franz Matthies
Softwarepraktikum
Einführung
Kopora in NLTK
Übungsaufgaben
Python Idiome
Überblick
1
Einführung
Was ist eigentlich . . .
Korpustypen
Annotationstool
2
Kopora in NLTK
Beispielhafte Korpora
Python API
3
Übungsaufgaben
Python Idiome
Franz Matthies
Softwarepraktikum
Einführung
Kopora in NLTK
Übungsaufgaben
Python Idiome
Python Idiome
Tuple Unpacking
Dateien lesen & schreiben
“list comprehensions”
“generator expressions”
Franz Matthies
Softwarepraktikum
Einführung
Kopora in NLTK
Übungsaufgaben
Python Idiome
Python Idiome
Tuple Unpacking
Dateien lesen & schreiben
“list comprehensions”
“generator expressions”
Franz Matthies
Softwarepraktikum
Einführung
Kopora in NLTK
Übungsaufgaben
Python Idiome
Python Idiome
Tuple Unpacking
Dateien lesen & schreiben
“list comprehensions”
“generator expressions”
Franz Matthies
Softwarepraktikum
Einführung
Kopora in NLTK
Übungsaufgaben
Python Idiome
Python Idiome
Tuple Unpacking
Dateien lesen & schreiben
“list comprehensions”
“generator expressions”
Franz Matthies
Softwarepraktikum
Einführung
Kopora in NLTK
Übungsaufgaben
Python Idiome
Python Idiome
Tuple Unpacking
Dateien lesen & schreiben
“list comprehensions”
“generator expressions”
Franz Matthies
Softwarepraktikum
Einführung
Kopora in NLTK
Übungsaufgaben
Python Idiome
Python Idiome
Tuple Unpacking
Dateien lesen & schreiben
“list comprehensions”
“generator expressions”
Franz Matthies
Softwarepraktikum
Einführung
Kopora in NLTK
Übungsaufgaben
Python Idiome
Übungsaufgaben
Für die folgenden Übungen sei auf das NLTK Corpus HowTo verwiesen:
http://www.nltk.org/howto/corpus.html
Sowie das Kapitel 2 des NLTK Buchs (Unterkapitel 1 & 2)
Was ist das 1728te Wort im Brown Corpus?
Benutzen Sie die POS Annotationen im Brown Corpus und eine
Frequency Distribution um die 20 häufigsten Adjektive zu ermitteln
(Tags: JJ, JJR, JJS, JJT – if muss verwendet werden)
Benutzen Sie diese Adjektivliste gemeinsam mit einer Conditional
Frequency Distribution basierend auf den movie reviews um eine
Tabelle zu erstellen, die diese Wörter und ihre Häufigkeit zeigt
Franz Matthies
Softwarepraktikum
Herunterladen