如何证明 NDCG 分数是显着的
Posted
技术标签:
【中文标题】如何证明 NDCG 分数是显着的【英文标题】:how to show that NDCG score is significant 【发布时间】:2012-03-17 02:39:38 【问题描述】:假设我的检索系统的 NDCG 分数是 0.8。我如何解释这个分数。我如何告诉读者这个分数很重要?
【问题讨论】:
跟这个有关系吗? en.wikipedia.org/wiki/Discounted_cumulative_gain nDCG 存在,因此值介于 0 和 1 之间,并且具有“自然”解释。如果是这样,得分 1 意味着搜索中的命中顺序完全按照相关性排序,而 0 则相反。 0.5 表示一半的命中都可以排序。由您来解释您的 0.8。 你从哪里读到“自然”解释部分? 我应该指出这是我的观点。如果你仔细想想,0 和 1 可以缩放为 0 和 100%。我认为人们“做”百分比。 【参考方案1】:为了理解这一点,让我们查看一个归一化折扣累积增益 (nDCG) 的示例 对于 nDCG,我们需要 DCG 和理想 DCG (IDCG) 让我们先了解一下什么是累积增益(CG),
Example: Suppose we have [Doc_1, Doc_2, Doc_3, Doc_4, Doc_5]
Doc_1 is 100% relevant
Doc_2 is 70% relevant
Doc_3 is 95% relevant
Doc_4 is 20% relevant
Doc_5 is 100% relevant
所以我们的累积增益 (CG) 是
CG = 100 + 70 + 95 + 20 + 100 ###(Index of the doc doesn't matter)
= 385
和 折现累积收益 (DCG) 为
DCG = SUM( relivencyAt(index) / log2(index + 1) ) ###where index 1 -> 5
Doc_1 is 100 / log2(2) = 100.00
Doc_2 is 70 / log2(3) = 044.17
Doc_3 is 95 / log2(4) = 047.50
Doc_4 is 20 / log2(5) = 008.61
Doc_5 is 100 / log2(6) = 038.69
DCG = 100 + 44.17 + 47.5 + 8.61 + 38.69
DCG = 238.97
理想的DCG是
IDCG = Doc_1 , Doc_5, Doc_3, Doc_2, Doc_4
Doc_1 is 100 / log2(2) = 100.00
Doc_5 is 100 / log2(3) = 063.09
Doc_3 is 95 / log2(4) = 047.50
Doc_2 is 75 / log2(5) = 032.30
Doc_4 is 20 / log2(6) = 007.74
IDCG = 100 + 63.09 + 47.5 + 32.30 + 7.74
IDCG = 250.63
nDCG(5) = DCG / IDCG
= 238.97 / 250.63
= 0.95
结论:
在给定的示例中,nDCG 为 0.95,0.95 不是预测准确度,0.95 是文档有效的排名。所以,增益从结果列表的顶部到底部累积,每个结果的增益在较低的排名中折扣。Wiki reference
【讨论】:
这是一个非常有用的评论。这些计算如何工作的非常真实的示例。 用例子很好地解释了这个复杂的概念,感谢@Wazy【参考方案2】:如果您有相对较大的样本,您可以使用引导重采样来计算置信区间,这将显示您的 NDCG 分数是否明显优于零。
此外,您可以使用成对引导重采样,以便将您的 NDCG 分数与另一个系统的 NDCG 分数进行显着比较
【讨论】:
【参考方案3】:NDCG 是一个排名指标。在信息检索领域,您应该预测一个排序的文档列表,然后他们将其与相关文档列表进行比较。假设您预测了 1000 个文档的排序列表,并且有 100 个相关文档,当 100 个相关文档在列表中具有 100 个最高排名时,NDCG 等于 1。
所以 .8 NDCG 是最佳排名的 80%。
这是一个直观的解释,真正的数学包括一些对数,但离这个不远。
【讨论】:
以上是关于如何证明 NDCG 分数是显着的的主要内容,如果未能解决你的问题,请参考以下文章