0

私は、「ユーロ懐疑論」または「ユーロセプティック」という用語を使用する基準に基づいて収集されたニュース記事のデータセットを持っています。これらの記事の主なトピックを特定するために、ldaパッケージを使用してトピック モデルを実行しています (dfmマトリックスが組み込まれています)。quantedaしかし、興味のある単語はどのトピックにも表示されません。したがって、これらの単語をモデルにシードしたいのですが、それを行う方法が正確にはわかりません。

このパッケージtopicmodelsでは、seedwords という引数が許可されていることがわかります。これは、 「matrixまたはオブジェクト クラスとして指定できます」simple_triplet_matrixが、他に指示はありません。asimple_triplet_matrixは文字列ではなく整数のみを受け取るようです。「euroscepticism」と「eurosceptic」という単語をモデルにシードすることを知っている人はいますか?

コードの短縮版は次のとおりです。

library("quanteda")
library("lda")

##Load UK texts/create corpus
UKcorp <- corpus(textfile(file="~Michael/DM6/*"))

##Create document feature matrix 
UKdfm2 <- dfm(UKcorp, ngrams =1, verbose = TRUE, toLower = TRUE,
         removeNumbers = TRUE, removePunct = TRUE, removeSeparators = TRUE,
         removeTwitter = FALSE, stem = TRUE, ignoredFeatures =     
         stopwords(kind="english"), keptFeatures = NULL, language = "english",     
         thesaurus = NULL, dictionary = NULL, valuetype = "fixed"))

##Convert to lda model 
UKlda2 <- convert(UKdfm2, to = "lda")

##run model
UKmod2 <- lda.collapsed.gibbs.sampler(UKlda2$documents, K = 15, UKlda2$vocab,  
          num.iterations = 1500, alpha = .1,eta = .01, initial = NULL, burnin 
          = NULL, compute.log.likelihood = TRUE, trace = 0L, freeze.topics = FALSE)
4

1 に答える 1