Получение ошибки при выполнении функции недоумения для оценки модели LDA
Я пытаюсь оценить тему моделирования (LDA). Получение ошибки при представлении функции недоумения как: Ошибка в (функция (классы, fdef, mtable): невозможно найти унаследованный метод для функции 'недоумение' для подписи '' LDA_Gibbs ',' numeric '', кто-то, пожалуйста, помогите решить эту проблему.
0 ответов
Поскольку вы не предоставили ни одного примера своего кода, трудно понять, в чем именно заключается ваша проблема. Тем не менее, я нашел этот вопрос, когда столкнулся с той же ошибкой, поэтому я предоставлю проблему, с которой столкнулся, и решение здесь, в надежде, что она может помочь кому-то еще.
в topicmodels
пакет, при установке с использованием Гиббса perplexity()
функция требует newdata
предоставляется в формате документа. Если вы дадите ему что-то еще, вы получите эту ошибку. Судя по сообщению об ошибке, вы, вероятно, что-то даете numeric
вместо дтм.
Вот рабочий пример использования данных групп новостей из lda
пакет конвертируется в формат dtm:
library(topicmodels)
# load the required data from lda package
data("newsgroup.train.documents", "newsgroup.test.documents", "newsgroup.vocab", package="lda")
# create document-term matrix using newsgroups training data
dtm <- ldaformat2dtm(documents = newsgroup.train.documents, vocab = newsgroup.vocab)
# fit LDA model using Gibbs sampler
fit <- LDA(x = dtm, k = 20, method="Gibbs")
# create document-term matrix using newsgroups test data
testdtm <- ldaformat2dtm(documents = newsgroup.test.documents, vocab = newsgroup.vocab)
# calculate perplexity
perplexity(fit, newdata = testdtm)