Text Mining Dr. Brigitte Mathiak.

Slides:



Advertisements
Ähnliche Präsentationen
Algorithmen und Datenstrukturen
Advertisements

Kohonennetze für Information Retrieval mit User Feedback
Informatik II: Algorithmen und Datenstrukturen SS 2013
Eine dynamische Menge, die diese Operationen unterstützt,
Polynomial Root Isolation
Wissensanalyse von Aufgaben mit TKS Eine Methode zur Problemlösung
Dr. Brigitte Mathiak Kapitel 10 Physische Datenorganisation.
TECHNISCHE UNIVERSITÄT DARMSTADT Naive Bayes for Ranking
Seminar Textmining WS 06/07 Themen Übung 11 unsupervised vs. supervised Symbolfolgen, Kunstsprachen Page Rank.
Seminar Textmining WS 06/07 Themen Übung 9 Multilingualität Weitere Termine: 13.7.Symbolfolgen und PageRank Findlinks mitstreiter gesucht!
3. Kapitel: Komplexität und Komplexitätsklassen
WS 05/06Automatische Akquisition linguistischen Wissens1 Partielles Wissen erweitern 1.Zusammenhang mit bisherigen Algorithmen 2.Vom offensichtlichen zum.
Das Erstellen einer Hausarbeit
Fragetechnik statt Sagetechnik
Sortierverfahren Richard Göbel.
Sortierverfahren Richard Göbel.
Algorithmus. Ein Kochrezept, zum Beispiel: Kartoffelbrei.
Benutzen von Internetseiten
Datenbankentwurf mit Hilfe des ER-Modells entwickeln
Support.ebsco.com Lernprogramm zur einfachen Suche in wissenschaftlichen Bibliotheken.
Qualitätskriterien zur Beurteilung von Dokumentationen
Indexierung - Verschlagwortung
Relevanz Ranking Bisher:
Berufsinformationswoche am KFG
Maschinelles Lernen und automatische Textklassifikation
Maschinelles Lernen Bayessche Verfahren (Mitchell Kap. 6), Teil 1.
Entitäten Extraktion Einführung
Kakuro Regeln und Strategien
DÄMONEN Dämonen existieren nicht! Sie entstehen in unserem Kopf!
Eine Produktion von der Firma Presentations GmbH
Externe Bewertung in IB-Biologie
1 Knowledge Discovery mit Wordnet und Alembic Workbench (Julia Faion) (Markus Reiter)
Im Internet geht alles schneller, aber es dauert länger
Ein Thema aus der Kartenkunde: Generalisieren
Erstellt von: Manuela, Marc und Midhat im Rahmen des MMF_3 Kurses.
Computational Thinking Online Algorithmen [Was ist es wert, die Zukunft zu kennen?] Kurt Mehlhorn Konstantinos Panagiotou.
Hartmut Klauck Universität Frankfurt SS
Nehm dir Zeit, um die Botschaft zu lesen.
Erfindervon Fuzzy Logic
Bereit ???? Nimm dir 10 Minuten Zeit. Ich versuche es dir zu erklären.
Wahrscheinlichkeitsrechnung
Erstellt von: Manuela, Marc und Midhat im Rahmen des MMF_3 Kurses.
Faire und vertrauensvolle Zusammenarbeit an der
Dynamische Webseiten-Generierung
Using latent semantic analysis to find different names for the same entity in free text Präsentation und Diskussion des Papers Im Rahmen des PS Web-Information.
Proseminar GMA Web Suche und Information Retrieval (SS07)
Elternabend der Schule … vom …
Web 2.0 Interaktives Internet.
Information Retrieval, Vektorraummodell
Management, Führung & Kommunikation
Messergebnis Das Messergebnis ist der Näherungswert für den wahren Wert der Messgröße, der durch Auswertung der mit einer Messeinrichtung gewonnenen Messwerte.
Grammatikalische Begriffe im Unterricht
Operatoren-Zuordnung
Niko Zenker1 Besondere Aspekte in Multimedia-Datenbanken Methoden zur iterativen Anfrageverfeinerung (Relevanz Feedback)
Gliederung der Vorlesung
Subnetting.
Binärbäume.
Einführung in Text Mining
Programmiersprachen II Vorbesprechung Klausur Prof. Dr. Reiner Güttler Fachbereich GIS HTW.
Text Mining auf annotierten Texten
ResA am Arbeitsplatz Das Vorgehen ist angelehnt an „5 S“ und bietet Ihnen die Möglichkeit das Konzept der 5 Disziplinen ressourcenschonenden Arbeitens.
Programmiersprachen II Fortsetzung Datenstrukturen Balancierte Bäume 3 Prof. Dr. Reiner Güttler Fachbereich GIS HTW.
Programmiersprachen II Fortsetzung Datenstrukturen Balancierte Bäume 1 Prof. Dr. Reiner Güttler Fachbereich GIS HTW.
CL Tree MW 31.1 Business Intelligence Wintersemester 2015 / 2016 Stanislav Prokupetz.
Englischunterricht mit dem Lehrmittel «New World».
 Gegenstandsbereich der Testtheorie: Analyse der Charakteristika von Tests:  Güte von Tests.  Struktur von Tests.  Schwierigkeit von Tests.  Gruppenunterschiede.
Ich wünsche dir Leben ! Berge kommen nicht zusammen, Menschen schon !
Emanuel Mistretta Lukas Schönbächler
Practical Exercises and Theory
Einführung: Statistische Verfahren der automatischen Indexierung
 Präsentation transkript:

Text Mining Dr. Brigitte Mathiak

Was ist Text Mining? Die Kunst aus Text etwas maschinenverwertbares zu machen Methodisch an der Schnittstelle zwischen Natural Language Processing und Data Mining Grundkenntnisse in Computerlinguistik, aber auch in KI sind hilfreich

Was kann man mit Text Mining machen? Klassische sind Textklassifikation (z.B. Spam) und Themenanalyse (z.B. für Verzeichnisse) Man kann allerdings auch andere Daten miteinbeziehen (z.B. Zeit) und dann Trendanalysen machen Oft sucht man nicht nach Klassen, sondern versucht besonders ähnliche oder besonders unähnliche Dokumente zu finden Mit Hilfe von Extrawissen, z.B. Wortdatenbanken, kann man auch spezielle Einschätzungen machen, z.B. ob jemand ein Thema positiv oder negativ sieht

Was kann man nicht mit Text Mining machen? Die Datenstruktur sollte idealerweise mindestens 100 Dokumente enthalten, die jeweils mindestens 100 Worte enthalten Die Dokumente sollte Sacheinheiten bilden. Grenzen und Regionen innerhalb von Dokumenten zu finden ist mit der Methodik schwierig (aber möglich) Es ist sehr schwierig zwischen sprachlichen Unterschieden und sachlichen Unterschieden zu unterscheiden

Workflow Visualization Evaluation Data Analysis Feature Extraction Acquisition Preprocession Feature Extraction Data Analysis Evaluation Visualization

Je nach Aufgaben macht es Sinn nur Teile zu nehmen Acquisition Preprocession Feature Extraction Data Analysis Evaluation Visualization Quellen PubMed (medizinisch/biologische Texte) Gutenberg Projekt (Literatur) Pressemitteilungen Twitter Je nach Aufgaben macht es Sinn nur Teile zu nehmen Spamfilter1: Testdatensätze von TREC und hotmail 1 nach Yang Song, Aleksander Kolcz, C. Lee Giles, "Better Naive Bayes classification for high-precision spam detection," Softw., Pract. Exper., 39(11): 1003-1024, 2009.

Formatumwandlung (PDF, Text, Metadaten) Codingsprobleme beachten Acquisition Preprocession Feature Extraction Data Analysis Evaluation Visualization Korpus Formatumwandlung (PDF, Text, Metadaten) Codingsprobleme beachten Daten auf Konsistenz überprüfen und ob der gewünschte Inhalt tatsächlich enthalten ist Spamfilter: Qualität der Daten überprüfen (tatsächlich enthielt der hotmail Datensatz 2-5% Fehler wegen falscher Nutzereingabe)

Meistens Bag-of-Words Ansatz (nur Worthäufigkeit, ohne Reihenfolge) Acquisition Preprocession Feature Extraction Data Analysis Evaluation Visualization Bearbeiteter Korpus Meistens Bag-of-Words Ansatz (nur Worthäufigkeit, ohne Reihenfolge) Worthäufigkeitsnormalisierung (z.B. tf idf) Zusätzliche Features dazu nehmen Spamfilter: Ein Bag für Subject und Textbody, ACR anstatt idf, dazu natürlich noch die Information wie Nutzer gelabelt haben

Klassifikation oder Clustering oder etwas exotisches Acquisition Preprocession Feature Extraction Data Analysis Evaluation Visualization Dokumentvektoren Klassifikation oder Clustering oder etwas exotisches Jeweils mit einer Menge möglicher Algorithmen Spamfilter: Klassifikation Spam/nicht Spam mit Hilfe von cascading Naïve Bayes und synthetic minority over-sampling (SMOTE)

Um Overfitting zu vermeiden muss das Ergebnis überprüft werden Acquisition Preprocession Feature Extraction Data Analysis Evaluation Visualization Ergebnis Um Overfitting zu vermeiden muss das Ergebnis überprüft werden Gemessen wird die Quote der falsch erkannten (Precision) und die der nicht gefundenen (Recall) Spamfilter: Für Spam ist Precision sehr viel wichtiger als Recall (wenn Spam durchrutscht ist es nicht so schlimm, wie wenn eine echte Email im Spamordner landet), daher Messung von AUC für niedrige Precision (0..0,14)

Bei Clustering manchmal einfach mit Tags Acquisition Preprocession Feature Extraction Data Analysis Evaluation Visualization Ergebnis Bei Klassifikation häufig sehr einfach (z.B. unterschiedliche Farben oder Ordner) Bei Clustering manchmal einfach mit Tags Netzwerke zum Teil sehr komplex Spamfilter: Spam kommt in den Spamordner

Was muss ich wissen? Was ist ein Wort? Die statistisches Eigenschaften von Sprache Die relevanten linguistischen Eigenschaften von Sprache Welches Modell benutze ich für die Repräsentation? Welchen Algorithmus benutze ich? Wie funktioniert die Evaluation?

Was ist ein Wort? Normalerweise definiert als der String zwischen zwei Leerzeichen ohne Satzzeichen Ist ‚3.14‘ ein Wort? Ist ‚qwerty‘ ein Wort? Ist ‚:-)‘ ein Wort? Ist ‚Die‘ gleich ‚die‘? Ist ‚Erfahrung‘ gleich ‚Erfarung‘? Wie viele Worte hat ‚das Bundesland Rheinland-Pfalz‘? Wie viele Worte hat ‚Donaudampfschiffahrtskapitän‘? Den Prozess der Wortextraktion nennt man Tokenization Die obigen Fragen können nur nach Bedeutung geklärt werden

Statistische Linguistik (1/4) Zipf‘s Gesetz: Worte folgen einer Exponentialverteilung Quelle: http://searchengineland.com/the-long-tail-of-search-12198 Anzahl der Worte in Moby Dick von Melville

Statistische Linguistik (2/4) Konsequenzen aus Zipf‘s Gesetz: Das häufigste Wort kommt etwa zweimal so oft vor wie das zweithäufigste, dreimal so oft wie das dritthäufigste, … Sehr häufige Worte wie der, und, die machen einen Großteil der Worte insgesamt aus (>50%), tragen aber nur wenig Sinn Es gibt sehr viele, sehr seltene Worte, wenn diese aber zu selten vorkommen (z.B. nur einmal), dann kann man da auch keinen Sinn erkennen

Statistische Linguistik (3/4) Wir suchen daher nach dem Wal Quelle: http://searchengineland.com/the-long-tail-of-search-12198 Anzahl der Worte in Moby Dick von Melville

Statistische Linguistik (4/4) Annahme: Signifikant für ein Dokument sind insbesondere die Worte, die in diesem Dokument überdurchschnittlich häufig vorkommen Mathematisch kann man dies durch das höhergewichten solcher Worte ausdrücken tf idf = term frequency*document frequency-1 i steht für inverse

Ausflug: Latent Semantic Indexing Annahme: Worte im selben Dokument sind semantisch näher aneinander als andere Worte Daher kann man mit Matrizenzerlegung die Matrix auf eine kleinere Matrix reduzieren Diese ist dann sogar eine bessere Repräsentation des Dokuments, obwohl sie weniger Information enthält

Linguistik Es ist also von Vorteil zu wissen, welche Worte gleich, ähnlich und wenn ja wie ähnlich sind Die Linguistik hilft da z.B.: Grammatik: Baum und Bäume ist von der Bedeutung her fast gleich, solche grammatikalisch begründeten Endungen können also systematisch eliminiert werden (stemming) Wortdatenbanken, wie WordNet, enthalten Informationen über ähnliche Worte und deren Bedeutung

Wortbedeutung Synonyme: Bereich, Gebiet Homonyme: Bank (Geldinstitut), Bank (Sitzgelegenheit) Fast jedes Wort hat synonymischen und homonymischen Charakter Suche teilt sich homonymisch auf in: Ermittlung Verfolgung Untersuchung Nachstellung Was wiederum Synonyme sind Die tatsächliche Bedeutung ist (für Menschen) aus dem Kontext erkennbar (Kontext Geld vs. Spaziergang) Die Bedeutung bleibt aber immer unscharf, da der Kontext nie vollständig bekannt ist (auch nicht für Menschen) Faustregel: Statistische Verfahren werden immer besser je mehr Daten zur Verfügung stehen, wenn also nicht viele Daten da sind, dann sollte man sich linguistische Gedanken machen, bei vielen Dokumenten und hoher Datenqualität ist das nicht so relevant Wenn allerdings die Ergebnisse ganz schlecht sind, dann kann einen die Linguistik im Allgemeinen auch nicht mehr retten

Modelle (1/2) Für die Benutzung von Data Mining Algorithmen brauchen wir Vektoren von möglichst unabhängigen Variablen Der klassische Weg dabei ist der Bag-of-Words Ansatz Dabei wird die Reihenfolge der Worte bewusst weggelassen Trotzdem gibt es noch eine Reihe von Möglichkeiten Dokumente und Worte miteinander mit Zahlen zu verknüpfen

Modelle (2/2) Binäres Modell: Wort da 1, sonst 0 geeignet für kurze Texte tf term frequency: Wie oft kommt das Wort vor geteilt durch die Länge des Dokuments tf idf = term frequency*document frequency-1 Latent semantic indexing Topic models (kompliziert…)

Data Mining Klassifikation: (supervised) Clustering: (unsupervised) Der Computer lernt verschiede Label und kann sie dann selbstständig zuordnen Benötigt möglichst viele Trainingsdaten Clustering: (unsupervised) Die Label werden ohne Trainingsdaten rein aufgrund der Nähe von Dokumenten untereinander vergeben

Algorithmen Es gibt eine Reihe von Bibliotheken für Data Mining Algorithmen: Weka (Java, nur Data Mining) Mallet (Java Bibliothek speziell für Text Mining, enthält auch einiges für Text Pre-processing) Alle Algorithmen haben individuelle Stärken und Schwächen um sicher zu gehen sollte man mindestens Algorithmen aus den folgenden Familien ausprobieren: Support Vector Machine (SVM bzw. SVO) Rule-based Learning (JRip bei Weka, es gehen auch decision trees) Naive Bayes (nicht zu verwechseln mit Naive Bayes networks oder cascades) Maximum Entropy Der Vorteil bei regelbasierten Algorithmen ist, dass man direkt sehen kann, was passiert

Evaluation Die Bibliotheken machen normalerweise gleich eine Evaluation der Daten (mittels cross-validation) Die wichtigsten Begriffe: Precision, Recall, F-Measure sind alles Begriffe aus dem Information Retrieval und messen für binäre Klassifikation die Anzahl der korrekten Klassifikationen Accuracy ist dasselbe für mehrere Klassen Am Besten sind in der Regel große Werte nah an 1

Dokumentähnlichkeit Manchmal braucht man nur die Ähnlichkeit zwischen zwei Dokumenten, Termen, Themen, … Bei Vektorbasierten Modellen gibt es wieder ein paar Methoden dafür: Cosine simililarity Tanimoto similarity Mutual information Google/Wikipedia distance (für Terme) …

Sentiment Analysis Anhand von Wörterbüchern kann man die Meinung des Schreibers extrahieren Das wird z.B. für Reviews verwendet Achtung! Das funktioniert nicht so gut, wie man gemeinhin erwarten würde

Pattern Beim der Suche nach bestimmten Wörtern werden Pattern eingesetzt „X ist mein Geburtstag“ findet Zeitangaben (lt. Google 2xMorgen, 7xHeute, 1xbald ) Aber Achtung „X ist eine Krankheit“ -> Demütigung, Homosexualität, Hartz-IV, Arroganz, … Dies ist gut um einen Spezialkorpus von Wörtern aufzubauen Wenn man bereits Beispiele hat, dann kann man auch umgekehrt die Pattern lernen und dann wieder anwenden um mehr solche Worte zu finden

Themen http://dl.dropbox.com/u/117871/gesis/tms/index.html Wie viele Antworten hat ein Twitter Post? Worüber reden Politiker auf Facebook? Welches Sentiment herrscht auf Twitter/Facebook gegenüber Politikern? Party Manifestos (CD) Welches Parteiprogramm gehört zu welcher Partei? (mehrsprachig) Welcher publisher ist am nächsten an welchem Parteiprogramm? (s. auch dropbox oben) http://wintersresearch.wordpress.com/qes-britain/ Was halten die von Gordon Brown?

Der Aufbau Zweier- oder Dreiergruppen mit gemischten Erfahrungen Thema soll praktisch bearbeitet werden Es wird evtl. keine „gute“ Lösung geben, daher ist es wichtig den Weg zu dokumentieren Eine der angewendeten Lösungsmethoden soll theoretisch aufgearbeitet werden Im Vortrag und im Seminar wird dann beides vorgestellt

Vortrag und Ausarbeitung Vortrag: 20 min + 10 min Diskussion Einen Entwurf der Folien brauche ich spätestens eine Woche vor dem Vortragstermin 2 bis 3 Vortragstermine Ausarbeitung: Ca. 20 Seiten Mindestens 3 echte wissenschaftliche Papiere referenzieren Abgabe am Ende des Semesters (für alle)

Bewertung Eigenständiges Arbeiten und Recherchieren Witzige Ideen Gute Kommunikation Fleiß Schönes Layout Gute Ergebnisse

Themen http://dl.dropbox.com/u/117871/gesis/tms/index.html Wie viele Antworten hat ein Twitter Post? Worüber reden Politiker auf Facebook? Welches Sentiment herrscht auf Twitter/Facebook gegenüber Politikern? Party Manifestos (CD) Welches Parteiprogramm gehört zu welcher Partei? (mehrsprachig) Welcher publisher ist am nächsten an welchem Parteiprogramm? (s. auch dropbox oben) http://wintersresearch.wordpress.com/qes-britain/ Was halten die von Gordon Brown?