Сообщество SEO-специалистов
с 2023 года

Текстовая релевантность: TF-IDF, LSI и BM25 простыми словами

Автор: Дмитрий ШейнкманПроверил: Роман Романенков

Текстовая релевантность — это оценка того, насколько документ отвечает запросу по содержанию. Базовая мера, TF-IDF, считает слово важным, если оно часто встречается в документе и редко — в коллекции. В поиске её давно сменил BM25, а «LSI-слова» существуют только в SEO-разговорах: такого инструмента у поисковиков нет.

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

Что поисковик считает релевантным текстом

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

Но в основании всё ещё лежит простая идея: документ тем ближе к запросу, чем больше в нём слов запроса и чем эти слова необычнее для языка вообще. Из этой идеи выросли все формулы ниже.

Главное следствие практическое: оптимизировать текст в отрыве от того, что это за страница и на какой вопрос она отвечает, бессмысленно. Если по запросу в выдаче стоят статьи, коммерческая страница туда не попадёт, сколько слов в неё ни впиши. Как определяется интент и как от него строится распределение запросов по страницам — в разборе семантического ядра.

TF-IDF: как это считается

TF-IDF — произведение двух величин.

TF (term frequency) — частота слова в документе: сколько раз слово встретилось, делённое на длину документа. Чем чаще, тем больше.

IDF (inverse document frequency) — обратная документная частота: логарифм отношения общего числа документов в коллекции к числу документов, где это слово встречается. Чем в большем количестве документов слово попадается, тем IDF ниже.

Смысл произведения легко объяснить на примере. В тексте про продвижение сайта слово «и» встречается чаще всего, но оно есть во всех документах на свете — его IDF близок к нулю, и вклад в оценку нулевой. А слово «переиндексация» встречается пару раз, зато почти нигде больше не попадается: высокий IDF делает его заметным. TF-IDF — это способ отделить слова, которые характеризуют документ, от слов, которые характеризуют язык.

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

BM25: почему TF-IDF не хватило

Okapi BM25 — развитие той же идеи, и именно такого типа формулы используются в поиске как базовая текстовая оценка. От TF-IDF он отличается двумя вещами.

Насыщение частоты. В TF-IDF вклад слова растёт линейно: двадцать вхождений в двадцать раз весомее одного. В BM25 рост замедляется и упирается в потолок: разница между первым и вторым вхождением большая, между десятым и одиннадцатым — почти никакой. Формула устроена так, что «впишем ещё пять раз» перестаёт работать математически, а не только по мнению поисковика.

Нормировка на длину. BM25 учитывает длину документа относительно средней по коллекции. Длинный текст не получает преимущества просто за счёт объёма: десять вхождений в статье на тысячу слов и десять в статье на десять тысяч оцениваются по-разному.

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

Три меры рядом

МераЧто считаетГде применяетсяЧто это значит для текста
TF-IDFЧастоту слова в документе против его редкости в коллекцииКлассика информационного поиска, основа для остальногоЦенность несут редкие тематические слова, а не повторы главного ключа
BM25То же, но с насыщением частоты и поправкой на длину документаБазовая текстовая оценка в современном поискеПосле нескольких вхождений добавлять ключ бессмысленно; объём сам по себе не помогает
BM25FТо же с разными весами зон документаТам, где важно разделять заголовок, тело и тексты ссылокЗаголовок и первый экран весят больше середины текста
LSIСкрытые связи слов через разложение матрицы «слова — документы»Метод 1980-х, в ранжировании не используется«LSI-слов» не существует; речь о тематических словах

LSI: главный миф отрасли

«LSI-слова», «LSI-копирайтинг», «добавьте LSI-фразы» — одна из самых живучих выдумок рынка.

LSI (latent semantic indexing) — реальный метод из восьмидесятых годов: разложение матрицы «слова на документы», позволяющее находить скрытые связи между словами. Технология существует, но к ранжированию в современном поиске отношения не имеет: Google прямо заявлял, что LSI-ключевых слов не существует и всякий, кто говорит обратное, ошибается. Метод плохо масштабируется на миллиарды документов, и вместо него работают языковые модели.

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

Что на самом деле считают текстовые анализаторы

ГАР, Миратекст, Just-Magic и подобные сервисы не знают формулу Яндекса. Они делают другое: берут страницы из топа по вашему запросу, разбирают их тексты и показывают, какие слова там встречаются и в каком количестве. Рекомендация «вписать слово 12 раз» — это, как правило, медиана или среднее по конкурентам, а не требование алгоритма.

Отсюда три правила обращения с их отчётами:

  1. Рекомендация — это описание топа, а не инструкция. Если выдача по запросу состоит из агрегаторов с сотнями товаров, их словарь вы не повторите и повторять не нужно.
  2. Цифра не цель. Попадание в рекомендованный диапазон не даёт позиций само по себе; выход за него тоже не наказывается автоматически.
  3. Слово из отчёта — это обычно блок, которого у вас нет. Если анализатор требует слово «гарантия» пятьдесят раз, это не про частоту, а про то, что у конкурентов есть раздел с условиями гарантии. Нужно сделать раздел, а не вписать слово.

Сравнение текстовых анализаторов: ГАР и Мiratext — разбор двух анализаторов на одном тексте: где их рекомендации совпадают, а где расходятся

Как пользоваться рекомендациями, не калеча текст

Рабочий порядок выглядит так:

  1. Сначала интент. Посмотрите выдачу: какие страницы в топе, что это за тип контента, на какой вопрос они отвечают.
  2. Потом структура. Выпишите, какие смысловые блоки есть у трёх-четырёх страниц из топа и каких нет у вас. Это и есть главная часть работы.
  3. Потом текст. Пишите блоки по-человечески, так, как это сделано у страниц из топа: слово живёт в осмысленном предложении, а не в перечислении через запятую.
  4. И только потом проверка анализатором. Если чего-то не хватает, смотрите, какого блока недостаёт, а не куда вписать слово.
  5. Заголовки и первый экран — в последнюю очередь, но внимательно: вес у них выше.

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

Переспам: как выглядит и чем лечится

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

Лечится он не удалением слов по счётчику, а переписыванием: тот же смысл нормальными предложениями, лишние повторы убираются, перечисления превращаются в блоки с пользой. Если страница попала под текстовый фильтр, разбор причин и порядок выхода — в статье про фильтры и санкции.

Про портянки контента - часть 1 — о «портянках» внизу страницы: зачем их делали и почему это перестало работать

Отдельная история — тексты, сгенерированные нейросетью без правки. Формально они часто проходят по всем счётчикам: вхождения на месте, тематические слова есть. Но они не отвечают на вопрос и плохо удерживают человека, а поведение на странице учитывается отдельно от текста — см. разбор поведенческих факторов.

Чек-лист перед сдачей текста

Частые вопросы

Что такое TF-IDF простыми словами?

Это способ оценить, насколько слово характеризует документ. TF — как часто слово встречается в тексте, IDF — насколько оно редкое в языке вообще. Произведение даёт высокий вес редким тематическим словам и почти нулевой — предлогам и союзам, которые есть везде.

Как считается TF-IDF?

TF — число вхождений слова, делённое на длину документа. IDF — логарифм отношения общего числа документов к числу документов, содержащих это слово. Итоговая величина — их произведение. В поиске чистый TF-IDF сейчас не применяется: его сменили формулы семейства BM25.

Чем BM25 отличается от TF-IDF?

Двумя вещами. Вклад повторов в BM25 насыщается: после нескольких вхождений добавление новых почти ничего не даёт. И учитывается длина документа относительно средней, поэтому объём сам по себе не даёт преимущества. Вариант BM25F дополнительно взвешивает зоны документа: заголовок весит больше тела.

Существуют ли LSI-слова?

Нет. LSI — метод из восьмидесятых годов, который в современном ранжировании не используется, а «LSI-ключи» придуманы на SEO-рынке; в Google это прямо называли ошибкой. Здравая мысль за термином есть: тексту нужны тематические слова. Называть их стоит тематическими или связанными.

Сколько раз нужно вписать ключевое слово в текст?

Правильного числа нет. Формулы ранжирования устроены так, что вклад повторов быстро перестаёт расти, а риск выглядеть переспамленным растёт дальше. Практический ориентир: главный запрос в заголовке и первом абзаце, в остальном тексте — естественные формулировки и синонимы.

Можно ли доверять рекомендациям текстовых анализаторов?

Как описанию топа — да, как инструкции — нет. Анализатор показывает, какие слова есть у конкурентов в выдаче, и обычно считает медиану. Это полезный ориентир, но попадание в диапазон не даёт позиций, а требование вписать слово чаще всего означает отсутствующий у вас раздел.

Что такое семантический анализ текста в SEO?

Так обычно называют разбор текста относительно конкурентов: какие тематические слова и в каком объёме встречаются у страниц из топа и чего не хватает вашей. К лингвистическому разбору предложения по смыслу это отношения не имеет, хотя название одно.

Влияет ли уникальность текста на позиции?

Прямой связи между процентом уникальности и позициями нет: поисковику важнее, отвечает ли страница на вопрос. Копия чужого материала проблему создаст, но не процентами, а тем, что это дубль. Как поисковики разбираются с дублирующимися страницами — в отдельном разборе.

Главное о текстовой релевантности

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

Вы SEO-специалист?

Заполните анкету в базе сообщества — она открыта всем без регистрации, и через неё заказчики ищут исполнителей по нишам, опыту и ставкам.

← Все материалы