【问题标题】:Help with running Taste Grouplens demo on hadoop帮助在 hadoop 上运行 Taste Grouplens 演示
【发布时间】:2010-10-25 05:13:36
【问题描述】:

我正在尝试构建一个基于协作过滤的推荐系统,作为学术项目的一部分。我认为 Mahout 项目有很大的潜力,我想使用它。

我在我的 ubuntu 10.1 上安装了 Mahout、hadoop 和 Java。已检查 Hadoop 和 Java 可以一起正常工作。 (运行 Hadoop 字数统计示例作业)

我正在关注这个tutorial 来运行包含 100 万个数据集的“Taste Grouplens 示例”。 我输入了以下内容

chirayu@chirayu-laptop:~/hadoop-0.20.2$ mvn -e exec:java 

-Dexec.mainClass="org.apache.mahout.cf.taste.example.grouplens.GroupLensRecommenderEvaluato

rRunner" -Dexec.args="-i /home/chirayu/mahout_source/trunk/examples/data/ratings.dat"

然后我按照教程的 hadoop 集群部分运行它 我在示例目录中进行了 mvn 安装,它在示例/目标/目录中生成了 jar 文件, 然后我继续进行下一部分,我必须在 hadoop 上运行作业 我输入了以下内容:

    chirayu@chirayu-laptop:~/hadoop-0.20.2$ sudo bin/hadoop jar /home/chirayu/mahout_source
/trunk/examples/target/mahout-examples-0.5-SNAPSHOT.jar 

org.apache.mahout.cf.taste.example.grouplens.GroupLensRecommenderEvaluatorRunner 

我收到以下错误:

Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/mahout/cf/taste/eval/RecommenderEvaluator
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(Class.java:247)
    at org.apache.hadoop.util.RunJar.main(RunJar.java:149)
Caused by: java.lang.ClassNotFoundException: org.apache.mahout.cf.taste.eval.RecommenderEvaluator
    at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
    ... 3 more

我不太确定用什么来代替 我不太确定我是否正确部署了 jar 文件,有人有什么想法吗?

【问题讨论】:

    标签: java hadoop mapreduce mahout


    【解决方案1】:

    引用我给您的电子邮件回复:GroupLens 示例与 Hadoop 无关。你根本不需要那个。看起来您正在尝试通过 Maven 运行该示例,但来自 Hadoop 安装目录。 Hadoop 不是 Mahout,因此它当然无法以这种方式找到 Mahout 类。尝试从 Mahout 目录运行。

    【讨论】:

    • 非常感谢欧文的帮助。 Internet 或 mahout 网站上没有完整的文本或教程来执行诸如运行 Grouplens 等示例之类的操作。你能把我指向一些文本/链接/任何告诉我如何去做这一切的事情吗?我认为这是一个很棒的项目,我想使用它。谢谢你的回复。
    • 我认为我们在邮件列表中的电子邮件已澄清,您正在尝试将 Grouplens 推荐器作为 Hadoop 上的“伪分布式”推荐器运行。 RecommenderJob 的类 javadoc 有完整的运行说明。在上面,您正在尝试运行某种无效的评估。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2023-04-04
    • 1970-01-01
    • 1970-01-01
    • 2011-02-05
    • 1970-01-01
    • 2015-04-02
    • 2013-04-14
    相关资源
    最近更新 更多