ml.clustering.LocalLDAModel 中没有 topicDistributions(..) 方法

No topicDistributions(..) method in ml.clustering.LocalLDAModel

我正在使用 org.apache.spark.ml.clustering.LDA 进行主题建模(使用在线优化器) 它 returns 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?

P.S。我总是可以修改 spark 代码来暴露旧的 API 但我不确定为什么它首先被隐藏了。

考虑 ldaModel.transform(dataset),它使用额外的列 topicDistribution 扩展您的数据集,您可以在其中获得您想要的内容(dataset 是您传递给 fit() 方法的数据集您的 LDAModel 个实例。