我正在使用org.apache.spark.ml.clustering.LDA进行主题建模(通过在线优化器),它返回org.apache.spark.ml.clustering.LocalLDAModel。然而,使用这种模型似乎没有任何方法来获得文档上的主题分布。而较早的mllib应用程序接口(org.apache.spark.mllib.clustering.LocalLDAModel )确实有这样的方法,即org.apache.spark.mllib.clustering.LocalLDAModel.topicDistributions(..)
我不知道为什么会这样。特别是,考虑到新的ml.LDA使用旧的mllib.LDA,并将旧的mllib.LocalLDAModel本身包装在新的ml.LocalLDAModel中。
那么,有没有人可以澄清一下: 1.为什么会这样? 2.在新的ml.LocalLDAModel中获得主题分布的正确方法是什么
另外,我总是可以修改spark代码来暴露旧的API,但我不确定为什么它一开始就被隐藏了。
发布于 2017-04-04 21:20:41
考虑一下ldaModel.transform(dataset),它用一个额外的列topicDistribution扩展了您的数据集,您可以在其中获得所需的内容(dataset是您传递给LDAModel实例的fit()方法的数据集。
https://stackoverflow.com/questions/42113963
复制相似问题