Я строю свой корпус из текстового файла, а corpus - это JavaPairRDD<Long, Vector>
идентификатора документа (созданного с zipWithIndex()
) и количество раз, сколько раз каждое слово в лексике появляется в каждом документе. Я пытаюсь подсчитать документы ниже, и я думаю, что я должен получить тот же номер.LDA in spark: некоторые учебные документы отсутствуют в модели LDA. Что с ними случилось?
System.out.println("Corpus: " + corpus.count());
// Cluster the documents into three topics using LDA
DistributedLDAModel ldaModel = (DistributedLDAModel) new LDA().setK(6).run(corpus);
System.out.println("LDA Model: " + ldaModel.topTopicsPerDocument(2).count());
Когда я пересчитываю словарный запас по каждому документу, я рассматриваю только самые распространенные слова. Возможно, что два документа выглядят одинаковыми на основе этого, а также возможно, что если бы в документе были только необычные слова, это были бы все нули.
Я изучаю эти вызывающие проблемы себя, но если есть способ сохранить документы, которые попадают в любую из этих ситуаций из «обрезки» или чего-то еще, это, вероятно, решит мою проблему.
В первом println
я получаю 1642012. После создания моей модели LDA и проверки размера у меня только 1582030. Мне не хватает 59982 документов.
Что происходит с этими недостающими документами?