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

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单词的权重。

 

转载于:https://www.cnblogs.com/yulele/p/4207759.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值