美文网首页
推荐质量评价指标

推荐质量评价指标

作者: Lutouch | 来源:发表于2019-02-26 17:18 被阅读0次

    推荐质量评价指标

    Precision & Recall & F1-Measure

    内容过于基础,在此不作详细描述。如有兴趣,请参考以下链接:

    1. 准确率(Accuracy), 精确率(Precision), 召回率(Recall)和F1-Measure
    2. Precision and Recall - Wikipedia

    RMSE

    均方误差(Root Mean Square Error, RMSE), 其计算公式如下:
    RMSE = \sqrt{\frac{1}{m}\sum_{i=1}^m{(y_i - \hat{y_i})^2}}

    MAP

    平均正确率均值(Mean Average Precision, MAP)
    其中 AP 的计算方法如下:
    \operatorname{AveP} = \frac{\sum_{k=1}^n (P(k) \times \operatorname{rel}(k))}{\mbox{# of relevant documents}} \!
    其中,k 为检索结果队列中的排序位置,P(k)为前 k 个结果的准确率,rel(k) 表示位置 k 的文档是否相关,相关为 1,不相关为 0

    MAP 即是将多个 query 对应的 AP 求平均:
    \operatorname{MAP} = \frac{\sum_{q=1}^Q \operatorname{AveP(q)}}{Q} \!
    Qquery 的数量。

    NDCG

    CG

    CG(cumulative gain,累计增益)可以用于评价基于打分/评分的个性推荐系统。假设我们推荐 k 个物品, 这个推荐列表的 CG_k 计算公式如下:
    CG_k=\sum_{i=1}^k \text{rel}_i
    \text{rel}_i 表示第 k 个物品的相关性或者评分。假设我们共推荐 k 个电影,\text{rel}_i 可以是用户对第i部电影的评分。

    比如豆瓣给用户推荐了五部电影:
    M_1, M_2, M_3, M_4, M_5
    该用户对这五部电影的评分分别是:
    5, 3, 2, 1, 2
    那么这个推荐列表的 CG 等于
    CG_5=5+3+2+1+2=13

    DCG

    CG 没有考虑推荐的次序,在此基础之后我们引入对物品顺序的考虑, 就有了 DCG (Discounted CG), 折扣累积增益。公式如下:
    DCG_k=\sum_{i=1}^k \frac{2^{\text{rel}_i}-1}{\log_2(i+1)}
    上例中推荐列表的 DCG 等于:
    DCG_5=\frac{2^5-1}{\log_2 2}+\frac{2^3-1}{\log_2 3}+\frac{2^2-1}{\log_2 4}+\frac{2^1-1}{\log_2 5}+\frac{2^2-1}{\log_2 6}=31+4.4+1.5+0.4+1.2=38.5

    NDCG

    DCG 没有考虑到推荐列表和每个检索中真正有效结果个数, 所以最后我们引入 NDCG (Normalized discounted CG), 顾名思义就是标准化之后的 DCG
    NDCG_k=\frac{DCG_k}{IDCG_k}
    其中IDCG是指 Ideal \, DCG,也就是完美结果下的 DCG
    继续上面的例子, 如果相关电影一共有7部:
    M_1, M_2, M_3, M_4, M_5, M_6, M_7
    该用户对这七部电影的评分分别是:
    5, 3, 2, 1, 2 , 4, 0
    把这 7 部电影按评分排序
    5, 4, 3, 2, 2, 1, 0
    这个情况下的完美 DCG
    IDCG_5=\frac{2^5-1}{\log_2 2}+\frac{2^4-1}{\log_2 3}+\frac{2^3-1}{\log_2 4}+\frac{2^2-1}{\log_2 5}+\frac{2^2-1}{\log_2 6}=31+9.5+3.5+1.3+1.2=46.5
    所以
    NDCG_5 = \frac{DCG_5}{IDCG_5}=\frac{38.5}{46.5}=0.827
    NDCG01 的数,越接近 1 说明推荐越准确。
    NDCG提供了一种计算方式,当我们有其他排名类似的需求的时候,NDCG 都是值得参考的,其 Gain 以及 Discounted 的计算的变化可以产生很多其他有价值的评价指标。

    MRR

    平均倒数排名(Mean Reciprocal Rank, MRR), 是统计学中,依据排序的正确性,对查询请求响应结果的评估。查询响应结果的倒数排名是第一个正确答案的倒数积。平均倒数排名是多个查询结果的平均值。
    {\displaystyle {\text{MRR}}={\frac {1}{|Q|}}\sum _{i=1}^{|Q|}{\frac {1}{{\text{rank}}_{i}}}.\!}
    平均倒数排名的倒数正好表示所有排名的调和平均值。

    备注

    1. 如果所有结果都不正确,结果为 0
    2. 如果存在多个正确答案,考虑使用平均准确度 (MAP)

    参考文献

    1. Evaluation_measures_(information_retrieval)
    2. 平均倒数排名
    3. 信息检索中的评价指标MAP和NDCG
    4. 怎么理解推荐系统中的NDCG?

    相关文章

      网友评论

          本文标题:推荐质量评价指标

          本文链接:https://www.haomeiwen.com/subject/qgczyqtx.html