码迷,mamicode.com
首页 > 其他好文 > 详细

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

时间:2015-01-08 21:32:46      阅读:297      评论: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
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!