首页 > 其他 > 详细

利用Mallet工具自动挖掘文本Topic

时间:2015-01-08 21:32:36      阅读:1152      评论:0      收藏:0      [点我收藏+]

LDA算法(Latent Dirichlet allocation)是Blei,Andrew NG,Jordan等在2003年左右发表的算法,主要是以一系列单词为输入,以一系列Topic单词作为输出。该算法不考虑单词之间的顺序关系,衍生出了很多以LDA为基础的算法。

 

对于小的单独的文本,可以使用在线工具Voyant:http://voyant-tools.org/,得到一张包含Topic的图片。

多种开源工具实现了LDA算法,如 Stanford Topic Modeling Toolbox(http://nlp.stanford.edu/software/tmt/tmt-0.4/)和Mallet(http://mallet.cs.umass.edu/download.php)。

Mallet的下载与安装:

http://mallet.cs.umass.edu/download.php

建议从github上clone,自行编译。

 

Step1:使用Mallet生成某个文件的topic的时候,需要将该文件的格式转化成mallet格式,使用下面的命令,所得的mallet文件是下一步的输入:

  bin/mallet import-dir --input path/to/the/dir/of/your/target/txt/file --output outputfile.mallet --keep-sequence --remove-stopwords

Step2:利用上面的结果,生成topic单词,及每个单词相关的单词:

  bin/mallet train-topics  --input outputfile.mallet --num-topics 20 --output-state topic-state.gz --output-topic-keys topic_file_keys.txt --output-doc-topics topic_file_topic.txt

上面的命令会生成20个topic单词,并且找出每个topic单词相关的单词,结果保存在topic_file_keys.txt中,topic_file_topic.txt中保存了各topic单词的权重。

 

利用Mallet工具自动挖掘文本Topic

原文:http://www.cnblogs.com/yulele/p/4207759.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!