как показать, что оценка NDCG значительна - PullRequest
6 голосов
/ 27 февраля 2012

Предположим, что показатель NDCG для моей поисковой системы равен 0,8.Как мне интерпретировать этот счет.Как мне сказать читателю, что эта оценка значительна?

Ответы [ 3 ]

8 голосов
/ 05 июня 2013

NDCG является метрикой ранжирования. В поле поиска информации вы должны предсказать отсортированный список документов и сравнить их со списком соответствующих документов. Представьте, что вы прогнозировали отсортированный список из 1000 документов и имеется 100 релевантных документов, NDCG, равный 1, достигается, когда 100 релевантных документов имеют 100 самых высоких рангов в списке.

Итак. 8 НДЦГ - это 80% от лучшего рейтинга.

Это интуитивное объяснение, что настоящая математика включает в себя несколько логарифмов, но это не так далеко от этого.

2 голосов
/ 11 февраля 2019

Чтобы понять это, давайте рассмотрим пример нормализованного дисконтированного совокупного усиления (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 - ранжирование документа в действии.Таким образом, усиление накапливается от верха списка результатов к низу, при этом усиление каждого результата обесценивается на более низких рангах.
Ссылка на вики

1 голос
/ 01 августа 2016

Если у вас сравнительно большая выборка, вы можете использовать начальную выборку при начальной загрузке для вычисления доверительных интервалов, которые покажут вам, значительно ли ваш показатель NDCG лучше нуля.

Кроме того, вы можете использовать попарную загрузку с передискретизацией, чтобы значительно сравнить вашу оценку NDCG с оценкой NDCG другой системы

...