ml.clustering.LocalLDAModel 中没有 topicDistributions(..) 方法
Posted
技术标签:
【中文标题】ml.clustering.LocalLDAModel 中没有 topicDistributions(..) 方法【英文标题】:No topicDistributions(..) method in ml.clustering.LocalLDAModel 【发布时间】:2017-02-08 13:04:25 【问题描述】:我正在使用org.apache.spark.ml.clustering.LDA
进行主题建模(使用在线优化器)
它返回org.apache.spark.ml.clustering.LocalLDAModel
。但是,在那里使用这个模型
似乎没有任何方法可以让主题分布在文档上。
虽然较旧的mllib
API (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,但我不知道为什么一开始就隐藏它。
【问题讨论】:
【参考方案1】:考虑ldaModel.transform(dataset)
,它使用附加列topicDistribution
扩展了您的数据集,您可以在其中获得所需内容(dataset
是您传递给LDAModel
实例的fit()
方法的数据集。
【讨论】:
以上是关于ml.clustering.LocalLDAModel 中没有 topicDistributions(..) 方法的主要内容,如果未能解决你的问题,请参考以下文章