Инвертированный индекс: различия между версиями

[непроверенная версия][непроверенная версия]
Содержимое удалено Содержимое добавлено
источники, дополнение, викификация, стилевые правки
м c латинская
Строка 8:
Опишем как решается задача нахождения документов в которых встречаются все слова из [[поисковый запрос|поискового запроса]]. При обработке однословного поискового запроса, ответ уже есть в инвертированном индексе — достаточно взять список, соответствующий слову из запроса. При обработке многословного запроса берутся списки, соответствующие каждому из слов запроса и пересекающиеся.
 
Обычно в [[Поисковая_системаПоисковая система|поисковых системах]] после построения с помощью инвертированного индекса списка документов, содержащих слова из запроса, идет [[ранжирование]] документов из списка. Инвертированный индекс — это самая популярная структура данных, которая используется в [[информационный поиск|информационном поиске]]{{sfn| Zobel, Moffat, Ramamohanarao|1998}}.
 
== Пример ==
Строка 30:
== Особенности применения в реальных поисковых системах ==
В списке вхождений слова в документы помимо id документов обычно также указываются факторы ([[TF-IDF]], бинарный фактор: «попало слово в заголовок или не попало», другие факторы), которые используются при ранжировании.
Индекс может строиться не по всем [[словоформа|словоформам]]м, а по леммам (по каноническим формам слов).
[[Шумовые_словаШумовые слова|CтопСтоп-слова]] можно исключить и не строить для них индекс, считая что каждое из них встречается почти во всех документах корпуса. Для ускорения вычисления пересечений используют эвристику [[skip-pointer]]-ов. При обработке запросов, содержащих много слов, используют функцию кворума, которая пропускает на следующую стадию ранжирования часть документов, в которых встретились не все слова из запроса.
 
== См. также ==