我正在开展一个需要实施文章/新闻推荐引擎的项目。 我正在考虑组合不同的方法(基于项目,基于用户,模型CF),并对使用的工具有疑问。
根据我的研究,Lucene绝对是文本处理的工具,但对于推荐部分,它并不是那么清晰。 如果我想基于文本相似性在文章上实现项目CF: - 我已经看过使用Mahout和solr(http://fr.slideshare.net/lucenerevolution/building-a-realtime-solrpowered-recommendation-engine)的案例研究,因为它非常接近搜索问题我认为solr可能更好,我是对的吗? - 两个工具之间的时间处理有何不同(我认为Mahout更多是批处理和实时)? - 我可以直接从Lucene获得文本距离(对我来说,与Lucene相比,solr的附加价值是不是很清楚)? - 对于更高级的方法(基于矩阵分解的模型),我会使用Mahout,但在solr中是否有任何类似SVD的函数用于概念/标记发现?
感谢您的帮助。
答案 0 :(得分:0)
这取决于您的要求,如果您只需要离线推荐功能,mahout就是好的。对于在线,我也在测试它。事实上,我已经用lucene和mahout进行了测试,它们可以很好地协同工作。对于solr,我不太确定,我所知道它以lucene为核心。因此所有繁重的工作仍由lucene完成。在我的例子中,我在我的java程序中结合了mahout和lucene,基本上lucene进行预处理和原始相似度计算,然后将结果发送到mahout进行进一步分析。