Zum Inhalt springen

Text Mining Prozess


Empfohlene Beiträge

Hallo zusammen,

Kurz zu meiner Person: Ich bin Hans, 25 Jahre aus Berlin und versuche mich gerade persönlich und beruflich eher in der Richtung Business Intelligence zu positionieren.

Speziell gehts mir gerade ums Text Mining. Ich lese viele Bücher und habe schon viel gelernt. Jetzt solls für mich aber mal an die Praxis gehen: ich versuche mit verschiedenen Tools (OpenSource und das, was mir meine Firma so stellt) mal ein paar Dokumente zu Klassifizieren, Zusammenzufassen, Named Entities zu finden usw usf.

An sich ist das ja alles mit diesen Drag n' Drop tools garnicht schwer. Ich suche nun allerdings umfassendere Prozessbeschreibung, die in der Vergangenheit schon gut funktioniert haben und an denen man sich ggfs. orientieren kann.

Ein konkretes Ziel habe ich nicht. Mir gehts perspektivisch um Fragestellungen wie:

"Soll ich in der Situation X lieber auf statische oder linguistische Mittel zurück greifen?" oder "Wann eignet sich was?".

Irgendwie kommt mir das ganze Thema durch die Tools doch recht trivial vor, da man eigentlich nur irgendwelche sog. Knoten (z.B. baysian classifier) in ein Worksheet ziehen und es mit einem Dokument (oder mehreren) verknüpfen muss.

Hoffe ihr könnt mir mit Tipps, Links oder Literaturempfehlungen weiterhelfen;)

Auf eine gute Zusammenarbeit!

Hans

Link zu diesem Kommentar
Auf anderen Seiten teilen

Die Grundlegende Basis zu diesem Themengebiet wäre Pattern Recognition and Machine Learning Information Science and Statistics: Amazon.de: Christopher M. Bishop: Englische Bücher

Setzt aber definitiv gute Kenntnisse in Statistik, Algebra und Analysis voraus. Ich weise mal darauf hin, dass ein Bayes Classifier nicht unbedingt für Textanalysen eignet, da die Ergebnisse nicht unbedingt gut sind. Ich empfehle eher in die Richtung Entropieanalyse / Metriken zu gehen und dann mit einem entsprechenden Clusteringverfahren SOM, Neural Gas, k-Means, Vektorquantisierung die Daten weiter zu verarbeiten. Je nach Datenumfang eignet sich auch Collaborative Filtering mit einem entsprechend angepassten Clustering.

So wie Du es Dir vorstellst, dass es für Problem X eine Lösung Y gibt, wird nicht funktionieren. Gerade in diesem Bereich müssen sehr viele Faktoren berücksichtigt werden.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo flashpixx,

vielen Dank für deinen Beitrag.

Ich werde mir das Buch mal genauer angucken.

Klar hab ich mir das mit dem Classifier jetzt etwas einfach gemacht. Aber ich wollte auch gar nicht so sehr auf die Techniken oder Resultate des Minings hinaus.

Und ja, natürlich müssen immer wieder irgendwelche Faktoren beachtet werden, da es nicht Prozess X für "diese" Situation gibt. Aber es wird doch schon so etwas wie Orientierungsansätze geben.

Mir ging es grundsätzlich eher um konzeptionelle Ansätze beim Aufbau eines DocWH, bzw. beim Prozess der "Befüllung".

Banales Beispiel aus irgendeinem Lehrbuch: Zuerst sollten Eigennamen extrahiert werden, bevor Stoppwörter entfernt werden.

Das ist zwar jetzt nur ein gaaanz kleiner Punkt in einem Unterprozess, aber es geht schon in die Richtung.

Ich hoffe, dass ich mich etwas verständlicher ausgedrückt habe :)

danke

Link zu diesem Kommentar
Auf anderen Seiten teilen

Und ja, natürlich müssen immer wieder irgendwelche Faktoren beachtet werden, da es nicht Prozess X für "diese" Situation gibt. Aber es wird doch schon so etwas wie Orientierungsansätze geben.

Eher weniger, weil a) die Daten eine Rolle spielen und B) man dann danach den Algorithmus auswählen muss bzw. anhand des Ziels, was man haben will.

Banales Beispiel aus irgendeinem Lehrbuch: Zuerst sollten Eigennamen extrahiert werden, bevor Stoppwörter entfernt werden.

Stoppwordreduction ist mit Vorsicht zu genießen z.B. wenn Du mehrere Lehrbücher hast, die in unterschiedlichen Sprachen geschrieben sind, dann ist die Reduktion nicht möglich. Gerade bei Lehrbüchern ergibt sich das Problem, dass es meist Fachliteratur ist und somit sind Fachtermini wichtig, bei einer klassischen Stopdwordreduction werden diese aber entfernt, da sie im Verhältnis zu anderen Wörtern nicht so häufig vertreten sind. Weiterhin gibt es eigentlich nur gute Stopwordlisten für Englisch, bei anderen Sprachen wird es schon schwieriger.

Dieser Ansatz würde bei einer Verarbeitung von Fachliteratur schon mal keine guten Ergebnisse liefern.

Weiterhin entsteht dabei häufig das Problem, dass die extrahierten Informationen meist hochdimensional sind (> 1000 Dimensionen) und dabei sind klassische (numerische) Ansätze nicht mehr effizient sind bzw. sie funktionieren erst gar nicht mehr, da der Datenraum ausgedünnt ist.

Mathematischen Grundlagen (lineare Algebra, Statistik / Stochastik & Numerik) gerade für hochdimensionale Probleme wäre neben der Informatik zur Umsetzung somit die Basis, um reale Probleme sinnvoll lösen zu können. Das Buch setzt die Mathematik voraus und gibt einen theoretischen Ansatz der Problematik, keinen praktischen

Link zu diesem Kommentar
Auf anderen Seiten teilen

  • 4 Wochen später...

Vielen Dank für die Hilfe und sorry, dass ich erst so spät antworte.

Ich verstehe schon, dass viele Faktoren im Projekt eine Rolle spielen, welche die Strategie beeinflussen.

Sagen wir mal, ich konkretisiere verschiedene Fragestellungen, wäre so etwas dann möglich? Also ich meine, ich könnte mir ja einige Projekte aus unserem Umfeld angucken, und mich daran orientieren. Da wurde die "Technik" ja sicherlich nicht wahllos ausgesucht. Allerdings würde ich diese Info im Moment lieber von "externen" Quellen bevorzugen, um unsere internen Cases vielleicht mal zu validieren.

Sprich, ich sage einfach mal: Firma x bekommt jeden Tag 150 Mails, die an verschiedene "Sachbearbeiter" (je nach Problemstellung) geroutet werden sollen. Hier könnte man doch schon sagen, "naja, ein VSM wäre hier sicherlich etwas overkill, ein simpler Klassifikator tuts da ggfs auch...

wenn die Accuracy nicht ganz so wichtig ist, könnte man da leicht ein statistisches Verfahren nehmen, wenn die Mails ein Precision and Recall Breakeven von 99% haben sollen, sollte man evtl. auf eine linguistische Lösung zurückgreifen..." (und das ganz natürlich mit Beweisen belegt).

Ich hoffe jetzt wirds etwas klarer :)

Hans

Link zu diesem Kommentar
Auf anderen Seiten teilen

Sprich, ich sage einfach mal: Firma x bekommt jeden Tag 150 Mails, die an verschiedene "Sachbearbeiter" (je nach Problemstellung) geroutet werden sollen. Hier könnte man doch schon sagen, "naja, ein VSM wäre hier sicherlich etwas overkill, ein simpler Klassifikator tuts da ggfs auch...

wenn die Accuracy nicht ganz so wichtig ist, könnte man da leicht ein statistisches Verfahren nehmen, wenn die Mails ein Precision and Recall Breakeven von 99% haben sollen, sollte man evtl. auf eine linguistische Lösung zurückgreifen..." (und das ganz natürlich mit Beweisen belegt).

Bei Mails könnte man ein klassisches Bayes Netz nehmen, wird ja bei der Spamerkennung so gemacht. Alternativ geht eine Support-Vector-Machine, wäre aber schon etwas aufwändiger.

Ich denke eine zentrale Frage, mit der ich mich in diesem Bereich auch beschäftige, ist einmal das Datenvolumen und die Zeit in der man es verarbeiten will, also vielleicht so etwas "wie schnell muss das Verfahren reagieren".

Als weiterer Ansatz wäre ein Clusteringverfahren, d.h. man weiß man hat n Themengebiete (also z.B. n Sachbearbeiter), jedes Gebiet soll von einem Mitarbeiter bearbeitet werden. Dann würde ich versuchen die eingehenden Mails zu Clustern, d.h. ich trainiere ein Netz z.B. Neural Gas, mit Daten und erhalte dann Prototypen, n Stück, für jedes Gebiet einen. Wenn nun eine neue Mail eingeht, dann bestimmt man nur den Abstand zwischen der Mail und den Prototypen. Wenn der Abstand eben nahe 0 ist, würde man sagen, dass die Mail an den entsprechenden Mitarbeiter leitet. Zusätzlich würde ich dann den Mitarbeiter bewerten lassen, ob die Entscheidung richtig war. Damit kann man das Netz mit der Zeit besser trainieren, weil man hier ein überwachtes Lernverfahren einsetzen kann.

Um nun Texte in Distanzen umzuwandeln, ohne dass man eine linguistische Methode anwenden muss, wäre z.B. Normalized Compression Distance | flashpixx.de eine Möglichkeit, aber leider ist das Problem, dass das paarweise Distanzen sind, d.h. für n Datensätze müssen n^2 Elemente berechnet werden. Weiterhin sind das Distanzen und keine reellen Vektoren (d.h. man hat einen Pseudoeuklischen Raum), damit kann man nicht einfach jedes Verfahren verwenden, weil man eben nicht einfach rechnen kann. In der Literatur finden sich diese distanzbasierten Algorithmen unter dem Begriff "relational".

Es kommt halt darauf an, was man real machen will. Ich denke, nur um ein paar Mails passend weiter zu leiten, reicht ein klassischer Bayes Ansatz. Kommen aber ggf noch Sachen wie Dateianhänge dazu, z.B. wenn Benutzer keinen Text in die EMail schreiben, sondern lieber den Text in ein Worddokument und das Workdokument dann an die EMail hängen, dann wird es schon kompliziert, weil man entweder eine Vorverabreitung machen muss, d.h. man muss für jedes Format einen entsprechenden Konverter bauen oder eben das Problem mit einer passenden Distanzmetrik einfach umgehen. Der Vorteil von solchen Metriken ist aber auch, dass man das relativ einfach Visualisieren kann, d.h. wenn man also optisch einen Eindruck gewinnen will, welcher Sachbearbeiter welche Themen bearbeitet bzw wie die "Streuung" des Themas ist (siehe z.B. Machine Learning Framework | flashpixx.de )

Falls genauere Fragen sind gerne auch per PM oder Messanger

Link zu diesem Kommentar
Auf anderen Seiten teilen

Im Grunde suche ich sowas für eine Vielzahl an Einsatzgebieten :)

Ob ich bei so etwas eine generische Lösung erzeugen würde, würde ich wohl eher nicht machen, sondern speziell auf jedes Problem die Lösung anpassen.

Ich denke es gibt in dem Bereich "Maschinellen Lernen" eine Vielzahl an Ansätzen mit denen man arbeiten kann, ich arbeite in diesem Bereich und kenne sicherlich noch nicht alle Verfahren und Techniken.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Deine Meinung

Schreibe jetzt und erstelle anschließend ein Benutzerkonto. Wenn Du ein Benutzerkonto hast, melde Dich bitte an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

 Teilen

Fachinformatiker.de, 2021 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...

Wichtige Information

Fachinformatiker.de verwendet Cookies. Mehr dazu in unserer Datenschutzerklärung