Словарь SEO · Алгоритмы и формулы

TF-IDF — что это, как работает и почему уже не используется напрямую

TF-IDF (Term Frequency — Inverse Document Frequency, «частота термина — обратная частота документа») — формула 1972 года, которая оценивает важность слова в документе. Идея: слово важно, если часто встречается в этом документе (TF) и редко — в коллекции остальных документов (IDF). Это первый математический подход к текстовой релевантности, который заложил фундамент всего современного информационного поиска. В 2026 году напрямую почти не используется — её заменил BM25, но базовая логика TF-IDF до сих пор лежит в основе текстовых сигналов поисковиков.

TF-IDF за 30 секунд

Представьте библиотеку из 10 000 книг. Слово «и» встречается во всех книгах — оно ничего не говорит о теме конкретной книги. А слово «биметаллический» — только в трёх книгах по металлургии. Если вы видите это слово 10 раз в новой книге, можно почти с уверенностью сказать: это книга про металлургию.

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

Формула TF-IDF

В каноническом виде формула состоит из двух множителей:

TF-IDF(t, d, D) = TF(t, d) × IDF(t, D)

Где:

Обозначение Расшифровка Как считается
t Конкретное слово (term) например, «купить»
d Конкретный документ ваша страница
D Вся коллекция документов например, индекс Яндекса
TF(t, d) Частота слова t в документе d количество вхождений / общее число слов
IDF(t, D) Обратная документная частота log(N / n), где N — всего документов, n — содержащих слово t

TF (Term Frequency) — насколько часто слово встречается в данном документе. Может считаться по-разному:

  • Простой счётчик: TF = count(t, d) — количество вхождений
  • Нормализованный: TF = count(t, d) / |d| — доля в документе
  • Логарифмический: TF = 1 + log(count(t, d)) — приглушает влияние частоты

IDF (Inverse Document Frequency) — мера редкости слова в коллекции:

IDF(t, D) = log(N / n_t)

Где N — общее количество документов в коллекции, n_t — количество документов, содержащих слово t. Логарифм нужен, чтобы редкие слова не получали астрономические значения.

Пример расчёта вручную

Допустим, у нас коллекция из 1 000 000 веб-страниц, и слово «семантика» встречается в 5 000 из них.

Шаг 1. Считаем IDF слова «семантика»:

IDF(семантика) = log(1 000 000 / 5 000)
              = log(200)
              ≈ 5.3

Это «вес редкости»: слово достаточно специфичное, чтобы давать сильный сигнал.

Шаг 2. Считаем TF в нашем документе.

В вашей статье 1 000 слов, и «семантика» встречается 8 раз:

TF(семантика) = 8 / 1 000 = 0.008

Шаг 3. Перемножаем:

TF-IDF(семантика) = 0.008 × 5.3 ≈ 0.0424

Это вес слова «семантика» именно для вашего документа.

Сравним для контраста. Слово «и» встречается во всех 1 000 000 документах коллекции:

IDF(и) = log(1 000 000 / 1 000 000) = log(1) = 0
TF-IDF(и) = TF × 0 = 0

Стоп-слова автоматически отсеиваются — TF-IDF умножается на ноль. Это одна из элегантных черт формулы: ничего не нужно отдельно фильтровать.

А теперь попробуем сломать. Та же страница, но «семантика» встречается 80 раз:

TF(семантика) = 80 / 1 000 = 0.08
TF-IDF(семантика) = 0.08 × 5.3 ≈ 0.424

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

Ограничения TF-IDF

1. Не учитывает длину документа. Если у вас два документа, в одном 100 слов и слово встречается 5 раз, в другом 1000 слов и встречается 50 раз — у обоих будет одинаковый TF (5%). Хотя интуитивно второй документ длиннее «размазан» и менее сфокусирован.

2. Линейный рост вклада частоты. Каждое следующее вхождение слова даёт ровно столько же, сколько предыдущее. Это противоречит реальности: разница между 1 и 5 упоминаниями огромна, между 50 и 55 — почти нулевая. TF-IDF этого не различает.

3. Игнорирует позицию слова. Слово в Title значит для пользователя то же, что и в footer? Очевидно нет, но TF-IDF этого не знает — для него весь текст однороден. Современные системы добавляют «весовые зоны» поверх TF-IDF (boost для заголовков, alt-текстов, anchor-текстов).

4. Не понимает синонимы и контекст. Для TF-IDF «купить» и «приобрести» — два совершенно разных слова. Никакой семантики, только статистика. Для решения этого позже придумали LSI и эмбеддинги.

5. Зависит от качества коллекции. IDF считается по всей коллекции — если коллекция нерепрезентативна, веса будут перекошены. Например, если в индексе много спам-страниц с накрученным «биметаллический», IDF этого слова будет низкий, и оно потеряет диагностическую ценность.

6. Уязвим к накрутке. Линейная природа TF означает: впишите ключ 100 раз — получите 100x вес. До конца 1990-х так и делали, и это работало. Именно эта уязвимость заставила Karen Spärck Jones и Стивена Робертсона разработать BM25.

История создания

Год Событие
1958 Hans Peter Luhn (IBM) формулирует идею «значимость слова определяется его частотой и распределением»
1972 Karen Spärck Jones публикует статью с формулой IDF в Journal of Documentation
1973-80 TF-IDF становится стандартом векторных моделей информационного поиска (SMART system, Cornell)
1988 TF-IDF используется в первой версии LSI (Deerwester et al.) как входной признак
1994 Появляется BM25 — Стивен Робертсон и Спарк-Джонс совершенствуют TF-IDF
1995-2010 TF-IDF постепенно вытесняется BM25 в продакшен-системах
2016 Elasticsearch меняет default scoring c TF-IDF на BM25
2020-26 TF-IDF остаётся в учебниках инфопоиска и образовательных материалах, но в продакшене почти не используется

Karen Spärck Jones (1935–2007) — пионер компьютерной лингвистики, профессор Кембриджа, лауреат премии Lovelace Medal (2007). Её формулировка IDF до сих пор цитируется как одна из самых влиятельных работ в инфопоиске.

Где TF-IDF используется сегодня

Прямого использования в публичных поисковиках почти нет, но формула жива в нескольких нишах:

Текстовые анализаторы для SEO

  • Megaindex Text Analyzer — показывает TF-IDF слов вашей страницы относительно ТОП-10 по запросу.
  • JustText (Just-Magic) — российский анализатор, считает TF-IDF и предлагает «недостающие термины».
  • Pixel Plus Tools — встроенный модуль текстового анализа.
  • Тургенев — проверка переоптимизации, использует упрощённый TF-IDF.

Эти сервисы не «оптимизируют под TF-IDF» в чистом виде — они показывают, какие тематические слова есть у конкурентов в выдаче, но отсутствуют у вас. Это полезно для расширения семантики, даже если сама формула устарела.

Поисковые движки в режиме совместимости

  • Apache Lucene / Elasticsearch — TF-IDF доступна как опция (similarity = ClassicSimilarity), но default с 2016 г. — BM25.
  • PostgreSQL Full-Text Search — использует упрощённый вариант TF-IDF в функции ts_rank.

Машинное обучение и NLP

  • Классификация текстов — TF-IDF как входной признак для моделей (наивный Байес, SVM, логистическая регрессия). Простой, быстрый, понятный.
  • Поиск дубликатов и близких текстов — векторизация TF-IDF + косинусное сходство.
  • Извлечение ключевых слов из документа — top-N слов по TF-IDF часто = ключевые слова темы.
  • Рекомендательные системы — content-based фильтрация на основе TF-IDF профилей.
  • RAG-системы для LLM — TF-IDF как «грубый фильтр» перед более дорогим векторным поиском.

Академические и образовательные материалы

TF-IDF — обязательная тема в любом курсе по NLP и инфопоиску. На ней объясняют идею статистических текстовых сигналов до перехода к более сложным алгоритмам. Понимать TF-IDF полезно, чтобы понимать BM25 — преемственность очевидна.

Применение в SEO 2026

Хотя саму TF-IDF поисковики напрямую не используют, инструменты на её основе остаются полезными:

1. Текстовый аудит страниц. Загружаете URL вашей страницы и URL ТОП-10 конкурентов в анализатор — получаете таблицу терминов с TF-IDF весами. Те слова, которые у конкурентов есть, а у вас нет (или TF-IDF сильно ниже) — это ваши «смысловые пробелы». Часто именно их добавление поднимает позиции на 5-15 пунктов без других изменений.

2. Выявление тематической полноты. Если по запросу «выбор токарного станка» у конкурентов в ТОПе встречаются термины «суппорт», «револьверная головка», «шпиндель», «передняя бабка», а у вас — только «токарный станок» и «выбор», ваш текст недостаточно глубокий. Поисковик это «чувствует» через LSI и эмбеддинги даже без TF-IDF.

3. Проверка переоптимизации. Если TF-IDF одного-двух слов в вашем тексте резко выше медианы ТОП-10 — это сигнал переспама. Тургенев и аналогичные сервисы используют TF-IDF именно для этой проверки. Слишком высокая «значимость» одного слова = неестественный текст.

4. Подбор расширенной семантики. Анализаторы на TF-IDF показывают, какие связанные слова чаще всего встречаются вместе с вашим главным запросом в ТОПе. Это готовый список для расширения семантического ядра и работы с подзаголовками H2/H3.

5. Контент-планирование. При написании новой статьи TF-IDF-анализ ТОПа сразу даёт каркас: какие термины нужно обязательно использовать, какие H2-подзаголовки разворачивать, какие смежные темы упоминать.

Чего делать не нужно: пытаться «вписать TF-IDF под Яндекс/Google». Точные значения формулы публичные поисковики не используют (у них BM25 + нейросети), а абсолютные TF-IDF числа из сторонних анализаторов имеют ценность только в сравнении, не сами по себе.

Мифы и типичные ошибки

Миф 1. «TF-IDF — это устаревший метод, и его не нужно знать»

Знать нужно — это база, на которой выросло всё остальное. Без понимания TF-IDF трудно правильно использовать BM25, LSI, эмбеддинги и текстовые анализаторы. Не использовать — да, в продакшен-поиске. Изучать — обязательно.

Миф 2. «Можно посчитать TF-IDF страницы и понять её позицию в Яндексе»

Нельзя. Во-первых, Яндекс использует не TF-IDF, а свои модификации BM25 + нейросети. Во-вторых, IDF зависит от коллекции — у Яндекса коллекция «весь рунет», у анализатора — небольшая выборка. В-третьих, текстовая релевантность — лишь один из десятков факторов ранжирования.

Миф 3. «Чем выше TF-IDF — тем лучше»

Слишком высокая TF-IDF одного слова — сигнал переспама, и современные поисковики это ловят. Оптимум — соответствие медиане ТОП-10, не максимуму.

Миф 4. «TF-IDF учитывает синонимы»

Не учитывает. Это чисто статистическая формула без понимания смысла. Для работы с синонимами нужны LSI или эмбеддинги, а лучше — современные нейросетевые модели.

Ошибка 1. Считать TF-IDF в одном анализаторе и переносить выводы на другой. У каждого анализатора своя коллекция, свои значения IDF, своя логика нормализации. Цифры разных сервисов несопоставимы.

Ошибка 2. Брать топ-1 по TF-IDF в своей нише как «эталон». Топ-1 может быть переоптимизирован, может находиться там за счёт ссылок или бренда, а не за счёт текстовых сигналов. Берите медиану ТОП-10, не максимум.

Ошибка 3. Игнорировать TF-IDF полностью. Несмотря на устаревание формулы, текстовые анализаторы на её основе остаются полезным диагностическим инструментом. Отказываться от них — терять простой источник идей для улучшения текста.

Связь с другими понятиями

  • BM25 — прямой преемник TF-IDF. Решает три главных недостатка: учитывает длину документа, добавляет насыщение по частоте, устойчив к манипуляциям.
  • LSI — надстройка над TF-IDF (использует её как входной признак для SVD-разложения). Пытается ввести смысл туда, где TF-IDF видит только статистику.
  • Эмбеддинги — современная замена статистических методов нейросетевыми. Понимают смысл, синонимы, контекст. Часто работают в паре с BM25 в гибридном поиске.
  • Релевантность — общая концепция совпадения страницы с запросом. TF-IDF — один из исторических способов её количественной оценки.
  • Семантическое ядро — список запросов для оптимизации. TF-IDF-анализаторы помогают расширить ядро тематическими словами.

Чек-лист: использование TF-IDF в SEO-работе

  1. Не пытайтесь «оптимизировать под TF-IDF» в чистом виде — современные поисковики используют BM25 и нейросети.
  2. Используйте TF-IDF-анализаторы (Megaindex, JustText, Pixel) для поиска смысловых пробелов в тексте.
  3. Сравнивайте свою страницу с ТОП-10, не с топ-1 — медиана надёжнее.
  4. Обращайте внимание на «недостающие термины» — это готовый список для расширения текста и H2/H3.
  5. Не накручивайте плотность — высокий TF-IDF одного слова = сигнал переспама.
  6. Используйте TF-IDF для проверки на переоптимизацию (Тургенев и аналоги).
  7. Не делайте окончательных выводов только по TF-IDF — это лишь один из десятков факторов.
  8. Понимайте формулу — это база для понимания всех современных текстовых алгоритмов.

Главное за 30 секунд

TF-IDF — формула 1972 года, которая первой математически выразила идею «важное слово часто встречается в документе и редко — в коллекции». На ней выросла вся современная текстовая релевантность. Сегодня в чистом виде в поисковиках почти не используется — её заменил BM25, решивший главные недостатки (отсутствие учёта длины и линейный рост по частоте). Но текстовые анализаторы на основе TF-IDF (Megaindex, JustText, Тургенев) остаются полезными для диагностики «смысловых пробелов» в текстах и проверки на переспам. Знать TF-IDF обязательно — это база, без которой не понять ни BM25, ни эмбеддинги, ни современные нейросетевые подходы к релевантности.

TF-IDF текстовая релевантность алгоритмы Спарк-Джонс инфопоиск

Другие термины словаря

AI-поиск
AEO — Answer Engine Optimization
AEO (Answer Engine Optimization) — оптимизация контента, чтобы он попадал в прямые ответы поисковых систем и ИИ-ассистентов: AI Overviews Google, Нейро Яндекса, Алисы, Siri, голосового поиска. В отличие от классического SEO, цель AEO — стать самим ответом, а не просто ссылкой в выдаче. Главные принципы: чёткие ответы в первых 300-500 символах, FAQ-разметка, структурированные данные, экспертность автора.
Читать определение
AI-поиск
AI Overviews — ИИ-обзоры Google
AI Overviews — генеративные ответы Google в верхней части выдачи, заменяющие или дополняющие классический список ссылок. Запущены публично в мае 2024 года, к 2026 году покрывают ~50% информационных запросов в США. Используют модель Gemini для синтеза ответа из 5-10 источников. Главные последствия для бизнеса: сокращение CTR классических позиций на 30-60%, рост zero-click сценариев, появление новой задачи — оптимизация под цитирование (AEO/GEO).
Читать определение
Алгоритмы и формулы
BM25 — современный алгоритм оценки текстовой релевантности
BM25 — алгоритм оценки текстовой релевантности документа запросу. Преемник TF-IDF, учитывающий длину документа и насыщение по частоте. Базовый текстовый сигнал в Яндексе, Google и Elasticsearch.
Читать определение
AI-поиск
Featured snippet — нулевая позиция в выдаче
Featured snippet (нулевая позиция, в Яндексе — Блок ответов) — расширенный сниппет в самой верхней части выдачи поисковика, выше первой позиции. Поисковик берёт короткий фрагмент с одного сайта-победителя и показывает как готовый ответ. Запущен Google в 2014 году, в Яндексе аналог появился в 2018. Дает рост CTR на 20-40% на десктопе, но снижает — на мобайле (часть пользователей удовлетворяется текстом сниппета и не кликает).
Читать определение
AI-поиск
GEO — Generative Engine Optimization
GEO (Generative Engine Optimization) — узкая дисциплина внутри AEO, заточенная под цитирование в генеративных ИИ-чатах: ChatGPT, Perplexity, Claude, Gemini. Если AEO покрывает все «движки ответов» (включая поисковики и голосовых ассистентов), GEO работает только с LLM-чатами. Главные сигналы: уникальный экспертный контент, упоминания на авторитетных площадках, упоминания бренда вне сайта (entity-сигналы), цифры и кейсы.
Читать определение
AI-поиск
LLM-цитируемость — упоминания в ChatGPT, Perplexity, Claude
LLM-цитируемость — практический навык внутри AEO/GEO: как сделать контент удобным для цитирования большими языковыми моделями (ChatGPT, Perplexity, Claude, Gemini, YandexGPT). Главные сигналы: чёткие ответы в первых 200-500 символах, структура «вопрос-ответ», конкретные цифры с источниками, экспертные цитаты, уникальные данные. Метрика: Share of AI Voice — доля упоминаний бренда в ответах ИИ на нишевые запросы.
Читать определение

Все термины словаря →

Нужен разбор вашей ситуации, а не определение?

Если в этой теме застряли на конкретном проекте — напишите в Telegram или закажите SEO-аудит. Отвечу лично, без менеджеров и форм.

Написать в Telegram Заказать SEO-аудит