我修改了NearestNUserNeighborhoud,为属于信任网络的用户增加了一些额外的价值。信任网络位于数据库(MySQL)中。
当我向某个用户推荐项目时,它运行良好,并提供了建议。
然而,当我评估RMSE时,当它对用户的数据库/信任网络中的用户进行比较时,是非常缓慢的。(它运行了上千条select语句)
第一个数据模型位于csv文件上,它位于表单userid、itemid、数据库中的rating.Whereas上,在form受信者中。
您建议在合理的时间内评估RMSE吗?
发布于 2014-08-02 10:15:25
mahout评价算法可以利用并行处理的优点。你可以在更大的机器上运行,有更多的核心。但是,您的问题似乎是数据库的访问。确保您有一个准备语句,只需调用数据库。(不要总是准备陈述)。
更好的解决方案是将您的信任用户加载到Map中的内存中(使用宝物库,它会消耗更少的内存),并在内存中进行检查,而不是从数据库中检查。
https://stackoverflow.com/questions/25079214
复制相似问题