Mallet使用遇到的问题

由于做项目的需要,需要使用Mallet来对数据进行分类及对比。

我们使用的Mallet是2.0.7版本的,这个版本是支持SVMLight format的数据的,正好符合我们的需要。

但是,按照http://mallet.cs.umass.edu/import.php的教程,载入SVMLight format的数据时候,出现了这样的问题

 

 

我严格按照官网的格式打的命令,但感觉Mallet对我的命令视而不见的样子

后面用Google搜了下,发现了这个帖子http://comments.gmane.org/gmane.comp.ai.mallet.devel/1201

在官方给出的解答中提到了bin/mallet.bat这个文件,我查看了一下,发现

这里是import-smvlight而非import-svmlight,将其纠正以后,问题得以解决(话说麻省大学的牛人也会犯这样低级的错误啊= =)

 

P.S.在查看这个文件的时候我发现,这个文件并没有对classify-file和classify-dir这两个命令进行解析,挂不得我按照教程http://mallet.cs.umass.edu/classification.php做Applying a Saved Classifier to New Unlabeled Data这一步的时候老是识别不出我打的命令,于是我对mallet.bat做了如下小小的修改,使其可以支持这些命令

set CLASS=
if "%CMD%"=="import-dir" set class="cc".mallet.classify.tui.Text2Vectors
if "%CMD%"=="import-file" set class="cc".mallet.classify.tui.Csv2Vectors
if "%CMD%"=="import-svmlight" set class="cc".mallet.classify.tui.SvmLight2Vectors
if "%CMD%"=="train-classifier" set class="cc".mallet.classify.tui.Vectors2Classify
if "%CMD%"=="classify-file" set class="cc".mallet.classify.tui.Csv2Classify
if "%CMD%"=="classify-dir" set class="cc".mallet.classify.tui.Text2Classify
if "%CMD%"=="classify-svm" set class="cc".mallet.classify.tui.SvmLight2Classify
if "%CMD%"=="train-topics" set class="cc".mallet.topics.tui.Vectors2Topics
if "%CMD%"=="infer-topics" set class="cc".mallet.topics.tui.InferTopics
if "%CMD%"=="estimate-topics" set class="cc".mallet.topics.tui.EstimateTopics
if "%CMD%"=="hlda" set class="cc".mallet.topics.tui.HierarchicalLDATUI
if "%CMD%"=="prune" set class="cc".mallet.classify.tui.Vectors2Vectors
if "%CMD%"=="split" set class="cc".mallet.classify.tui.Vectors2Vectors
if "%CMD%"=="bulk-load" set class="cc".mallet.util.BulkLoader
if "%CMD%"=="run" set CLASS=%1 & shift

if not "%CLASS%" == "" goto gotClass

echo Mallet 2.0 commands:
echo import-dir load the contents of a directory into mallet instances (one per file)
echo import-file load a single file into mallet instances (one per line)
echo import-svmlight load a single SVMLight format data file into mallet instances (one per line)
echo train-classifier train a classifier from Mallet data files
echo classify-file To apply a saved classifier to new unlabeled data (for one-instance-per-line data)
echo classify-dir To apply a saved classifier to new unlabeled data (for one-instance-per-file data)
echo classify-svm To apply a saved classifier to new svm data (for one-instance-per-line data)
echo train-topics train a topic model from Mallet data files
echo infer-topics use a trained topic model to infer topics for new documents
echo estimate-topics estimate the probability of new documents given a trained model
echo hlda train a topic model using Hierarchical LDA
echo prune remove features based on frequency or information gain
echo split divide data into testing, training, and validation portions
echo Include --help with any option for more information

转载于:https://www.cnblogs.com/ztk3939339/archive/2012/10/21/2732839.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值