Ich gehe jetzt durch LDA (Latent Dirichlet Allocation) Thema Modellierung Methode zur Hilfe bei der Extraktion von Themen aus einer Reihe von Dokumenten. Wie ich anhand des unten stehenden Links verstanden habe, handelt es sich hierbei um einen unüberwachten Lernansatz zur Kategorisierung/Kennzeichnung jedes der Dokumente mit den extrahierten Themen.Thema Modellierung - Zuweisen eines Dokuments mit Top 2 Themen als Kategoriebezeichnung - sklearn Latente Dirichlet-Zuweisung
Topic extraction with Non-negative Matrix Factorization and Latent Dirichlet Allocation
In dem Codebeispiel in diesem Link angegeben, gibt es eine Funktion, um die Top-Worte definiert mit jedem der identifizierten Thema verbunden zu bekommen.
sklearn.__version__
Out [41]: '0.17'
from sklearn.decomposition import LatentDirichletAllocation
def print_top_words(model, feature_names, n_top_words):
for topic_idx, topic in enumerate(model.components_):
print("TopiC#%d:" % topic_idx)
print(" ".join([feature_names[i]
for i in topic.argsort()[:-n_top_words - 1:-1]]))
print()
print("\nTopics in LDA model:")
tf_feature_names = tf_vectorizer.get_feature_names()
print_top_words(lda, tf_feature_names, n_top_words)
Meine Frage ist. Gibt es irgendeine Komponente oder Matrix des gebauten Modells LDA, woher können wir die Dokument-Thema-Assoziation bekommen?
Zum Beispiel muss ich Top 2 Themen mit jedem Dokument als Dokument Label/Kategorie für dieses Dokument. Gibt es eine Komponente, um die Verteilung von Themen in einem Dokument zu finden, ähnlich der model.components_
für das Finden von Wörterverteilung innerhalb eines Themas.
Dank verwandeln wollen! Arbeitete wie ein Charme – prashanth
Ich bin ein bisschen verwirrt auf diese Lösung. Ich hatte gehofft, eine Ausgabe zu bekommen, die die mit jedem Dokument verbundenen Themen zeigt. So etwas wie dieses Dokument # 1: Thema: [1, 2, 3] – moku
Was Sie bekommen, ist die Verteilung der Themen für jedes Dokument. Jede Zeile entspricht also einem Dokument und jede Spalte einem Thema. Um das gewünschte Ergebnis zu erhalten, können Sie jede Zeile betrachten und die Spaltenindizes der drei größten Werte abrufen. Das würde Ihnen die drei wichtigsten Themen pro Dokument geben. – clemgaut