gpt4 book ai didi

lda - 我如何测量用 R 中的 textmineR 包制作的 LDA 模型的困惑度分数?

转载 作者:行者123 更新时间:2023-12-04 10:52:32 30 4
gpt4 key购买 nike

我在 R 中制作了一个 LDA 主题模型,使用 textmineR 包,如下所示。

## get textmineR dtm
dtm2 <- CreateDtm(doc_vec = dat2$fulltext, # character vector of documents
ngram_window = c(1, 2),
doc_names = dat2$names,
stopword_vec = c(stopwords::stopwords("da"), custom_stopwords),
lower = T, # lowercase - this is the default value
remove_punctuation = T, # punctuation - this is the default
remove_numbers = T, # numbers - this is the default
verbose = T,
cpus = 4)



dtm2 <- dtm2[, colSums(dtm2) > 2]
dtm2 <- dtm2[, str_length(colnames(dtm2)) > 2]


############################################################
## RUN & EXAMINE TOPIC MODEL
############################################################

# Draw quasi-random sample from the pc
set.seed(34838)

model2 <- FitLdaModel(dtm = dtm2,
k = 8,
iterations = 500,
burnin = 200,
alpha = 0.1,
beta = 0.05,
optimize_alpha = TRUE,
calc_likelihood = TRUE,
calc_coherence = TRUE,
calc_r2 = TRUE,
cpus = 4)

那么问题是:
1. 我应该应用哪个函数来获取 textmineR 包中的困惑度分数?我似乎找不到一个。
2. 我如何衡量不同主题(k)数量的复杂度分数?

最佳答案

正如所问:没有办法用 textmineR 计算困惑度除非你自己明确编程。 TBH,我从未见过您无法通过可能性和连贯性获得的困惑的值(value),所以我没有实现它。

然而,text2vec包确实有一个实现。请参阅以下示例:

library(textmineR)

# model ships with textmineR as example
m <- nih_sample_topic_model

# dtm ships with textmineR as example
d <- nih_sample_dtm

# get perplexity
p <- text2vec::perplexity(X = d,
topic_word_distribution = m$phi,
doc_topic_distribution = m$theta)


关于lda - 我如何测量用 R 中的 textmineR 包制作的 LDA 模型的困惑度分数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59411177/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com