1 / 33

Text Mining

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.

affrica
Download Presentation

Text Mining

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Text Mining Dr. Brigitte Mathiak

  2. 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

  3. 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

  4. 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

  5. Workflow

  6. 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 Bayesclassificationfor high-precisionspamdetection," Softw., Pract. Exper., 39(11): 1003-1024, 2009.

  7. 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)

  8. Bearbeiteter Korpus • Meistens Bag-of-Words Ansatz (nur Worthäufigkeit, ohne Reihenfolge) • Worthäufigkeitsnormalisierung (z.B. tfidf) • Zusätzliche Features dazu nehmen • Spamfilter: Ein Bag für Subjectund Textbody, ACR anstatt idf, dazu natürlich noch die Information wie Nutzer gelabelt haben

  9. Dokumentvektoren • Klassifikation oder Clustering oder etwas exotisches • Jeweils mit einer Menge möglicher Algorithmen • Spamfilter: Klassifikation Spam/nicht Spam mit Hilfe von cascadingNaïveBayesund syntheticminorityover-sampling (SMOTE)

  10. 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)

  11. 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

  12. 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?

  13. 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

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

  15. 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

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

  17. 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 • tfidf = termfrequency*documentfrequency-1 i steht für inverse

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

  19. 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

  20. 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 relevantWenn allerdings die Ergebnisse ganz schlecht sind, dann kann einen die Linguistik im Allgemeinen auch nicht mehr retten

  21. 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

  22. Modelle (2/2) • Binäres Modell: Wort da 1, sonst 0geeignet für kurze Texte • tftermfrequency: Wie oft kommt das Wort vor geteilt durch die Länge des Dokuments • tfidf = termfrequency*documentfrequency-1 • Latent semanticindexing • Topic models (kompliziert…)

  23. Data Mining • Klassifikation: (supervised) • 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

  24. 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 VectorMachine (SVM bzw. SVO) • Rule-based Learning (JRip bei Weka, es gehen auch decisiontrees) • Naive Bayes (nicht zu verwechseln mit Naive Bayesnetworks oder cascades) • Maximum Entropy Der Vorteil bei regelbasierten Algorithmen ist, dass man direkt sehen kann, was passiert

  25. 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

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

  27. 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

  28. 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

  29. 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?

  30. 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

  31. 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)

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

  33. 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?

More Related