我修改了 NearestNUserNeighborhoud,为属于信任网络的用户添加了一些额外的价值。信任网络位于数据库 (MySQL) 中。
当我为某些用户推荐项目时,它运行良好并提供建议。
但是,当我评估 RMSE 时,它在比较用户的数据库/信任网络中的用户时非常慢。(它运行数千个选择语句)
第一个数据模型位于 csv 文件中,格式为 userid itemid rating。而数据库中的格式为 truster trustee。
您建议在合理的时间内评估 RMSE?
我修改了 NearestNUserNeighborhoud,为属于信任网络的用户添加了一些额外的价值。信任网络位于数据库 (MySQL) 中。
当我为某些用户推荐项目时,它运行良好并提供建议。
但是,当我评估 RMSE 时,它在比较用户的数据库/信任网络中的用户时非常慢。(它运行数千个选择语句)
第一个数据模型位于 csv 文件中,格式为 userid itemid rating。而数据库中的格式为 truster trustee。
您建议在合理的时间内评估 RMSE?
mahout 评估算法可以利用并行处理。您可以在具有更多内核的更大机器上运行它。但是,您的问题似乎是数据库访问。确保您有一个准备语句并调用数据库。(不要一直做准备语句)。
更好的解决方案是将您信任的用户加载到 Map 的内存中(使用Trove 库,它消耗更少的内存),然后从数据库中检查内存。