在随机生成的用户项目评分矩阵上测试协同过滤技术是否有意义?
Is testing collaborative filtering technique on randomly generated user-item rating matrix meaningful?
我知道某些数据集可用于 运行 协同过滤算法,例如基于用户或基于项目的过滤。但是,我需要在许多数据集上测试算法,以证明我提出的方法性能更好。我生成了值从 1 到 5 的随机用户-项目评分矩阵。我将生成的矩阵视为基本事实。然后我删除矩阵中的一些评级并使用我的算法预测缺失的评级。最后,我使用 RMSE 度量来比较地面真值矩阵和我作为算法输出获得的矩阵。这种方法是否有意义?
不,不是。
- 如果[1-5]中的每一项都是均匀随机的
- 完美估计器正在为 所有 个条目预测 3
您缺少非均匀/真实世界的分布。每个推荐系统都建立在假设之上,否则它无法战胜随机猜测。 (请记住,这不仅与评分的分布有关;还与评分的项目有关 -> 许多理论研究显示了不同的假设:例如统一与其他假设;主要是具有核范数的凸 MF vs. max-norm and co.)
最好选择那些可用的数据集,如果需要,在不破坏各种相关性的情况下对这些数据集进行子采样。例如。按某些属性过滤,例如 A:某些电影的所有评级 <= 1990;所有评级 > 1990。是的,这将改变基础分布,但听起来这就是你想要的。如果不是,您总是可以统一地进行子采样,但这更适用于一些泛化评估(小数据集与大数据集)。
我知道某些数据集可用于 运行 协同过滤算法,例如基于用户或基于项目的过滤。但是,我需要在许多数据集上测试算法,以证明我提出的方法性能更好。我生成了值从 1 到 5 的随机用户-项目评分矩阵。我将生成的矩阵视为基本事实。然后我删除矩阵中的一些评级并使用我的算法预测缺失的评级。最后,我使用 RMSE 度量来比较地面真值矩阵和我作为算法输出获得的矩阵。这种方法是否有意义?
不,不是。
- 如果[1-5]中的每一项都是均匀随机的
- 完美估计器正在为 所有 个条目预测 3
您缺少非均匀/真实世界的分布。每个推荐系统都建立在假设之上,否则它无法战胜随机猜测。 (请记住,这不仅与评分的分布有关;还与评分的项目有关 -> 许多理论研究显示了不同的假设:例如统一与其他假设;主要是具有核范数的凸 MF vs. max-norm and co.)
最好选择那些可用的数据集,如果需要,在不破坏各种相关性的情况下对这些数据集进行子采样。例如。按某些属性过滤,例如 A:某些电影的所有评级 <= 1990;所有评级 > 1990。是的,这将改变基础分布,但听起来这就是你想要的。如果不是,您总是可以统一地进行子采样,但这更适用于一些泛化评估(小数据集与大数据集)。