gpt4 book ai didi

python - 评估 LightFM 推荐模型

转载 作者:太空狗 更新时间:2023-10-30 01:47:46 25 4
gpt4 key购买 nike

我一直在研究 lightfm很长一段时间,发现生成建议真的很有用。但是,我想知道两个主要问题。

  1. 在推荐等级很重要的情况下评估 LightFM 模型,我应该更多地依赖 precision@k 或其他提供的评估指标,例如 AUC 分数?与其他指标相比,在什么情况下我应该专注于改进我的 precision@k?还是它们高度相关?这意味着如果我设法提高我的 precision@k 分数,其他指标也会随之提高,对吗?

  2. 如果使用 WARP 损失函数训练的模型的 precision@5 得分为 0.089,您会如何解释? AFAIK,Precision at 5 告诉我前 5 个结果中有多少比例是积极的/相关的。这意味着如果我的预测无法进入前 5 名,我将获得 0 precision@5,或者如果我在前 5 名中只有一个预测正确,我将获得 0.2。但我无法解释 0.0xx表示 precision@n

谢谢

最佳答案

Precision@K 和 AUC 测量不同的事物,并为您提供有关模型质量的不同视角。一般来说,它们应该是相关的,但了解它们的不同之处可能有助于您选择对您的应用更重要的那个。

  • Precision@K 衡量正项在 K 个排名最高的项中所占的比例。因此,它非常关注列表顶部的排名质量:只要前 K 个项目大多是正面的,其余排名的好坏无关紧要。如果您只向用户显示列表的最顶端,这将是一个合适的指标。
  • AUC 衡量整体排名的质量。在二进制情况下,它可以解释为随机选择的正项排名高于随机选择的负项的概率。因此,接近 1.0 的 AUC 表明,总的来说,您的排序是正确的:即使前 K 个项目都不是正数,这也可能是正确的。如果您不完全控制将哪些结果呈现给用户,则此指标可能更合适;可能是前K个推荐的商品没有货了(比如缺货),需要进一步往下排。高 AUC 分数会让您相信您的排名始终是高质量的。

另请注意,虽然 AUC 指标的最大值为 1.0,但可实现的最大精度@K 取决于您的数据。例如,如果您测量 precision@5 但只有一个正项,则您可以达到的最高分数是 0.2。

在 LightFM 中,AUC 和 precision@K 例程返回指标分数数组:一个对应于测试数据中的每个用户。最有可能的是,您对这些进行平均以获得平均 AUC 或平均 precision@K 分数:如果您的某些用户在 precision@5 指标上的分数为 0,则您的平均 precision@5 可能在 0 到 0.2 之间。

希望这对您有所帮助!

关于python - 评估 LightFM 推荐模型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45451161/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com