Implementierung des interaktiven Themenmodells und seiner Ergebnisse
Es gibt ein Konzept, das als Themenmodell bezeichnet wird, um Inhalte aus einer Reihe von Dokumenten in der Technologie der Verarbeitung natürlicher Sprache zu extrahieren.
Darunter befindet sich ein interaktives Themenmodell als Methode zur absichtlichen Bearbeitung von Wörtern, die in einem Thema vorkommen.
Daher werden wir in diesem Artikel das interaktive Themenmodell implementieren und seine Wirkung überprüfen.
Im Themenmodell wird aus dem Dokumentensatz die Wahrscheinlichkeit, dass ein Thema (z. B. ein Zeitungsartikel, enthält Themen wie Politik und Sport) angezeigt wird, die Themenverteilung $ \ theta $ und wie innerhalb dieses Themas Es ist eine Methode, um die Wortverteilung $ \ phi $ zu schätzen, um festzustellen, ob es viele Wörter gibt.
Die Erklärung des Themenmodells lautet http://qiita.com/GushiSnow/items/8156d440540b0a11dfe6 http://statmodeling.hatenablog.com/entry/topic-model-4 Bitte lesen Sie die Materialien zum leichteren Verständnis.
Latent Dirichlet Allocation(LDA)
Von den verschiedenen Themenmodellen ist die Latent Dirichlet Allocation (LDA) die bekannteste.
Die LDA ist der Ansicht, dass ein Dokument (Zeitungsartikel) mehrere Themen (Politik, Nachrichten usw.) enthält und jedes Thema eine andere Wortverteilung aufweist.
Das grafische Modell ist in der folgenden Abbildung dargestellt
Übrigens ist $ \ theta $ die Themenverteilung, $ \ phi $ ist die Wortverteilung, $ z $ ist das Thema, das dem Wort im Dokument zugewiesen ist, $ v $ ist das Wort im Dokument, $ N $ ist die Anzahl der Wörter im Dokument, $ D $ ist die Anzahl der Dokumente, $ K $ ist die Anzahl der Themen und $ \ alpha $ und $ \ beta $ sind Hyperparameter.
Gibbs-Stichproben und Variantenschächte können zur Berechnung der LDA verwendet werden. Ist die kollabierende Gibbs-Stichprobe (CGS) die bekannteste? Ist.
Der Pseudocode zur Berechnung der LDA mit kollabierter Gibbs-Abtastung ist wie folgt
N_dk = 0 #Anzahl der Wörter in Dokument d, denen das Thema k zugeordnet ist
N_kv = 0 #Die Häufigkeit, mit der das Wort v in Thema k vorkommt
N_k = 0 #Anzahl der Wörter, denen das Thema k zugeordnet ist
d = 1, …, D #Dokumentnummer
k = 1, …, K #Themennummer
v = 1, …, V #Wörterbuchnummer
initialize(z_dn) #Initialisieren Sie das Thema des n-ten Wortes in Dokument d nach dem Zufallsprinzip
repeat
for d = 1, …, D do
for n = 1, …, N_d do # N_d ist die Anzahl der in Dokument d verwendeten Wörter
N_d[k=z_dn] -= 1 #Von der Zählung abziehen
N_[k=z_dn][v=w_n] -= 1
N_[k=z_dn] -= 1
for k = 1, …, K do
cal(p(z_dn = k)) #Berechnen Sie die Wahrscheinlichkeit, dass das Thema k dem n-ten Wort in Dokument d zugewiesen wird
endfor
z_dn ~ Categorical(p(z_dn)) # z_Sampling von dn-Themen
N_d[k=z_dn] += 1 #Neu zugewiesene Themen zählen
N_[k=z_dn][v=w_n] += 1
N_[k=z_dn] += 1
endfor
endfor
bis die Endbedingung erfüllt ist
Die Wahrscheinlichkeit, im Pseudocode $ p (z_ {dn} = k) $ zu werden, wird wie folgt berechnet.
p(z_{dn}=k) \propto (N_{dk}+\alpha)\frac{N_{kw_{dn}}+\beta}{N_k+\beta V}
Kann mit berechnet werden.
Interactive Topic Model(ITM)
Wenn ich ein Thema mit LDA berechne, möchte ich manchmal, dass dieses Wort und dieses Wort dasselbe Thema sind.
Sie können dieses Problem lösen, indem Sie einschränken, dass Wort A und Wort B aus demselben Thema stammen sollen.
Das ist das Interactive Topic Model (ITM) http://dl.acm.org/citation.cfm?id=2002505
Um eine sinnliche Erklärung zu geben, betrachtet ITM eingeschränkte Wörter als ein Wort und verteilt die Erscheinungswahrscheinlichkeit der eingeschränkten Wörter gleichmäßig, wodurch eingeschränkte Wörter leichter zum selben Thema erscheinen können.
Die Berechnung ist einfach und die Formel zur Berechnung von $ p (z_ {dn} = k) $ in LDA wird wie folgt umgeschrieben.
p(z_{dn} = k) \propto \begin{cases}
(N_{dk}+\alpha)\frac{N_{kw_{dn}}+\beta}{N_k+\beta V} \;\;\;\;(w_{dn} \notin \Omega)\\
(N_{dk}+\alpha)\frac{N_{k\Omega}+|\Omega|\beta}{N_k+\beta V}\frac{W_{k\Omega w_{dn}}+\eta}{W_{k \Omega} + |\Omega|\eta} \;\;\;\;(w_{dn} \in \Omega)
\end{cases}
Jedoch,
Mit anderen Worten, wenn das Wort $ w_ {dn} $ nicht in der Einschränkung $ \ Omega $ enthalten ist, verwenden Sie dieselbe Formel wie LDA. Wenn es enthalten ist, verwenden Sie die folgende Formel, um p (z_ {dn} = k) zu berechnen. ..
Im Experiment wird die Genauigkeit von ITM überprüft.
Für den Datensatz wurde ein Livedoor-Korpus verwendet. http://bookmarks2022.blogspot.jp/2015/06/livedoor.html
ITM-Code hier https://github.com/kenchin110100/machine_learning/blob/master/sampleITM.py
Feste Anzahl von Themen $ K = 10 $, $ \ alpha = 0,1 $, $ \ beta = 0,01 $, $ \ eta = 100 $
Erstens 50 Iterationen ohne Einschränkungen (dh wie bei einer normalen LDA)
Die folgende Tabelle zeigt die wichtigsten Wörter, die in den einzelnen Themen vorkommen.
Thema 1 | Thema 2 | Thema 3 | Thema 4 | Thema 5 |
---|---|---|---|---|
Funktion | App | Weiblich | die Arbeit | Japan |
Veröffentlichung | unterstützt von | Golf | Filme | aktualisieren |
aktualisieren | Bildschirm | mich selber | 153 | Beziehung |
Artikel | smartphone | männlich | 181 | Welt |
Verwenden | Ankündigung | Ehe | unter der Regie von | Beliebt |
Digi | Korrespondenz | Viele | Veröffentlichung | Filme |
Beziehung | Max Co., Ltd. | Gegner | 3 | http:// |
smartphone | Android | Arbeitsplätze | 96 | mich selber |
Software | Anzeige | Weihnachten | 13 | Thema |
Nutzer | Jahr 2012 | Mädchen | Buch | Beeindruckend |
Sie können einige Themen allein damit sehen.
Beschränken Sie als Nächstes die blauen Wörter in der Tabelle so, dass sie sich auf dasselbe Thema beziehen. Drehen Sie weitere 50 Iterationen.
Thema 1 | Thema 2 | Thema 3 | Thema 4 | Thema 5 |
---|---|---|---|---|
Veröffentlichung | App | Weiblich | 153 | Filme |
Verwenden | unterstützt von | mich selber | 181 | Japan |
Funktion | smartphone | Golf | 3 | die Arbeit |
aktualisieren | Ankündigung | männlich | 96 | Veröffentlichung |
Artikel | Korrespondenz | Ehe | 13 | Welt |
Bedienung | Gut | Viele | 552 | unter der Regie von |
Beziehung | Max Co., Ltd. | Gegner | 144 | Beziehung |
Digi | Android | Arbeitsplätze | 310 | Besonderheit |
Software | Anzeige | Weihnachten | 98 | http:// |
Information | Jahr 2012 | Gut | Held | Beeindruckend |
Blaue Wörter mit Einschränkungen werden in Thema 5 häufig verwendet.
Das interaktive Themenmodell (ITM) beschränkt Wörter, um die Themenverteilung abzuschätzen.
Der gepostete Inhalt sieht auf den ersten Blick gut aus, ist aber in Wirklichkeit das Ergebnis vieler Versuche und Irrtümer ...
ITM verfügt auch über ein Journal. Wenn Sie diesen Inhalt implementieren, ist er möglicherweise genauer.