【发布时间】:2017-04-04 15:05:49
【问题描述】:
我正在开发一个基于项目的 CF,它使用调整后的余弦相似度。我最近添加了一个正余弦相似度,我得到了完全不同的结果。现在我的问题是哪个更适合考虑我的数据?
这是用户、物品和评分的可能场景
User 1 | User 2 | User 3 | User 4 | User 5
Item 1 | 5 | 1 | 1 | 5 | 5
Item 2 | 5 | 1 | 2 | 4 | 5
Item 3 | 1 | 5 | 4 | 2 | 3
考虑到这些数据,您会得出第 1 项和第 2 项相对“相似”的结论。以下是不同相似系数的结果:
第 1 项和第 2 项之间的相似性Adjusted cosine similarity = 0.865Regular cosine similarity = 0.987
我在这个例子中对它们进行了四舍五入
您可以看到这基本上是相同的,但是当您尝试计算第 2 项和第 3 项之间的相似度(根本不相似)时,会得到完全不同的结果:
第 2 项和第 3 项之间的相似性Adjusted cosine similarity = -0.955Regular cosine similarity = 0.656
我在这个例子中对它们进行了四舍五入
其中哪一个会“更好”?我假设使用调整后的余弦相似度效果更好,因为它考虑了用户的平均评分,但为什么常规余弦相似度会导致此类“不同”项目的正数?我应该在一般情况下还是仅在某些情况下避免使用正余弦相似度?
任何帮助将不胜感激!
【问题讨论】:
标签: recommendation-engine cosine-similarity collaborative-filtering