Zum Inhalt springen

  • Beiträge
    72
  • Kommentare
    239
  • Aufrufe
    12.695

Modulbericht: Text Mining


kurtchen

679 Aufrufe

Das Modul "Text Minining" kann in den Studiengängen von Springer Campus im Vertiefungsbereich (also als Wahlpflichtfach) belegt werden. Es ist auch Teil des Hochschulzertifikates "Junior-Data-Analyst". Um dieses Zertifkat zu erlangen, muss man allerdings auch eine Projektarbeit mit dem inhaltlichen Schwerpunkt Datenanalyse schreiben.

 

Ich hatte mich für dieses Modul entschieden, weil ich auch Data Mining belegt hatte. Der Schwerpunkt dieses Moduls lag stark auf der Anwendung von Data Mining Techniken in einem betrieblichen Kontext. Es war also eher aus der Perspektive der Wirtschaftsinformatik geschrieben. Mich hätte mehr interessiert, wie die verschiedenen Techniken zur Wissensextraktion mathematisch und algorithmisch funktionieren. Das spielte eine vergleichsweise geringe Rolle. Die Beschreibung des Moduls "Text Mining" ließ erwarten, dass der Schwerpunkt hier anders gelegt sein würde; nämlich auf Mathematik, Statistik und Algorithmen. Insofern hoffte ich, in diesem Modul das zu finden, was ich eigentlich im Modul "Data Mining" gesucht hatte. Ich wurde nicht enttäuscht.

 

Wer dieses Modul im Wahlpflichtbereich belegen möchte, sollte wissen, dass es inhaltlich zu den anspruchsvollsten Modulen im Studiengang gehört. Das Modul "Statistik" wird als fachliche Voraussetzung genannt. Das finde ich nachvollziehbar. In diesem Modul spielen auch einige Inhalte aus dem ersten Mathematik-Modul eine Rolle: Mengen, Relationen und Graphen. Das Modul ist recht mathematisch. Wer nach seiner letzten Mathe-Klausur froh war, keine Formeln mehr lesen zu müssen, sollte um dieses Modul eher einen Bogen machen. In der Beschreibung heißt es, das Modul "Data Mining" erlaube es, Querbezüge herzustellen. Das trifft es recht gut. Wer die hier beschriebenen Verfahren begriffen hat, kann sich gut vorstellen, wie man vergleichbares mit den strukturierten und halbstrukturierten Daten in Datenbanken machen kann. Für mich hat daher das Modul "Text Mining" einige der Inhalte aus Data Mining noch einmal neu "zum Leben erweckt".

 

Beim Thema Text Mining berühren sich Informatik, Mathematik, Statistik und die Geisteswissenschaften. Gerade letzteres könnte für manchen Informatik-Studenten herausfordernd sein. So lässt es sich beispielsweise nicht vermeiden, ein wenig linguistische Terminologie zu lernen. Begriffe wie Phonem, Graphem, Morphem, Flexiv, Derivativ oder Allomorphe muss man sich erschließen, wenn sie aus Schulzeiten nicht mehr geläufig sein sollten. Beim Thema Text Mining muss der Informatiker den Geisteswissenschaften ein Stück weit entgegenkommen. Es ist sehr interessant, wie Informatik und Sprachwissenschaft sich gegenseitig fachlich bereichern können. In diesem Bereich tut sich gerade einiges. So bezeichnet der Begriff "digital humanities" die Nutzung computergestützter Verfahren und digitaler Wissensressourcen in den Geisteswissenschaften. Solche digitalen Ressourcen sind zum Beispiel die großen Mengen natürlichsprachlicher Texte im Internet.

 

Das Lehrbuch

 

Das Lehrbuch "Text Mining: Wissensrohstoff Text" von Gerhard Heyer, Uwe Qualsthoff und Thomas Wittig hat an die 350 Seiten. Mir liegt der 3. Nachdruck vom Mai 2016 vor. Ursprünglich erschienen ist es 2006. Nun könnte man meinen, das sei für ein Lehrbuch im Bereich Informatik ein stattliches Alter. Man muss sich aber klarmachen, dass es hier nicht um konkrete Implementierungen und Technologien geht, die schnell wieder aus der Mode kommen. Das Buch beschäftigt sich mit Konzepten, Methoden und Algorithmen. Solches Wissen hat eine deutlich höhere Halbwertszeit. Insofern bin ich bei diesem Modul nicht der Meinung, eine inhaltliche Aktualisierung sei nötig. In der Lernplattform und bei den Einsendeaufgaben wird allerdings manchmal auf Online-Ressourcen verwiesen, die in dieser Form nicht mehr existieren. Eine Bearbeitung der Aufgaben ist trotzdem möglich, aber hier wäre eine Aktualisierung sicher benutzerfreundlicher.

 

Das Thema Text Mining ist komplex. Man braucht viele Konzepte, Begriffe und Verfahren, die wechselseitig stark voneinander abhängen. Daraus ergibt sich die Schwierigkeit, in welcher Reihenfolge man die Inhalte präsentiert. Es lässt sich bei diesem Thema nicht vermeiden, manche Themen mehrfach anzusprechen, weil man ein erstes Verständnis braucht, um sich weitere Konzepte zu erschließen, die dann erst ein vertieftes Verständnis der ersten Themen ermöglichen. So ist es auch in diesem Buch. Immer wieder tauchen Themen aus früheren Kapiteln auf und erscheinen nun in neuem Licht. Diese didaktischen Schleifen sind nötig, weil man den Stoff nicht im ersten Anlauf begreifen kann.

 

Das Einführende Kapitel "Wissen und Text" gibt auch einen kleinen historischen Rückblick über die automatische Wissensverarbeitung. Hier geht es u.a. um den Ansatz der Expertensysteme, der auf Logik, Fakten und Regeln basierte (Klassische KI). Dieser Ansatz erwies sich als nicht so fruchtbar, wie ursprünglich erhofft. Expertensysteme blieben Insellösungen, die über eine gewisse Komplexität nicht hinaus kamen. Außerdem war ein hoher Aufwand zur Wissenserschließung nötig. Text Mining beschäftigt sich mit der (halb-)automatischen Erschließung von Wissen aus unstrukturiertem Text und bietet somit neue Lösungsansätze.

 

Im Kapitel "Grundlagen der Bedeutungsanalyse" berühren sich Linguistik und Statistik. Es geht um drei sehr grundlegende Begriffe, die für das Verständnis des gesamten Moduls essentiell sind:

  • syntagmatische Relationen
  • paradigmatische Relationen
  • semantische Relationen

 

Vereinfacht gesagt, bezeichnet die syntagmatische Relation das gemeinsame Auftreten zweier Wortformen in einem Satz. Im vorhergehenden Satz stehen also die Wortformen "Satz" und "Auftreten" in syntagmatischer Relation. Das alleine hilft aber nicht weiter. Interessanter ist die statistisch-signifikante syntagmatische Relation. Hierzu betrachtet man die relativen Häufigkeiten einzelner Wortformen im Korpus. Auf dieser Grundlage bestimmt man die Wahrscheinlichkeit dafür, dass zwei Wortformen in einem zufällig zusammengestellten Satz vorkommen. Interessant sind nun Paare von Wortformen, die im Korpus wesentlich häufiger in syntagmatischer Relation stehen, als dies statistisch zu erwarten gewesen wäre. Der Grund ist oft, dass es einen Bedeutungszusammenhang zwischen den Wortformen gibt. So werden zum Beispiel die Wörter Butter und Brot häufiger gemeinsam auftreten als etwa Butter und Schraube.

 

Der betrachtete Ausschnitt muss nicht immer ein Satz sein. Für viele Anwendungen ist es interessant, benachbarte Wörter zu betrachten. Wörter die statistisch häufig gemeinsam auftreten, bezeichnet man als Kookkurrenzen. Das Finden von Kookkurrenzen ist die Grundlage der Bedeutungsanalyse.

 

Die paradigmatische Relation hat einen höheren Abstraktionsgrad. Hierfür betrachtet man den globalen Kontext einer Wortform. Das ist einfach die Menge ihrer signifikanten Kookkurrenzen. So könnte z.B. ein Wort wie Brot Kookkurrenzen wie Butter, Marmelade, Bäcker, Wurst und Honig haben. Das Wort Semmel könnte ähnliche oder die gleichen Kookkurrenzen haben. Die Kookkurrenzen sind also Mengen von Wörtern. Man vergleicht nun für Paare von Wörtern diese Wortmengen mittels eines Ähnlichkeitsmaßes. Sind die Kookkurrenzen ähnlich, so sagt man, die Wörter stehen in paradigmatischer Relation. Dies dürfte bei Brot und Semmel der Fall sein. Man sucht also Wörter, die in ähnlichen Kontexten verwendet werden. Dies ist für die Bedeutungsanalyse sehr fruchtbar.

 

Semantische Relationen findet man, indem man die globalen Kontexte vor Bestimmung der Ähnlichkeit nach verschiedenen Kriterien filtert. Auf diese Weise findet man Zusammenhänge wie Kategorie, Funktion, Maßeinheit, Qualifizierung oder Ersetzungsklassen von Wörtern. Logische Relationen sind besonders trennscharf. Sie erlauben das Ziehen von Schlüssen. Dazu gehören z.B. Ober- und Unterbegriffe oder Gegensatzpaare.

 

Interessant ist hierbei, dass Logik aus der Perspektive der Bedeutungsanalyse nicht als grundlegend erscheint. Grundlegend sind die statistisch-signifikanten syntagmatischen Relationen, also das auffällig häufige gemeinsame Auftreten von Wortformen. Logische Relationen erscheinen erst auf relativ hohen Abstraktionsstufen (sozusagen als emergente Eigenschaft). Dies ist ein wichtiger Unterschied zu den klassischen Expertensystemen, bei denen die Logik grundlegend war. Mit der Bedeutungsanalyse lassen sich logische Beziehungen zwischen Begriffen durch statistische Verfahren extrahieren.

 

Im Kapitel "Textdatenbanken" geht es um Datenstrukturen, die sich für die Verarbeitung sehr großer Mengen natürlich-sprachlicher Texte eignen. Diese sollen einerseits platzsparend sein, andererseits einen sehr schnellen Zugriff erlauben. So soll es beispielsweise möglich sein, bei einem Korpus aus hunderten Millionen Wörtern schnell zu überprüfen, ob ein bestimmtes Wort enthalten ist. Eine Datenstruktur, die sich dafür gut eignet, sind sogenannte Tries. Sie sind letztlich Baumstrukturen, wobei jeder Knoten für einen Buchstaben eines Wortes steht. Das interessante an einem Trie ist, dass die Zugriffszeit nicht von der Anzahl der enthaltenen Wortformen sondern allein von der Länge des gesuchten Wortes abhängt.

 

Auch die Herausforderungen der Segmentierung von Texten sind ein Thema dieses Kapitels. So könnte man meinen, das Ende eines Satzes lasse sich leicht finden, weil deutsche Sätze auf einen Punkt enden. Denkt man einen Moment darüber nach, merkt man, dass die Sache wesentlich komplizierter ist. Nicht jeder Satz endet mit einem Punkt. Nicht jeder Punkt markiert das Ende eines Satzes. Zum Beispiel kann ein Algorithmus leicht eine Abkürzung mit einem Satzende verwechseln. Auch die Identifikation einzelner Wortformen kann durch zahlreiche Sonderfälle erheblich verkompliziert werden.

 

Im Kapitel "Sprachstatistik" geht es zunächst um die Zipfschen Gesetze. Diese erlauben z.B., die Anzahl der verschiedenen Wortformen eines Textes relativ gut zu schätzen, wenn seine Länge und seine Sprache bekannt sind. Sehr wichtig für das Verständnis der folgenden Kapitel ist der Abschnitt zur Differenzanalyse. Diese beruht auf dem Vergleich einer Textsammlung allgemeinsprachlicher Texte (dem Referenzkorpus) mit einer Sammlung bestimmter Texte (Analysekorpus). Die bestimmten Texte könnten zum Beispiel Zeitungsartikel eines bestimmten Themenbereiches sein. Die Differenzanalyse sucht mit statistischen Methoden nach Wortformen im Analysekorpus, die wesentlich häufiger auftreten als im Referenzkorpus. Dies ist ein Hinweis darauf, dass diese Wortformen für den Text oder die Textgattung in besonderer Weise bedeutungstragend sind. Dies ist zum Beispiel eine Grundlage für die automatische Beschlagwortung von Texten.

 

Relativ anspruchsvoll sind die Abschnitte zum probabilistischen Sprachmodell. Hier geht es um Hidden-Markov-Modelle. Sie sind endliche Automaten, deren Zustandsübergänge mit Wahrscheinlichkeiten versehen sind. Hidden-Markov-Modelle (HMMs) kann man vielfältig einsetzen, zum Beispiel in der Spracherkennung. HMMs können nämlich mehrdeutige Fälle durch Auswertung des Kontextes auflösen. Sie können z.B. entscheiden, welches von mehreren gleich oder ähnlich klingenden Wörtern gemeint ist.

 

Spannend sind die Verfahren zur Visualisierung von Kookkurrenzen mit Graphen. Um Begriffe herum erscheinen Wortwolken mit Begriffen, die in einem inhaltlichen Zusammenhang stehen. Bei manchen Begriffen sind diese Wortwolken zusammenhängend. Bei anderen zerfallen sie in Cluster. Das sind dann oft mehrdeutige Begriffe. Ein Beispiel wäre der Begriff Maus. Er ist umgeben von einem Cluster aus Wortformen, die mit der Bedeutung Nagetier zusammenhängen. Ein weiterer Cluster steht für die Bedeutung Eingabegerät.

 

Im Kapitel "Clustering" geht es um die entsprechenden Algorithmen. Gerade hier kann man vieles auf die Inhalte des Moduls "Data Mining" übertragen. Im Text Mining verwendet man Clustering-Algorithmen, um z.B. Dokumente mit ähnlichem Inhalt zu gruppieren. Es ist faszinierend, dass so etwas allein auf der Grundlage von Kokkurrenzen und Differenzanalyse möglich ist.

 

Im Kapitel "Musteranalyse" geht es reguläre Ausdrücke, die ja jedem Informatiker geläufig sind. Diese eignen sich gut, um aus Texten bestimmte Informationen mit vergleichsweise geringem Aufwand zu extrahieren. Die Suche nach Morphem-Mustern eignet sich dagegen zur automatischen Extraktion von Fachbegriffen eines Fachgebietes.

 

Die letzten beiden Kapitel beschäftigen sich mit "Hybriden Verfahren" und "Beispielanwendungen". Insbesondere im letzten Kapitel werden viele Inhalte aus den vorangegangenen Kapiteln im Anwendungskontext noch einmal präsentiert. Nicht zu vernachlässigen sind in diesem Modul die Anhänge, die z.B. linguistische Begriffe klären oder Stoff aus dem Modul Statistik wiederholen.

 

Tests und Aufgaben

 

Dass die Inhalte anspruchsvoll sind, merkte ich bei diesem Modul auch bei den Tests und Einsendeaufgaben. Selten gelang es mir, die Tests auf Anhieb richtig zu lösen. Gut war, dass die meisten relativ umfangreiche Kommentare enthielten, so dass man erklärt bekam, warum etwas falsch war. Das half ungemein. Es empfiehlt sich, die gleichen Tests nach ein paar Tagen zu wiederholen, um zu schauen, ob man den Stoff verinnerlicht hat.

 

Bei allen Aufgaben dieses Moduls habe ich deutlich länger für die Bearbeitung gebraucht als angegeben. In vielen Aufgaben geht es darum, zu erklären, wie bestimmte Verfahren und Anwendungen des Text Minings funktionieren. Es geht um Methoden und Algorithmen. Ich musste die Kapitel schon sehr gründlich durcharbeiten, um den Stoff gut genug zu verstehen.

Die Implementierung der Verfahren in einer konkreten Programmiersprache spielte im Modul dagegen keine Rolle. Das ist kein Kurs für Leute, die mal wieder etwas programmieren wollen. Es geht allerdings durchaus darum, bestimmte Algorithmen so gut zu verstehen, dass man sie implementieren könnte. Ich habe jetzt z.B. eine ganz gute Vorstellung davon, wie Clustering funktioniert. Das schöne daran ist: Wenn man das verstanden hat, könnte man alles mögliche clustern, nicht bloß Texte oder Wortformen. Das Modul hat für mich so ein paar Wünsche erfüllt, die mir im Modul zu Algorithmen und Datenstrukturen offen geblieben sind.

 

Klausur

 

Bei der Online-Klausur habe ich leider gemerkt, dass ich die Aufgaben zwar prinzipiell hätte lösen können, allerdings nicht in der zur Verfügung stehenden Zeit. Dazu hätte man die Konzepte und Methoden schon sehr verinnerlichen müssen, um Lösungen praktisch ohne Nachdenken hinschreiben zu können. Das lief bei mir eher mittelprächtig, weswegen ich der Präsenzklausur mit Sorge entgegen sah.

 

Die Präsenzklausur war dann einfacher als gedacht. Aber das ist kein Modul, das man nebenbei macht. Es ist nötig, alle Einsendeaufgaben gründlich zu bearbeiten. Und man sollte das Feedback seines Tutors nutzen, um fachliche Lücken zu schließen.

 

Die Rückmeldungen meines Tutors waren in diesem Modul z.T. recht umfangreich, was mir bei diesem Thema auch sehr geholfen hat. Nachdem mir in der Online-Klausur die Zeit davongelaufen war, bekam ich auch ein paar Hinweise, wie ich schneller werden könnte. Ich habe versucht, dass in der Präsenzklausur zu beherzigen und hoffe, dass ich etwas davon umsetzen konnte. Auf das Ergebnis warte ich noch.

 

Fazit

 

Dieses Modul hat mich leider sehr lange beschäftigt. Gebucht hatte ich es schon Anfang 2017. Ich hatte angenommen, das irgendwann "zwischendrin" zu bearbeiten. Aber es war zu anspruchsvoll, um es nebenbei zu schaffen. Ich habe dann zunächst geschaut, dass ich Pflichtmodule abarbeite. Dann hielt mich meine Projektarbeit auf Trab. Nach dem Sommer war ich ein bisschen genervt, dass ich Text Mining noch immer nicht abgeschlossen hatte. Ich hatte das Lehrbuch schon zwei Mal zu zwei Dritteln gelesen, hatte es aber immer wieder abbrechen müssen. Um das Modul fertig zu kriegen, musste ich nun abermals von vorne anfangen. Hilfreich war dabei, dass ich Text Mining mit dem Modul "Präsentieren" kombiniert habe, dass mich auf eine ganz andere Weise forderte. Noch mehr abstraktes Denken hätte ich parallel zu Text Mining nicht geschafft.

 

Man kann also sagen, dass Text Mining für mich ein anstrengendes Modul war. Es war allerdings auch ein Modul, dass ich inhaltlich unheimlich interessant fand. Gerade weil es fachlich zwischen Informatik, Statistik und Sprachwissenschaft angesiedelt ist, was die Sache natürlich auch schwierig macht. Im Wahlpflichtbereich gibt es leichtere Optionen. Andererseits meine ich, dass die Module "Data Mining" und "Business Intelligence" erst mit diesem Modul "komplett" sind, weil eben hier die mathematische und algorithmische Perspektive betont wird. Das Modul ist klar für Studierende, die sich im Wahlpflichtbereich ein bisschen fordern wollen.

 

Aktuell warten nur noch zwei gebuchte Module auf mich - IT-Projektmanagement und Electronic Business. In beide habe ich schon reingeschnuppert. Ich hoffe, diese beiden Module im Januar abschließen zu können. Danach sollte nur noch die Bachelorarbeit vor mir liegen.

6 Kommentare


Empfohlene Kommentare

Vielen Dank für Deinen sehr interessanten Einblick in das Text Mining!

Das klingt nach einem Modul, in dessen Bearbeitung man seine Gehirnzellen regelrecht denken und arbeiten hört.

Link zu diesem Kommentar

Ich bin jetzt auch froh, dass es abgeschlossen ist. Ich brauche jetzt bald mal Kopf und Hände frei, um mich auf die Bachelorarbeit zu konzentrieren.

Link zu diesem Kommentar

Die Korrektur der Präsenzklausur im Modul Text Mining ließ diesmal ein bisschen länger als bei Springer Campus üblich auf sich warten. Allerdings lagen auch die Weihnachtsfeiertage und der Jahreswechsel dazwischen, die man meiner Meinung nach nicht wirklich rechnen kann. Jedenfalls ist nun ein erfreuliches Ergebnis da, das mich allerdings diesmal nicht überrascht hat. Damit ist die kleine Modulserie "Data Mining", "Business Intelligence" und "Text Mining" abgeschlossen. Die haben sich inhaltlich ganz gut ergänzt. Da Text Mining die mathematisch-algorithmische Perspektive geliefert hat, ist das Gesamtpaket für mich jetzt auch rund. Rückblickend betrachtet würde ich erst Text Mining und erst dann Data Mining und Business Intelligence belegen. Dann käme der theoretische Hintergrund vor den Anwendungsfällen.

 

Mir fehlen nun noch zwei Module: IT-Projektmanagement und Electronic Business. Das erste habe ich bereits bearbeitet und stehe kurz vor der Klausur. Eigentlich hatte ich mir vorgenommen, bis Januar auch Electronic Business komplett zu bearbeiten, aber das habe ich leider nicht geschafft. Die Perspektive der beiden Module ist eher betriebswirtschaftlich. Und mittlerweile weiß ich ja, dass ich mir solchen Stoff etwas mühsamer erarbeiten muss.

 

Danach bin ich sozusagen "scheinfrei". Dann liegt als letzte Aufgabe die Bachelorarbeit vor mir, vor der ich noch ganz schönen Respekt habe. Aber schön ein Schritt nach dem anderen.

Link zu diesem Kommentar

Das klingt doch sehr gut! Wünsche dir viel Erfolg bei den letzen beiden Modulen. Hast du dir schon Überlegung zwecks Bachlor-Arbeit gemacht? Oder startest du auch erst komplett damit, wenn die anderen Module abgeschlossen sind?

Link zu diesem Kommentar

Gedanken zur Bachelorarbeit habe ich mir schon gemacht. Ich habe auch schon einen Betreuer. Es gibt zwei mögliche Themen. Das eine würde ich vom Herzen her gerne bearbeiten. Dafür brauche ich aber einen freien Kopf und freie Hände. Das andere hängt mit meiner Projektarbeit zusammen. Die ist im Hinblick auf das Studium abgeschlossen und benotet. Aber ich konnte in der zur Verfügung stehenden Zeit nicht alle Anforderungen realisieren, die meine Projektpartner brauchen. Ich möchte aber, dass meine Projektarbeit auch in dieser Hinsicht rund wird. Darum möchte ich da noch Zeit reinstecken. Zeit, die mir leider fehlt, um mit meiner Bachelorarbeit definitiv zu werden. Insofern erwäge ich alternativ, meine Bachelorarbeit doch noch auf der Weiterentwicklung meiner Projektarbeit aufzubauen. Richtig zufrieden wäre ich damit aber nicht.

 

Eigentlich wollte ich die Module abschließen, bevor ich die Bachelorarbeit anmelde. Leider werde ich das Modul IT-Projektmanagement nicht diesen Monat abschließen können, weil die Präsenzklausur für mich nicht gut gelaufen ist. Ich muss nun erst mal bewerten, was falsch gelaufen ist, denn aktuell ist mir unklar, was ich anders machen müsste, damit es beim nächsten Versuch besser geht.

Link zu diesem Kommentar

Wäre es denn eine Option, mit der Bachelorarbeit später zu beginnen, um jetzt das Projekt noch rund machen zu können und dann doch dein Herzensthema für die Thesis zu nutzen?

Link zu diesem Kommentar

Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde Dich hier an.

Jetzt anmelden


×
  • Neu erstellen...