我是Hadoop和Mahout的新手。首先,我运行了Mahout提供的贝叶斯分类器的简单示例。我想得到贝叶斯训练输入数据集,所以我运行了以下命令:
mahout org.apache.mahout.classifier.bayes.PrepareTwentyNewsgroups -p /Examples/20news-bydate-train -o /Examples/bayes-train-input -a org.apache.mahout.vectorizer.DefaultAnalyzer -c UTF-8
但结果是
我该如何解决这个问题?
答案 0 :(得分:1)
从Mahout版本0.6开始,不推荐使用诸如PrepareTwentyNewsgroups,trainclassifier,testclassifier等CLI API,您可以从examples / bin目录运行一些shell脚本示例,例如:运行examples / bin / classify-20newsgroups.sh。
此问题的一种可能解决方案是回归到版本0.6。
答案 1 :(得分:0)
写道:
MAHOUT_LOCAL is not set
因此无法找到PrepareTwentyNewsGroups
类。根据您的系统,设置环境变量MAHOUT_LOCAL,例如:
MAHOUT_LOCAL=/usr/local/lib/mahout
export MAHOUT_LOCAL
(将这些行放入.bash_profile文件中,或者只是放入shell中尝试尝试它是否正常工作)
答案 2 :(得分:0)
实际上,根据http://svn.apache.org/repos/asf/mahout/trunk/bin/mahout:
MAHOUT_LOCAL:设置为空字符串以外的任何内容,以强制mahout在本地运行,即使设置了HADOOP_CONF_DIR和HADOOP_HOME
如果要在本地运行mahout,则只需设置MAHOUT_LOCAL。 如果要在hadoop集群上运行它,只需设置HADOOP_HOME和HADOOP_CONF_DIR即可。