2016-09-23 9 views
0

私はLDAをRで使用して、ITサポートチケットを関連するトピックに分類しようとしています。LDAの文書トピックの確率を改善する

私のコーパスの内容は、5,550の文書と1882語です。私はで始まり、12,000語で開始します。しかし、共通のストップワードやその他のノイズワードを削除した後、私は1800個の奇妙な単語で上陸しました。

LDAvisの出力を調べると、アルゴリズムによって返された結果/トピックは、コーパスのサンプルをチェックすることで確認できました。出力内の私の言葉は話題に限定されており、一度読むと話題に到達することができます。

文書トピック確率行列をチェックすると、行列に割り当てられる確率は大部分ケース(理想的には、私たちが得ている話題が良いほど高くなるはずです)。

私はすでに話題、増加反復の異なるノーをしようとしたが、何も今まで助けていないfollowing- を試してみました。

私は(言葉の一部を除去しない)コーパスにおける用語の数を増やした場合、私は話題の悪い表現で終わる

マイコードとLDAのパラメータは次のとおりです。

burnin <- 4000 
iter <- 2000 
thin <- 500 
seed <-list(2003,5,63,100001,765) 
nstart <- 5 
best <- TRUE 
k <- 29 ### established by log of likelihood function 

ldaOut <-LDA(dtm,k, method="Gibbs", 
     control=list(nstart=nstart, seed = seed, 
         best=best, burnin = burnin, iter = iter, thin=thin,keep=keep)) 

LDA出力の筋力がある:

[email protected] seedwords  : NULL 
[email protected] z    : int [1:111776] 12 29 3 27 11 12 14 12 12 24 ... 
[email protected] alpha   : num 1.72 
[email protected] control  :Formal class 'LDA_Gibbscontrol' [package "topicmodels"] with 14 slots 
[email protected] delta  : num 0.1 
[email protected] iter   : int 500 
[email protected] thin   : int 500 
[email protected] burnin  : int 4000 
[email protected] initialize : chr "random" 
[email protected] alpha  : num 1.72 
[email protected] seed   : int [1:5] 2003 5 63 100001 765 
[email protected] verbose  : int 0 
[email protected] prefix  : chr 
[email protected] save   : int 0 
[email protected] nstart  : int 5 
[email protected] best   : logi TRUE 
[email protected] keep   : int 0 
[email protected] estimate.beta: logi TRUE 
[email protected] k    : int 29 
[email protected] terms   : chr [1:1882] "–auto""| __truncated__ "–block""| 
[email protected] documents  : chr [1:5522] "1" "2" "3" "4" ... 
[email protected] beta   : num [1:29, 1:1882] -10.7 -10.6 -10.6 -10.5 -10.6 ... 
[email protected] gamma   : num [1:5522, 1:29] 0.0313 0.025 0.0236 0.0287 0.0287 
[email protected] wordassignments:List of 5 
..$ i : int [1:73447] 1 1 1 1 1 2 2 2 2 2 ... 
..$ j : int [1:73447] 175 325 409 689 1185 169 284 316 331 478 ... 
..$ v : num [1:73447] 12 29 3 27 4 12 12 12 3 3 ... 
..$ nrow: int 5522 
..$ ncol: int 1882 
..- attr(*, "class")= chr "simple_triplet_matrix" 
[email protected] loglikelihood : num -408027 
[email protected] iter   : int 500 
[email protected] logLiks  : num(0) 
[email protected] n    : int 111776 

缶誰GUID私はどのようにに文書の可能性を改善するまたは私たちがアルゴリズムを改善するために何かできるかどうか。

免責事項:私は初めてLDAをやって」ので、あなたが私に必要な情報を見つけるために

+0

これはプログラミングではなくデータ解析に関する質問です。そのような質問を[stats.se]などで聞いてください。 – MrFlick

答えて

0

なぜあなたは大きな確率を必要としないいくつかのソースを与えることができれば、私は本当に感謝しますか?大規模な辞書をお持ちの場合、LDAから非常に小さな確率値を得ることができます。それぞれのトピックの単語のランキングが異なる限り、あなたは良いトピックモデルを手に入れようとしています。非常に基本的なトピックモデルを学ぶことに興味があれば、このスライド(http://www.cs.virginia.edu/~hw5x/Course/CS6501-Text-Mining/_site/docs/topic%20models.pptx)をご覧ください。

関連する問題