Sie suchen nach Latent Dirichlet Allocation gebündelt mit scikit-learn
, aber darauf hingewiesen, dass es kein "Hauptthema" eines Textes - ein Satz kann über mehrere Themen sein.
Here ist eine gute Einführung in LDA. LDA modelliert Dokumente als Mischungen einer Themenverteilung, aus denen Wörter mit einer bestimmten Wahrscheinlichkeit generiert werden. Es gibt keine Notwendigkeit, im Voraus die Art von Themen, die auftreten können, zu spezifizieren - LDA wird es automatisch für Sie tun.
aus der Blog-Post Zitiert I verknüpft:
Genauer gesagt, LDA Dokumente als Mischungen von Themen darstellt, die Worte mit bestimmten Wahrscheinlichkeiten ausspucken. Er geht davon aus, dass die Dokumente in der folgenden Art und Weise hergestellt werden: wenn jedes Dokument zu schreiben, Sie
auf die Anzahl der Wörter Entscheiden N das Dokument wird (sagen wir, zu einer Poisson-Verteilung nach).
Wählen Sie ein Thema Mischung für das Dokument (gemäß einer Dirichlet-Verteilung über einen festgelegten Satz von K Themen) .Für Beispiel davon aus, dass wir die beiden Essen und netten Tiere Themen oben haben, können Sie das Dokument wählen bestehen von 1/3 Essen und 2/3 süße Tiere.
generieren jedes Wort w_i in dem Dokument:
-
- Erste ein Thema Kommissionierung (nach der Multinomialverteilung, die Sie oben abgetastet, zum Beispiel, könnte man das Essen Thema holen mit 1/3 Wahrscheinlichkeit und die niedlichen Tiere Thema mit 2/3 Wahrscheinlichkeit).
-
- Mit dem Thema erzeugen, das Wort selbst (nach dem multinomial Distribution Thema). Zum Beispiel, wenn wir das Thema Lebensmittel ausgewählt haben, könnten wir das Wort "Brokkoli" mit 30% Wahrscheinlichkeit, "Bananen" mit 15% Wahrscheinlichkeit, und so weiter erzeugen.
dieses generativen Modell für eine Sammlung von Dokumenten Unter der Annahme, LDA versucht dann von den Dokumente zurückzuverfolgen eine Reihe von Themen zu finden, die die Sammlung generiert haben wahrscheinlich sind.