Verwenden von Clustering in der Textverarbeitung

11

Hallo, dies ist meine erste Frage im Data Science-Stack. Ich möchte einen Algorithmus für die Textklassifizierung erstellen. Angenommen, ich habe eine große Menge an Text und Artikeln. Sagen wir etwa 5000 einfache Texte. Ich benutze zuerst eine einfache Funktion, um die Häufigkeit aller vier und mehr Zeichenwörter zu bestimmen. Ich benutze dies dann als Merkmal jeder Trainingsprobe. Jetzt möchte ich, dass mein Algorithmus die Trainingssätze nach ihren Merkmalen gruppieren kann. Hier ist die Häufigkeit jedes Wortes im Artikel angegeben. (Beachten Sie, dass in diesem Beispiel jeder Artikel ein eigenes Merkmal hat, da jeder Artikel ein anderes Merkmal hat. Beispielsweise hat ein Artikel 10 "Wasser und 23" Rein "und ein anderer 8" Politik "und 14" Hebel ".) Können Sie für dieses Beispiel den bestmöglichen Clustering-Algorithmus vorschlagen?

Rashid
quelle

Antworten:

5

Ich weiß nicht, ob Sie jemals SenseCluster von Ted Pedersen gelesen haben: http://senseclusters.sourceforge.net/ . Sehr gutes Papier für Sense Clustering.

Wenn Sie Wörter analysieren, denken Sie auch, dass "Computer", "Computer", "Computer", ... ein Konzept darstellen, also nur eine Funktion. Sehr wichtig für eine korrekte Analyse.

Um über den Clustering-Algorithmus zu sprechen, können Sie ein hierarchisches Clustering verwenden . Bei jedem Schritt des Algo führen Sie die beiden ähnlichsten Texte nach ihren Merkmalen zusammen (z. B. anhand eines Maßes für die Unähnlichkeit, z. B. der euklidischen Entfernung). Mit diesem Maß an Unähnlichkeit können Sie die beste Anzahl von Clustern und damit die beste Clusterbildung für Ihre Texte und Artikel finden.

Viel Glück :)

JC R.
quelle
6

Wenn Sie Ihren bestehenden Weg fortsetzen möchten, schlage ich vor, die Häufigkeit jedes Begriffs anhand seiner Beliebtheit im gesamten Korpus zu normalisieren, sodass seltene und daher prädiktive Wörter gefördert werden. Verwenden Sie dann zufällige Projektionen, um die Dimensionalität dieser sehr langen Vektoren auf die Größe zu reduzieren, damit Ihr Clustering-Algorithmus besser funktioniert (Sie möchten nicht in hochdimensionalen Räumen gruppieren).

Es gibt aber auch andere Möglichkeiten der Themenmodellierung. Lesen Sie dieses Tutorial, um mehr zu erfahren.

Emre
quelle