回答

8

Apache Mahout做你提到这里的一切。它基于Java,支持基于用户的协作过滤(其中包括GenericUserBasedRecommender)。它是一个k近邻算法,可以插入相似实现,如PearsonCorrelationSimilarity等。

看那org.apache.mahout.cf.taste包和子包。在.impl.eval分包中找到GenericRecommenderIRStatsEvaluator。这将运行一个测试报告精确度,召回率和F1。

最后,已经有基于在mahout-examplesGroupLens一些工作实例。

+0

嗨,谢谢你的回答。然而Apache Mahout只是不可能使用,并且需要太多的包。另外,缺乏简单的文档(例如,如何在eclipse中使用Taste的类来制作新项目)不会有帮助... – Thomas 2011-05-19 11:27:03

+0

不确定你的意思?这段代码只有一些依赖...... SLF4J和Google Guava我相信。这是一个基于Maven的项目,所以如果使用Maven,您可以在Maven项目中使用几行代码。您还可以从项目中获得一个简单的.jar文件,其中包含所有内容,您可以像放入任何其他库一样将其放入任何Eclipse项目中。这是关于它 - 没有太多的文件 - 但如果你有具体问题,我相信它可以在[email protected]上解决。 – 2011-05-20 07:24:25

1

你试过RapidMiner? 如果您有兴趣尝试诸如评估精确度和回忆而不关注编码。这是你的工具。网上甚至有纸张和youtube视频教程都有很好的信息来帮助你。