我正在详细探索Mahout in Action中的一些代码示例。我已经构建了一个小测试,用于计算应用于我的数据的各种算法的RMS。
当然,多个参数会影响RMS,但我不理解在运行评估时生成的“无法推荐...情况”消息。
查看StatsCallable.java,这是在求值程序遇到NaN响应时生成的;可能没有足够的数据在训练集或用户的prefs中提供推荐。
似乎RMS分数不受一大堆“无法推荐”案例的影响。这个假设是否正确?我是否应该不仅在RMS上评估我的算法,还要评估“无法推荐”案例与我的整体训练集的比率?
我很感激任何反馈。
答案 0 :(得分:4)
是的,这基本上意味着没有任何数据可用于估算。这通常是数据稀疏的症状。它应该是罕见的,并且只发生在数据非常小或与其他人断开连接的用户身上。
我个人认为这不是什么大问题,除非它是一个非常重要的百分比(20%+?)如果你不能为很多用户生成任何记录,我会担心更多。