LDAModel¶
-
类
pyspark.mllib.clustering。
LDAModel
( java_model:py4j.java_gateway.JavaObject ) ¶ -
聚类模型来源于LDA方法。
潜在狄利克雷分配(LDA),主题为文本文档设计模型。术语
“词”=“术语”:一个元素的词汇
“令牌”:一个术语出现在文档的实例
“主题”:多项分布在单词代表一些概念
笔记
看到原来的LDA纸(版)》杂志上[1]
- 1
-
布莱,d . et al。”潜在狄利克雷分配。“j·马赫。学习。研究》3 (2003):993 - 1022。https://www.jmlr.org/papers/v3/blei03a
例子
> > >从pyspark.mllib.linalg进口向量> > >从numpy.testing进口assert_almost_equal,assert_equal> > >数据=(…(1,向量。密集的([0.0,1.0])),…(2,SparseVector(2,{0:1.0})),…]> > >抽样=sc。并行化(数据)> > >模型=乔治。。火车(抽样,k=2,种子=1)> > >模型。vocabSize()2> > >模型。describeTopics()(((1,0)、(0.5……,0。49...]), ([0, 1], [0.5..., 0.49...])]> > >模型。describeTopics(1)0.5 [([1],[…]),([0],[…]0.5)]
> > >主题=模型。topicsMatrix()> > >topics_expect=数组([[0.5,0.5),(0.5,0.5]])> > >assert_almost_equal(主题,topics_expect,1)
> > >进口操作系统,tempfile> > >从shutil进口rmtree> > >路径=tempfile。mkdtemp()> > >模型。保存(sc,路径)> > >sameModel=LDAModel。负载(sc,路径)> > >assert_equal(sameModel。topicsMatrix(),模型。topicsMatrix())> > >sameModel。vocabSize()= =模型。vocabSize()真正的> > >试一试:…rmtree(路径)…除了OSError:…通过
方法
调用
(名字,*一个)调用的方法java_model
describeTopics
([maxTermsPerTopic])返回加权术语描述的主题。
负载
(sc路径)从磁盘加载LDAModel。
保存
(sc路径)这个模型保存到给定的路径。
推断出主题,每个主题由分布的条件。
词汇量大小(词汇)的条款或条件
方法的文档
-
调用
( 的名字:str,*一个:任何 )→任何¶ -
调用的方法java_model
-
describeTopics
( maxTermsPerTopic:可选(int]=没有一个 )→列表(元组(列表(int] ,列表(浮动] ] ] ¶ -
返回加权术语描述的主题。
警告
如果大vocabSize和k,这可以返回一个大对象!
- 参数
-
- maxTermsPerTopic int,可选
-
最大数量的收集为每个主题。(默认值:词汇量大小)
- 返回
-
- 列表
-
数组的话题。每个主题都被表示为一对匹配的数组:(一项指标,一项权重的主题)。每个主题的条款在重量递减的顺序排序。
-
classmethod
负载
( sc:pyspark.context.SparkContext,路径:str )→pyspark.mllib.clustering.LDAModel ¶ -
从磁盘加载LDAModel。
- 参数
-
-
sc
pyspark.SparkContext
- 路径 str
-
存储路径的模型。
-
sc
-
保存
( sc:pyspark.context.SparkContext,路径:str )→没有¶ -
这个模型保存到给定的路径。
-
topicsMatrix
( )→numpy.ndarray¶ -
推断出主题,每个主题由分布的条件。
-
vocabSize
( )→int¶ -
词汇量大小(词汇)的条款或条件