排序指标

排序指标

MAP(平均准确率指标)

A P @ K = ∑ k = 1 K P ( k ) ∗ r e l ( k ) ∑ k K r e l ( k ) AP@K=\frac{\sum_{k=1}^{K}P(k)*rel(k)}{\sum_{k}^{K}rel(k)} AP@K=kKrel(k)k=1KP(k)rel(k)

其中, r e l ( k ) rel(k) rel(k)表示第k个元素是否与查询元素相关,相关为1,不想管为0。P(k)表示前k个结果的准确率。
M A P @ K = ∑ q = 1 Q A P q @ K Q MAP@K=\frac{\sum_{q=1}^{Q}{AP_q@K}}{Q} MAP@K=Qq=1QAPq@K
其中,Q为查询次数, A P q @ K AP_q@K APq@K为第q次查询的AP@K结果。

可以看出,MAP就是对所有query的AP取平均。

栗子:

排序指标_第1张图片

NDCG(归一化折损累计收益)

参考:https://blog.csdn.net/xihuanyuye/article/details/85019816

  1. CG

    CG算法,翻译可叫"积累增益"。
    C G p = ∑ i = 1 p r e l i CG_p = \sum_{i=1}^{p}{rel_i} CGp=i=1preli
    代表推荐得到的结果中共p个元素;
    rel其实就是relation,相关性的缩写;i表示p中的第i个元素;

  2. DCG
    D C G @ k = ∑ k = 1 K 2 r e l i − 1 log ⁡ 2 ( k + 1 ) DCG@k=\sum_{k=1}^{K}{\frac{2^{rel_i}-1}{\log_{2}{(k+1)}}} DCG@k=k=1Klog2(k+1)2reli1

  3. IDCG

    idealization DCG,理想化DCG,其实理想的就是最大的。
    I D C G @ k = ∑ k = 1 ∣ R E L ∣ 2 r e l i − 1 log ⁡ 2 ( k + 1 ) IDCG@k=\sum_{k=1}^{|REL|}{\frac{2^{rel_i}-1}{\log_{2}{(k+1)}}} IDCG@k=k=1RELlog2(k+1)2reli1
    该公式与DCG形式完全一样,只是 r e l i rel_i reli的取值略有差别。

    |REL| 表示,将结果按照相关性从大到小的顺序排序,也就是按照最优的方式对结果进行排序

  4. NDCG

    NDCG,Normalized Discounted cumulative gain。Normalized,正常化,数学领域叫归一化的DCG。
    N D C G @ K = D C G @ K I D C G @ K NDCG@K=\frac{DCG@K}{IDCG@K} NDCG@K=IDCG@KDCG@K

你可能感兴趣的:(排序指标)