Я пытаюсь понять выходные данные метода ml_lda()
в sparklyr
для применения скрытого распределения Дирихле в задаче моделирования c.
Результат, полученный при запуске tidy()
на объект класса ml_model_lda
содержит столбец с названием «бета». Мой вопрос в том, как эти «бета» значения соотносятся с вероятностью topi c для каждого термина? Сами по себе «бета-версии» явно не являются вероятностями, поскольку некоторые из них больше 1.
Вот пример кода, который я пытаюсь понять:
# load relevant libraries and establish spark connection
library(dplyr)
library(sparklyr)
library(magrittr)
sc <- spark_connect(master = "local")
# define document corpus and convert into spark
text_in <- data.frame(
text = c(
"i am stuck with using sparklyr",
"please can you help with my coding problem",
"what does beta mean how should I interpret it"
)
)
text_spark <- copy_to(sc, text_in, overwrite = TRUE)
# apply LDA method for 2 topics
set.seed(1234)
lda_model <- text_spark %>%
ml_lda(~text, k = 2)
# view outputs using tidy() and arrange by term
lda_model %>%
tidy() %>%
arrange(term)
Первые шесть строки вывода:
# A tibble: 20 x 3
topic term beta
<int> <chr> <dbl>
1 0 beta 0.895
2 1 beta 1.09
3 0 coding 0.871
4 1 coding 0.982
5 0 help 1.14
6 1 help 1.09