BM25 / Okapi BM25

BM25 (аббревиатура от английского Best Match 25) — это функция ранжирования, используемая в поисковых системах и информационном поиске для сортировки документов по их релевантности заданному поисковому запросу. BM25 является одной из самых популярных и широко применяемых моделей оценки релевантности в области информационного поиска.
Суть алгоритма заключается в оценке каждого документа на основе частоты встречаемости ключевых слов в документе и его длины. Однако в отличие от других моделей, BM25 не учитывает взаимное расположение слов в документе, а рассматривает его как «мешок слов» (bag-of-words model), где каждый термин анализируется отдельно.

Как работает BM25?

Функция BM25 использует несколько ключевых факторов:
Частота встречаемости слова (Term Frequency, TF)
BM25 учитывает, сколько раз слово встречается в документе. Чем чаще слово встречается, тем более релевантным считается этот документ для запроса, но с учетом определенной степени уменьшения значимости (см. параметр k1).
Обратная частота документа (Inverse Document Frequency, IDF)
BM25 также учитывает редкость слова в других документах. Если слово встречается в большом количестве документов, его значимость для конкретного запроса снижается.
Длина документа
BM25 корректирует значение в зависимости от длины документа. Это важно, потому что длинные документы обычно содержат больше слов, что может привести к завышенной оценке частоты появления слов. Для этого используется параметр b.
BM25 использует два основных параметра для настройки функции ранжирования:
k1
Этот параметр контролирует, насколько сильно увеличивается вес слова при увеличении его частоты в документе. Он обычно принимает значения от 1.2 до 2.0. Чем выше значение k1, тем сильнее учитывается частота слова.
b
Параметр, который регулирует влияние длины документа на итоговую оценку. Он варьируется от 0 до 1, где 0 означает, что длина документа не влияет на результат, а 1 — что длина имеет максимальное значение.

Формула BM25

Формула для расчета BM25 выглядит следующим образом:

где:

  • TF(q_i) — частота термина q_i в документе.
  • IDF(q_i) — обратная частота документа для термина q_i.
  • d — длина документа.
  • avg_dl — средняя длина документа в коллекции.
  • k1, b — параметры настройки функции.

Зачем используется BM25?

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

BM25 не является единственной функцией, использующейся для ранжирования, однако она является одной из самых эффективных и популярных благодаря своей простоте и возможности легко настроить параметры для разных типов данных и поисковых запросов.

Заключение

BM25 — это ключевая модель ранжирования, которая используется для оценки релевантности документов в информационном поиске. Она анализирует частоту встречаемости ключевых слов, редкость этих слов в других документах и длину текста. Применение BM25 позволяет значительно улучшить точность поиска и повысить качество выдачи в поисковых системах, делая результаты более актуальными и соответствующими запросу пользователя.
Узнайте стоимость продвижения
Выберите удобный способ связи:
Узнайте стоимость продвижения
Выберите удобный способ связи: