Взвешенное зонное ранжирование

Взвешенное зонное ранжирование До сих пор мы были сосредоточены на поиске документов на основе булевых запросов относительно полей и зон. Теперь перейдем ко второму приложению зон и полей.

Обозначим булев запрос буквой q, а документ - буквой d. Метод взвешенного зон ного ранжирования присваивает паре (q, d) значение релевантности из отрезка [0,1], вычисляя линейную комбинацию зонных показателей (zone score), в которую каждая зона документа вносит булево значение. Говоря конкретнее, рассмотрим множество документов, каждый из которых имеет / зон. Пусть g\, g2              gi е [0.1]. так что =1. Пусть sh где 1 < i < I, — булева величина, означающая соответствие (или его отсутствие) между запросом q и i- й зоной. Например, если все термины запроса принадлежат конкретной зоне, то ее булево значение должно быть равным единице, а если нет — нулю. Действительно, это отображение может осуществлять любая булева функция, отображающая наличие терминов запроса в зоне в множество {0, 1}. 

Взвешенное зонное ранжирование иногда называется булевым поиском с ранжированием (ranked Boolean retrieval).

Пример 6.1. Рассмотрите запрос shakespeare к коллекции, в которой каждый до- кумент имеет три зоны: author (автор), title (заголовок) и body (основной текст). Булева функция ранжирования (Boolean score function) для зоны принимает зна-чение, равное единице, если термин запроса shakespeare принадлежит этой зоне, и нулю, в противном случае. Взвешенное зонное ранжирование в такой коллекции подразумевает использование трех весов, gt, g2 и Јз* соответствующих зонам author, title и body. Допустим, что g, = 0,2, g2 - 0,3 и g3 = 0,5 (так что сумма всех трех весов равна единице); это соответствует приложению, в котором соответствие в зоне author менее важно по сравнению со всеми другими зонами, соответствие в зоне title является более важным, а соответствие в зоне body важнее всего.

Таким образом, если термин shakespeare появился в зонах title и body, но отсутствует в зоне author, то релевантность документа будет равна 0,8.

Как вычислить взвешенную зонную релевантность? Для этого можно просто поочередно вычислить релевантность для каждого документа, суммируя вклады разных зон. Однако взвешенную зонную релевантность можно вычислить прямо по инвертированным индексам. Алгоритм, приведенный на рис. 6.4, предназначен для варианта, в котором запрос q содержит два термина, q, и q2, и булеву функцию AND: 1 — если оба термина запроса присутствуют в зоне, и 0 — если нет. После алгоритма мы опишем его расширение для более сложных запросов и булевых функций.Читатели могли заметить большое сходство между алгоритмами, представленными на рис. 6.4 и 1.6. Действительно, они реализуют один и тот же проход по словопозициям, за исключением того, что вместо простого добавления документа в множество результатов для булева запроса AND в данном случае мы вычисляем релевантность каждого *окумента. В некоторых работах массив текущих значений релевантности scores[] называется множеством накопителей (accumulator). Это объясняется тем, что для более сложных по сравнению с операцией AND булевых функций релевантность документа может быть ненулевой, даже если он не содержит все термины запроса.

tel-icq