Text Mining - Übung

20
Institut für Informatik Text Mining - Übung Patrick Jähnichen, Antje Schlaf

description

Text Mining - Übung. Patrick Jähnichen, Antje Schlaf. Ablauf. Übungen finden im zweiwöchigen Rhythmus statt Nächste Termine: 07.11., 28.11., 12.12., 09.01., 30.01. Termine und Themen stehen rechtzeitig auf der ASV Homepage Termin bestehen aus zwei Teilen - PowerPoint PPT Presentation

Transcript of Text Mining - Übung

Page 1: Text Mining - Übung

Institut für Informatik

Text Mining - Übung

Patrick Jähnichen, Antje Schlaf

Page 2: Text Mining - Übung

Patrick Jähnichen Textmining - Übung

Ablauf

• Übungen finden im zweiwöchigen Rhythmus statt– Nächste Termine: 07.11., 28.11., 12.12., 09.01., 30.01.

– Termine und Themen stehen rechtzeitig auf der ASV Homepage

• Termin bestehen aus zwei Teilen– 50 Minuten: Zwei Vorträge von Studierenden

• 20 Minuten Vortrag / 5 Minuten Diskussion• Themenvergabe immer für den nächsten Termin

– 40 Minuten: Übung• Fragen zur Vorlesung• Wiederholung des Stoffes• Beispielrechnungen

Page 3: Text Mining - Übung

Patrick Jähnichen Textmining - Übung

Themen nächste Woche

• Büchler, Geßner, Eckart, Heyer: Unsupervised Detection and Visualization of Textual Reuse on Ancient Greek Texts

• Brin: Extracting Patterns and Relations from the World Wide Web

Page 4: Text Mining - Übung

Patrick Jähnichen Textmining - Übung

Resource

• Projekt Deutscher Wortschatz– wortschatz.uni-leipzig.de

– Zugriff auf Webservices

– Wörter des Tages

• Corpora– corpora.informatik.uni-leipzig.de

– Zugriff auf Wortstatistiken, Kookkurrenzen, Kookkurrenzgraphen

Page 5: Text Mining - Übung

Patrick Jähnichen Textmining - Übung

Tools

• nltk (Natural Language Processing Toolkit)– Python Bibliothek

– Verschiedene Korpora verfügbar

– Informationen unter www.nltk.org

– Dokumentation und Beispiele

• Mallet (Machine Learning for Language Toolkit)– Java package

– Fokus auf Machine Learning Anwendungen

– z.B. Dokumentklassifikation, NER, Topicmodelle

– Informationen unter mallet.cs.umass.edu

Page 6: Text Mining - Übung

Patrick Jähnichen Textmining - Übung

Text Mining

• Begriffsdefinition– Bündel von Analyseverfahren, die die algorithmusassistierte

Entdeckung von Bedeutungsstrukturen aus un- oder schwachstrukturierten Textdaten ermöglichen soll (Wikipedia)

• Was wollen wir wissen/machen/heraus bekommen?– Analyse großer Dokumentkorpora

– Extraktion von bekanntem Wissen (also Namen, Daten, Relationen)

– Extraktion von unbekanntem Wissen (etwa thematische Einordnung von Dokumenten, Synonym- und Polysemerkennung, Themenfindung)

– Taxonomie- / Ontologieextraktion

Page 7: Text Mining - Übung

Patrick Jähnichen Textmining - Übung

Grundlegendes Vorgehen

Dokumente

Ergebnis-datenbank

en

1. Preprocessing: Säubern, LangID, Verweise, ...

2. Filter: Zerlegung, Markup, Metadaten, …

3. Verarbeitung:

- statistische Verfahren

- Muster basierte Verfahren

- Indexierung

Analysis of text

Page 8: Text Mining - Übung

Patrick Jähnichen Textmining - Übung

Grundlegendes Vorgehen

• Preprocessing– Extraktion des eigentlichen Textes

– Anlegen von Wörterbüchern

– Entfernen von Stopwörtern

– Termentfernung (Mindestfrequenz)

– Entfernung von Punktuation

• Filtering– Extraktion von Metadaten (z.B. Autor des Textes, Erscheinungsort- und

Datum, Sprache, etc.)

– Stemming/Lemmatisierung (Grundformreduktion)

– POS-Tagging

Page 9: Text Mining - Übung

Patrick Jähnichen Textmining - Übung

Grundlegendes Vorgehen

• Nutzen des extrahierten, gereinigten Textes und der Metadaten zum eigentlichen Textmining

• Erstellung von Featurevektoren– Textparameter bestimmen Textmerkmale (aus vorangegangenem

Schritt verfügbar)• Textstruktur• Autor• Addressat• Entstehungskontext (Zeit, Ort, Medium)

Page 10: Text Mining - Übung

Patrick Jähnichen Textmining - Übung

Featurevektoren für Dokumente

• Dokumentlänge• Sprache• Wort N-Gramme und Wortkookkurrenzen

– deren Frequenzen

– Relative Häufigkeit

– Signifikanzen in Verbindung mit Referenzkorpus

• Ähnlichkeiten von N-Grammen und Kookkurrenzen• Muster von Wort N-Grammen

Page 11: Text Mining - Übung

Patrick Jähnichen Textmining - Übung

Featurevektoren für Einzelwörter

• Worthäufigkeit• Wortlänge• (stat. signifikante) Kookkurrenz mit anderen Wörtern• Prä- und Suffixe• POS-Tag• Buchstaben N-Gramme mit Frequenzen• Orthographie

Page 12: Text Mining - Übung

Patrick Jähnichen Textmining - Übung

Beispieltext

• Ausgangstext– Drei sind einer zu viel: Frankreich war es ein Dorn im Auge, dass im

Rat der Europäischen Zentralbank künftig drei Italiener sitzen sollen. Jetzt hat Italiens Premier Berlusconi seinen Landsmann Bini Smaghi aufgefordert, von seinem Posten zurückzutreten - und sich dem Druck des Franzosen Sarkozy gebeugt.

• Stopwortentfernung– Frankreich Dorn Auge Rat Europäischen Zentralbank Italiener sitzen

Italiens Premier Berlusconi Landsmann Bini Smaghi aufgefordert Posten zurückzutreten Druck Franzosen Sarkozy gebeugt

Page 13: Text Mining - Übung

Patrick Jähnichen Textmining - Übung

Beispieltext

• POS-Tagging– Frankreich[NN] Dorn[NN] Auge[NN] Rat[NN] Europäischen [ADJ]

Zentralbank[NN] Italiener[NN] sitzen[V] Italiens[NN] Premier[NN] Berlusconi[NN] Landsmann[NN] Bini[NN] Smaghi[NN] aufgefordert[V] Posten[NN] zurückzutreten[V] Druck[NN] Franzosen[NN] Sarkozy[NN] gebeugt[V]

• einige Wortkookkurrenzen– Wortfenster Länge 2

• Dorn Auge• Franzosen Sarkozy• Premier Berlusconi• Posten zurückzutreten

– Wortfenster Länge 3• Rat (der) Europäischen Zentralbank• Italiens Premier Berlusconi• Landsmann Bini Smaghi

– Längere Wortfenster• Druck gebeugt

Page 14: Text Mining - Übung

Patrick Jähnichen Textmining - Übung

Verfahren

• Stringbasiert– Editierdistanz

– Text Reuse

• Musterbasiert– Patterns, Bootstrapping

– NER, Informations-/Relationsextraktion

• Inhaltsbasiert– Latent Semantic Analysis und Topicmodelle

– Clustering, Classification

– Kookkurrenzbasiert

• Hybridverfahren

Page 15: Text Mining - Übung

Patrick Jähnichen Textmining - Übung

Named Entity Recognition

• Unterverfahren der Informationsextraktion• Fokussierung auf vorgefertigte informationelle Kategorien• Extraktion und korrekte Einordnung von Eigennamen im Text• Nutzung von Einzelwortfeatures

– Für jedes Einzelwort soll entschieden werden, ob, und wenn ja, welche Art von Eigenname dies ist.

– Kokkurrenz mit anderen Wörtern• z.B. Triggerwörter aus der Vorlesung: GmbH, Stadt, Buch

– Orthographie• z.B. Patrick --> Xxxxxxx, IL-2 --> XX-#

– Präfixe/Suffixe• Patrick --> <P, <Pa, <Pat, ..., ick>, ck>, k>

Page 16: Text Mining - Übung

Patrick Jähnichen Textmining - Übung

Named Entities

• Vorname• Nachname• Beruf• Ort• Institution• Daten• Adressen• ...

Page 17: Text Mining - Übung

Patrick Jähnichen Textmining - Übung

Named Entity Recognition

• Mithilfe von Support Vector Machines– Jedes Objekt (Wort) als Vektor in einem Vektorraum

– Anpassung einer Hyperebene im Vektorraum zur Einteilung der Objekte in zwei Klassen (SVM ist ein binärer Klassifikator)

– Zur Berechnung der Hyperebene werden nur die ihr am nächsten liegenden Vektoren benötigt --> Stützvektoren (Support Vectors)

Page 18: Text Mining - Übung

Patrick Jähnichen Textmining - Übung

Zur Anzeige wird der QuickTime™ Dekompressor „“

benötigt.

Support Vector Machines

– Hyperebene nur möglich, wenn Objekte linear trennbar

– Trick: Überführung in höherdimensionale Räume, „irgendwann“ ist eine lineare Trennung möglich

– In NER One-vs.-All Methode

Page 19: Text Mining - Übung

Patrick Jähnichen Textmining - Übung

Support Vector Machines

• Vorgehen– Ausgangspunkt ist eine annotierte Liste von Named Entities

• d.h. eine Liste von Termen mit Featurevektoren und Kategorisierung

– Trainieren einer SVM zur Entscheidung Named Entity <-> „normales“ Substantiv

– Für jede Kategorie• Trainieren eine gesonderten SVM zur Entscheidung Kategorie

trifft zu <-> trifft nicht zu• One-vs.-All• Kann das Wort in keine Kategorie klassifiziert werden, wird es als allgemein

als Named Entity gekennzeichnet

Page 20: Text Mining - Übung

Patrick Jähnichen Textmining - Übung

Named Entity Recognition

• Musterbasiert mithilfe des Pendelalgorithmus– DEMO Antje Schlaf