Классический алгоритм поиска: принцип BM25

искусственный интеллект
image.png

Адрес cmd этой статьи:Классический алгоритм поиска: принцип BM25

Что такое бм25?

bm25 — это алгоритм оценки релевантности поисковых запросов и документов.Вероятностная модель поискаПредлагаемый алгоритм, а затем опишем алгоритм bm25 простыми словами: у нас есть запрос и пакет документов Ds, и теперь мы хотим рассчитать показатель корреляции между запросом и каждым документом D. Наш подход заключается в том, чтобы сначала разрезать запрос .Оценка, получить слово $q_i$, тогда оценка слова состоит из 3-х частей:

  • Соотношение между словами $q_i$ и D
  • Соотношение между словами $q_i$ и D
  • вес каждого слова

Наконец, мы суммируем оценки для каждого слова и получаем оценку между запросом и документом.

бм25 объяснил

Прежде чем говорить о БМ25, мы должны ввести некоторые понятия.

Бинарная независимая модель BIM

BIM (бинарная модель независимости) — это алгоритм, предложенный для оценки релевантности документов и запросов.Для расчета $P(R|d,q)$ BIM вводит два основных предположения:

Предположение 1
Когда статья представлена ​​функциями, учитывается только наличие или отсутствие слов, в частности, документ d представлен в виде вектора $\vec x=(x_1,x_2,...,x_n)$, где, когда слово $ Когда t$ появляется в документе d, $x_t=1$, иначе $x_t=0$.
Предположение 2
Встречаемость слов в документе не зависит друг от друга, математическое описание $P(D)=\sum_{i=0}^n P(x_i)$
С этими двумя предположениями давайте смоделируем релевантность документов и запросов:


в
представляют вероятность того, что документ представлен как x, когда возвращается соответствующий или нерелевантный документ, соответственно.

Затем, поскольку в конечном итоге мы получаем ранжирование, мы также можем получить ранжирование документов, рассчитав соотношение документов и запросов, связанных и нерелевантных, по следующей формуле:



в
является константой, мы можем ее игнорировать, и тогда согласно предыдущему предположению 2: появление слова и появление любого другого слова не зависят друг от друга, мы можем упростить приведенную выше формулу:

Поскольку каждый xt равен либо 0, либо 1, мы получаем:



Затем введем некоторые обозначения:
: вероятность того, что слово появится в соответствующем документе
: вероятность появления слова в нерелевантных документах

Итак, мы можем получить:


Затем мы делаем следующее эквивалентное преобразование:




В этот момент в формуле
Рассчитывается на основе слов, встречающихся в документе,
Затем все слова вычисляются и их не нужно учитывать.В это время мы определяем RSV (значение статуса извлечения) для получения значения статуса:

определить ct одного слова

Следующим шагом нам нужно решить, как оценить PT и UT, посмотрите на таблицу:

где dft — общее количество документов, содержащих слово t, поэтому
,
В это время значение ct слова t равно:

Для сглаживания мы все добавляем 1/2, чтобы получить:

На практике нам трудно узнать, сколько связанных документов для t, поэтому предположим, что S=s=0, поэтому:

где N — общее количество документов, а dft — количество документов, содержащих t.

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

  • Соотношение между словами t и D
  • Соотношение между словами t и D
  • вес каждого слова

3 части, чтобы представить алгоритм bm25.

вес слова

Самый простой способ взвесить слово — использовать значение idf, т.е.

, т. е. сколько документов содержат определенное слово информации для преобразования. Если здесь используется IDF, то весь BM25 можно рассматривать как TF-IDF в определенном смысле, но часть TF представляет собой сложную функцию частотности слов, основанную на документах и ​​ключевых словах запроса, с двумя частями, а также одну из них использовать значение ct, полученное выше.

Соотношение слов и документов

В tf-idf "частота слов" используется непосредственно для этой информации. Если это встречается чаще, то обычно считается более релевантным. Однако у BM25 есть понимание: связь между частотой слов и релевантностью нелинейна. В частности, оценка релевантности каждого слова для документа не будет превышать определенного порога. Когда количество вхождений слова достигает порога, его влияние Нет больше растут линейно, и этот порог будет связан с самим документом.

Что касается конкретных операций, мы «стандартизировали» частоту слов, и конкретная формула выглядит следующим образом:



где tftd — вес термина t в документе d, Ld и Lave — длина документа d и средняя длина документов во всем наборе документов соответственно. k1 — положительный параметр настройки, который масштабирует частоту терминов в документе. Если k 1 принимает 0, это эквивалентно тому, что не учитывается частота слов, а если k 1 принимает большее значение, это соответствует использованию исходной частоты слов. b — еще один параметр настройки (0≤ b≤ 1), который определяет степень масштабирования длины документа: b = 1 означает полное масштабирование веса термина на основе длины документа, b = 0 означает, что коэффициент длины документа не учитывается при нормализации.

Релевантность слов и запросов

Если запрос очень длинный, для терминов запроса можно использовать аналогичный метод расчета веса.



где tftq — вес термина t в запросе q. Здесь k3 — еще один положительный параметр настройки, используемый для масштабирования частоты терминов tq в запросе.

Последняя формула:


Реализация в bm25 gensim

Когда gensim реализует bm25, значение idf рассчитывается по формуле BIM:



Тогда релевантность слова и запроса не учитывается.



Некоторые ключевые параметры принимают значения:
PARAM_K1 = 1.5
PARAM_B = 0.75
EPSILON = 0.25

здесьEPSILONОн используется, чтобы указать, как получить значение idf, когда возникает отрицательное значение.

Кратко о содержании этой статьи: BM25 — это самая основная технология в области поиска.BM25 состоит из трех основных понятий, включая релевантность слов в документах, релевантность слов в ключевых словах запроса и вес слов. Некоторые параметры в ВМ25 получены опытным путем.Позже я продолжу представлять варианты ВМ25 и приложения в сочетании с другой документальной информацией (нетекстовой).

Ссылаться на

Анализ алгоритма BM25

Поиск моделей BM25 и BM25F

Классический алгоритм ядра поиска: BM25 и его варианты

Введение в поиск информации