Вам бонус- начислено 1 монета за дневную активность. Сейчас у вас 1 монета

BM25 —семейство функций ранжирования документов, Тошнота документа по Минычу

Лекция



Сразу хочу сказать, что здесь никакой воды про bm15 , и только нужная информация. Для того чтобы лучше понимать что такое bm15 , bm11 , bm25 , bm25f, алгоритм ранжирования, функция ранжирования, тошнота документа по минычу , настоятельно рекомендую прочитать все из категории Обработка естественного языка.

Okapi bm25 функция ранжирования , используемая поисковыми системами для упорядочивания документов по их релевантности данному поисковому запросу. Она основывается на вероятностной модели, разработанной в 1970-х и 1980-х годах Стивеном Робертсоном, Карен Спарк Джонс и другими.

Сама функция носит название BM25 (BM от англ. best match), но ее часто называют «Okapi BM25» по названию поисковой системы Okapi, созданной в Лондонском городском университете в 1980-х и 1990-х годах, в которой эта функция была впервые применена.

BM25 и его различные более поздние модификации (например, bm25f ) представляют собой современные TF-IDF-подобные функции ранжирования, широко используемые на практике в поисковых системах. В веб-поиске эти функции ранжирования часто входят как компоненты более сложной, часто машинно-обученной, функции ранжирования.

BM25 – функция расчета текстовой релевантности документов, разработанная британцами Стивеном Робертсоном и Карен Спарк Джоунс, опубликованная в 1994 году. Основана на эмпирических данных при попытке улучшить результаты работы критерия TF-IDF. Наилучшее соответствие между ожидаемым результатом и рассчитанным показал 25 алгоритм в списке, за что и получил свое название «Best matching», или BM25. Впервые был реализован в поисковой системе Okapi (Окапи), а в дальнейшем – положен в основу текстовых анализаторов современных поисковых машин.

Функция (алгоритм) ранжирования

BM25 — поисковая функция на неупорядоченном множестве термов («мешке слов») и множестве документов, которые она оценивает на основе встречаемости слов запроса в каждом документе, без учета взаимоотношений между ними (например, близости). Это не одна функция, а семейство функций с различными компонентами и параметрами. Одна из распространенных форм этой функции описана ниже.

Пусть дан запрос BM25 —семейство функций ранжирования документов, Тошнота документа по Минычу, содержащий слова BM25 —семейство функций ранжирования документов, Тошнота документа по Минычу, тогда функция BM25 дает следующую оценку релевантности документа BM25 —семейство функций ранжирования документов, Тошнота документа по Минычу запросу BM25 —семейство функций ранжирования документов, Тошнота документа по Минычу:

BM25 —семейство функций ранжирования документов, Тошнота документа по Минычу

где BM25 —семейство функций ранжирования документов, Тошнота документа по Минычу есть частота слова (англ. term frequency, TF) BM25 —семейство функций ранжирования документов, Тошнота документа по Минычу в документе BM25 —семейство функций ранжирования документов, Тошнота документа по Минычу, BM25 —семейство функций ранжирования документов, Тошнота документа по Минычу есть длина документа (количество слов в нем), а BM25 —семейство функций ранжирования документов, Тошнота документа по Минычу — средняя длина документа в коллекции. BM25 —семейство функций ранжирования документов, Тошнота документа по Минычу и BM25 —семейство функций ранжирования документов, Тошнота документа по Минычу — свободные коэффициенты, обычно их выбирают как BM25 —семейство функций ранжирования документов, Тошнота документа по Минычу и BM25 —семейство функций ранжирования документов, Тошнота документа по Минычу.

BM25 —семейство функций ранжирования документов, Тошнота документа по Минычу есть обратная документная частота (англ. inverse document frequency, IDF) слова BM25 —семейство функций ранжирования документов, Тошнота документа по Минычу. Есть несколько толкований IDF и небольших вариации его формулы. Классически, она определяется как:

BM25 —семейство функций ранжирования документов, Тошнота документа по Минычу

где BM25 —семейство функций ранжирования документов, Тошнота документа по Минычу есть общее количество документов в коллекции, а BM25 —семейство функций ранжирования документов, Тошнота документа по Минычу — количество документов, содержащих BM25 —семейство функций ранжирования документов, Тошнота документа по Минычу. Но чаще применяются «сглаженные» варианты этой формулы, например:

BM25 —семейство функций ранжирования документов, Тошнота документа по Минычу

Заметим, что вышеуказанная формула IDF имеет следующий недостаток. Для слов, входящих в более чем половину документов из коллекции, значение IDF отрицательно. Таким образом, при наличии любых двух почти идентичных документов, в одном из которых есть слово, а в другом — нет, второй может получить бо́льшую оценку.

Иными словами, часто встречающиеся слова испортят окончательную оценку документа. Это нежелательно, поэтому во многих приложениях вышеприведенная формула может быть скорректирована следующими способами:

  • Игнорировать вообще все отрицательные слагаемые в сумме (что эквивалентно занесению в стоп-лист и игнорированию всех соответствующих высокочастотных слов);
  • Налагать на IDF некоторую нижнюю границу BM25 —семейство функций ранжирования документов, Тошнота документа по Минычу: если IDF меньше BM25 —семейство функций ранжирования документов, Тошнота документа по Минычу, то считать ее равной BM25 —семейство функций ранжирования документов, Тошнота документа по Минычу.
  • Использовать другую формулу IDF, не принимающую отрицательных значений.

Интерпретация IDF в теории информации

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

BM25 —семейство функций ранжирования документов, Тошнота документа по Минычу

Теперь положим, что имеется два поисковых слова BM25 —семейство функций ранжирования документов, Тошнота документа по Минычу и BM25 —семейство функций ранжирования документов, Тошнота документа по Минычу. Об этом говорит сайт https://intellect.icu . Если они входят в документ независимо друг от друга, то вероятность обнаружить их в случайно выбранном документе BM25 —семейство функций ранжирования документов, Тошнота документа по Минычу такова:

BM25 —семейство функций ранжирования документов, Тошнота документа по Минычу

и содержание этого события

BM25 —семейство функций ранжирования документов, Тошнота документа по Минычу

Это примерно то, что выражается компонентой IDF в BM25.

Модификации

  • При экстремальных значениях коэффициента BM25 —семейство функций ранжирования документов, Тошнота документа по Минычу в функции BM25 получаются функции ранжирования, известные под названиями bm11 (при BM25 —семейство функций ранжирования документов, Тошнота документа по Минычу) и bm15 (при BM25 —семейство функций ранжирования документов, Тошнота документа по Минычу).
  • BM25F — модификация BM25, в которой документ рассматривается как совокупность нескольких полей (таких как, например, заголовки, основной текст, ссылочный текст), длины которых независимо нормализуются, и каждому из которых может быть назначена своя степень значимости в итоговой функции ранжирования.

Недостатки TF-IDF и BM-25

Используемая модель «bag-of-words» (мешок слов) не учитывает:

    • взаимное расположение слов (ключи в одном предложении или разбросаны по тексту);
    • позицию слова относительно начала документа (ключ в первом предложении);
    • словоформу (совпадение формы слова).
    • положение ключа в документе (зона документа).

Поэтому одна лишь формула BM25 в чистом виде для оценки релевантности документа не использовалась.

Расшифровка BM25

Робертсон хоть и утверждает, что для получения формулы использовалась вероятностная модель, но некоторые специалисты считают ее «подгонкой» под нужный результат. В функцию БМ25 внедрены свободные коэффициенты, которые могут принимать различные значения. Они подбираются так, чтобы «подогнать» результат работы поиска под заранее имеющиеся данные. Документы сначала оценивают асессоры, которые и говорят что плохо, а что хорошо. Затем на основании этих данных выбирают упомянутые коэффициенты, чтобы расположить документы так же, как это сделали асессоры – так называемый «принцип обезьянки». Оценка релевантности документа D по запросу Q , содержащего слова qi=q1,q2…qn по формуле BM25:

BM25 —семейство функций ранжирования документов, Тошнота документа по Минычу

Где:

BM25 —семейство функций ранжирования документов, Тошнота документа по Минычу— частота употребления слова qi в документе;

BM25 —семейство функций ранжирования документов, Тошнота документа по Минычу— общее количество слов в документе;

avg_dl — средняя длина документа в выборке;
k1 и b — свободные коэффициенты, чаще всего выбираемые k1=2, b=0,75.
IDF(qi,D)— обратная частота слова qi в документе D;

Для IDF используется сглаженная формула:

BM25 —семейство функций ранжирования документов, Тошнота документа по Минычу

Где:

N — число документов в выборке;
n(qi) — число документов, содержащих слово qi.
0,5 — псевдоотсчет частоты, введенный в формулу на основании данных вероятностной модели Робертсона для улучшения оценки IDF.

Формула для

TF

также изменилась:

BM25 —семейство функций ранжирования документов, Тошнота документа по Минычу

Релевантность по запросу Q равна сумме релевантностей по всем словам qi=q1,q2…qn из запроса. На первый взгляд, принцип работы такой же, как и TF-IDF:

  • при отсутствии слова из запроса в документе f(qi,D)=0 слагаемое в формуле score(D,Qi) также будет равно 0;
  • чем больше слов и запроса встречается в документе, а также чем больше их частота употребления, тем больше будет итоговая оценка score.

Но есть и отличия:

  • TF при увлечении вхождений асимптотически стремится к определенному коэффициентами b,k1 значению. В то время как в классической формуле TF стремится к бесконечности.

Процентный рост BM25 от числа вхождений

Число вхождений 1 2 3 4 5 6 7 8 9 10
Рост Score в процентах 50% 20% 11,1% 7,1% 5,0% 3,7% 2,9% 2,3% 1,9%

BM25 —семейство функций ранжирования документов, Тошнота документа по Минычу

  • IDF принимает отрицательные значения для слов, входящих более чем в половину документов. Часто встречающиеся слова сильно портят итоговую оценку документа. При наличии двух почти одинаковых документов, отличающихся только одним часто употребляемым словом, приоритет получит документ, не содержащий его. Данный факт далек от того, чтобы дать адекватную оценку качества документа, поэтому используется один из двух из вариантов:

а) отрицательные значения в сумме вообще игнорируются;

б) накладывается нижняя граница, при достижении которой значение IDF считается фиксированным числом;

BM25 —семейство функций ранжирования документов, Тошнота документа по Минычу

  • Короткие документы гораздо быстрее достигают насыщения по оценке TF. После достижения определенного порога дальнейшее увеличение частоты термина в документе не приводит к росту TF Score. Длинные же документы, наоборот, достигают насыщения гораздо позже.

BM25 —семейство функций ранжирования документов, Тошнота документа по Минычу

  • Значение Score зависит от длины документа D. Чем больше слов в документе, тем меньше будет итоговая оценка для документа.

Зависимость Score от объема текста (TF уменьшается).

Объем текста (слов) 50 150 250 350 450 550 650 750 850
Падение Score в процентах -4,60% -4,40% -4,20% -4,10% -3,90% -3,80% -3,60% -3,50%
  • Если взять в расчет только относительную релевантность, т.е. релевантность нескольких документов по одному запросу, то множитель IDF сократится. При расчете Score двух текстов с одинаковым 2% вхождением однословного ключа (TF фиксированный) текст на 2300 символов получит Score = 7,45 (≈-6%), а текст на 20 000 символов – Score = 7,86% (≈+6%). Если взять двухсловный запрос, Score для длинного текста уже составит +12%. Именно поэтому создание текстовых «портянок» долгое время было нормой для SEO-специалистов.

Немногие помнят «золотую эру SEO», когда вебмастера спамили ключевыми словами, достигали более высокой релевантности за счет их количества и, добавив ко всему этому тысячу сапо-ссылок, за пару недель выходили в ТОП.

Расчет BM-25

Возьмем те же тексты и рассчитаем количество документов, содержащих слова из запроса, и среднюю длину документа.

Текстовая Релевантность Документа Поиске
Количество документов содержащих слово 2 3 2 3
Док.1 Док.2 Док.3 Док.4 Средняя
Длина документа 25 22 26 17 22,5

Далее найдем IDF для каждого слова из запроса

Слова из запроса
Текстовая Релевантность Документа Поиске
Док.1 Частота слова 0,080 0,080 0,000 0,000
Док.2 0,045 0,045 0,000 0,045
Док.3 0,000 0,115 0,038 0,038
Док.4 0,000 0,000 0,059 0,059
IDF 0 -0,368 0 -0,368

В итоге получаем следующее значение TF и оценку Score по запросу «Текстовая релевантность документа в поиске»:

Текстовая Релевантность Документа Поиске
Док.1 TF 0,107 0,107 0,000 0,000 Score 0,00107
Док.2 TF 0,068 0,068 0,000 0,068 Score 0,00136
Док.3 TF 0,000 0,147 0,051 0,051 Score 0,00198
Док.4 TF 0,000 0,000 0,104 0,104 Score 0,00104

Наглядный пример, того как IDF может принимать отрицательные значения для слов, которые встречаются больше чем в половине документов. Вместо отрицательного значения IDF брали фиксированное IDF=0,01. Наибольшую оценку получил «документ 3», хотя в классической TF-IDF формуле – документ 1, который теперь имеет самую низкую оценку Score по BM25. Распределение оценок по различным запросам:

BM25 Запросы
№ документа Релевантность Текстовая релевантность Текстовая релевантность документа Текстовая релевантность документа в поиске
Док.1
Док.2
Док.3
Док.4
BM25 Запросы
№ документа Релевантность Текстовая релевантность Текстовая релевантность документа Текстовая релевантность документа в поиске
Док.1
Док.2
Док.3
Док.4

До этого мы рассматривали ограниченную выборку, в которой заранее известно, что документы околотематические. Для лучшего понимания формулы рассмотрим пример с нетематической коллекцией документов. Найдем Score в выборке из 20 000 документов.

BM25 —семейство функций ранжирования документов, Тошнота документа по Минычу

IDF для слова «документа» значительно больше, чем для слов «релевантность» и «текстовая». Теперь увеличим частоту слова «документа» в док2 с 2% до 5%.

BM25 —семейство функций ранжирования документов, Тошнота документа по Минычу

Видим значительный рост TF и Score при неизменном IDF. Увеличим частоту «текстовая» до 6% в док 1.

BM25 —семейство функций ранжирования документов, Тошнота документа по Минычу

Сумма частот каждого слова из запроса в документе 1 и документе 2 одинаковая и составляет 13%, но термин «документа» меньше употребляется в коллекции. Из итоговой оценки и можно говорить, что значимость узкоспециализированных слов значительно выше, чем других терминов из запроса.

тошнота документа по минычу

В 2006-2007 годах по методике пользователя под ником Миныч на форуме Searchengines решили, что в Яндексе при расчете релевантности использовались похожие формулы:

BM25 —семейство функций ранжирования документов, Тошнота документа по Минычу

Где:

n(ti,d) — частота слова ti в документе d;
nmax — частота самого употребляемого термина в документе d;
TL — длина поисковой базы в словах, общее количество слов в выборке b;

BM25 —семейство функций ранжирования документов, Тошнота документа по Минычу — количество вхождений слова ti в поисковую базу b;

BM25 —семейство функций ранжирования документов, Тошнота документа по Минычу — вес термина.

Видим, что по данной формуле максимальная релевантность достигается, когда продвигаемый запрос ti является самым частотным в документе n(ti,d)=nmax, а плотность ключевого слова вообще не влияет на оценку. Миныч – первый, кто ввел понятие «Тошнота». В его методике тошнота W=max(√7,√nmax) – квадратный корень от частоты самого употребляемого слова nmax в документе. Если nmax меньше 7, то W=√7. При превышении некоторого порога спамности для конкретного слова, например W>25, накладывалась пессимизация документа.

Вау!! 😲 Ты еще не читал? Это зря!

Статью про bm15 я написал специально для тебя. Если ты хотел бы внести свой вклад в развитие теории и практики, ты можешь написать коммент или статью отправив на мою почту в разделе контакты. Этим ты поможешь другим читателям, ведь ты хочешь это сделать? Надеюсь, что теперь ты понял что такое bm15 , bm11 , bm25 , bm25f, алгоритм ранжирования, функция ранжирования, тошнота документа по минычу и для чего все это нужно, а если не понял, или есть замечания, то не стесняйся, пиши или спрашивай в комментариях, с удовольствием отвечу. Для того чтобы глубже понять настоятельно рекомендую изучить всю информацию из категории Обработка естественного языка

создано: 2021-12-09
обновлено: 2024-11-14
10



Рейтиг 9 of 10. count vote: 2
Вы довольны ?:


Поделиться:

Найди готовое или заработай

С нашими удобными сервисами без комиссии*

Как это работает? | Узнать цену?

Найти исполнителя
$0 / весь год.
  • У вас есть задание, но нет времени его делать
  • Вы хотите найти профессионала для выплнения задания
  • Возможно примерение функции гаранта на сделку
  • Приорететная поддержка
  • идеально подходит для студентов, у которых нет времени для решения заданий
Готовое решение
$0 / весь год.
  • Вы можите продать(исполнителем) или купить(заказчиком) готовое решение
  • Вам предоставят готовое решение
  • Будет предоставлено в минимальные сроки т.к. задание уже готовое
  • Вы получите базовую гарантию 8 дней
  • Вы можете заработать на материалах
  • подходит как для студентов так и для преподавателей
Я исполнитель
$0 / весь год.
  • Вы профессионал своего дела
  • У вас есть опыт и желание зарабатывать
  • Вы хотите помочь в решении задач или написании работ
  • Возможно примерение функции гаранта на сделку
  • подходит для опытных студентов так и для преподавателей

Комментарии

Анастасия
22-12-2021
Спасибо за статью!

Оставить комментарий
Если у вас есть какое-либо предложение, идея, благодарность или комментарий, не стесняйтесь писать. Мы очень ценим отзывы и рады услышать ваше мнение.
To reply

Обработка естественного языка

Термины: Обработка естественного языка