Яндекс патентует метод повышения качества ранжирования за счет расчета сложных текстовых факторов в реальном времени. Система использует предварительно сохраненные данные о позициях отдельных слов (query-independent) для динамического вычисления факторов совместной встречаемости и близости слов запроса (query-dependent). Эти динамические факторы обрабатываются нейронной сетью вместе с векторными представлениями слов, а результат используется основной моделью ранжирования (например, CatBoost).
Описание
Какую задачу решает
Патент решает фундаментальную проблему эффективности в поиске: как учитывать сложные факторы релевантности, зависящие от взаимодействия нескольких слов запроса (например, близость слов или их совместное вхождение в заголовок), без замедления системы. Традиционный инвертированный индекс хранит только query-independent данные (о позициях отдельных слов). Предварительный расчет всех возможных комбинаций слов невозможен. Патент предлагает механизм для динамической генерации этих сложных query-dependent факторов на лету, балансируя качество ранжирования и скорость обработки,.
Что запатентовано
Запатентована система и метод динамической генерации признаков ранжирования во время выполнения запроса. Суть изобретения заключается в использовании Dynamic Feature Generator, который извлекает базовые, независимые от запроса данные о позициях отдельных слов из инвертированного индекса и комбинирует их для создания сложных, зависящих от запроса признаков (query-dependent features), отражающих group occurrence (совместную встречаемость) слов запроса в документе. Эти признаки затем обрабатываются нейронной сетью (Neural Network) для генерации итогового фактора ранжирования,.
Как это работает
Система работает в несколько этапов при получении запроса:
- Для документа-кандидата система извлекает из инвертированного индекса query-independent data для каждого слова запроса (например, позиции слова в теле, заголовке, URL).
- Dynamic Feature Generator (155) обрабатывает эти данные совместно, вычисляя на лету query-dependent features. Например, он определяет расстояние между словами или считает, сколько раз слова встречаются вместе в заголовке.
- Ranking Feature Generator (Нейронная сеть 140) принимает на вход векторные представления слов запроса (Term Embeddings) и рассчитанные динамические признаки.
- Нейронная сеть оценивает релевантность, учитывая как семантику слов, так и их физическое расположение, и выдает Ranking Feature.
- Этот Ranking Feature используется основной моделью ранжирования (например, decision-tree-based MLA, такой как CatBoost) для финальной сортировки выдачи.
Актуальность для SEO
Высокая. Эффективное вычисление сложных признаков релевантности в реальном времени и использование многоуровневых архитектур (Нейросеть + Градиентный бустинг) является стандартом для современных поисковых систем. Описанный механизм интеграции точных позиционных данных и векторных представлений в нейронную сеть крайне актуален для повышения качества поиска.
Важность для SEO
Влияние на SEO критическое (9/10). Патент детально описывает механизм, с помощью которого Яндекс учитывает классические, но критически важные факторы: близость слов запроса (proximity) и их совместную встречаемость (co-occurrence) в ключевых зонах документа (URL, Title, Body). Это напрямую влияет на стратегии оптимизации текстов, заголовков и структуры URL, подчеркивая важность точного и стратегического размещения ключевых слов относительно друг друга.
Детальный разбор
Термины и определения
- Decision-tree-based MLA (Алгоритм машинного обучения на основе решающих деревьев)
- Основная модель ранжирования (например, CatBoost), которая использует различные признаки, включая результат работы Ranking Feature Generator, для финальной сортировки документов.
- DT Pair (Document-Term Pair, Пара «Документ-Термин»)
- Единица данных в инвертированном индексе, связывающая конкретный термин с конкретным документом.
- Dynamic Feature Generator (Генератор динамических признаков)
- Компонент системы (155), который в реальном времени обрабатывает Query-Independent Data для нескольких DT пар и вычисляет Query-Dependent Features (например, близость терминов).
- Group Occurrence (Совместная встречаемость / Групповое вхождение)
- Показатель того, как несколько терминов из запроса встречаются вместе в контенте документа. Является основой для Query-Dependent Features. Примеры: совместное наличие в заголовке или расстояние между терминами.
- Inverted Index (Инвертированный индекс)
- Структура данных (170), хранящая отображение терминов на документы. В контексте патента, он также хранит Query-Independent Data для каждой DT пары.
- Query-Dependent Feature (Признак, зависящий от запроса)
- Признак ранжирования, который зависит от нескольких терминов запроса одновременно (например, расстояние между Термином 1 и Термином 2). Генерируется динамически после получения запроса.
- Query-Independent Data (Данные, не зависящие от запроса)
- Данные, хранящиеся в инвертированном индексе для каждой DT пары. Они описывают встречаемость только одного термина в документе (например, позиция Термина 1 в заголовке). Рассчитываются заранее, до получения запроса.
- Ranking Feature Generator (Генератор признаков ранжирования)
- Компонент системы (140), часто реализованный как Нейронная Сеть (NN), который принимает на вход Term Embeddings и Query-Dependent Features и генерирует комплексный Predicted Ranking Feature.
- Term Embedding (Векторное представление термина)
- Численное векторное представление слова (термина), отражающее его семантику.
- Term-Specific Occurrence (Встречаемость конкретного термина)
- Информация о том, как отдельный термин представлен в документе (например, его позиции в URL, заголовке, теле документа). Является основой для Query-Independent Data.
Ключевые утверждения (Анализ Claims)
Патент защищает метод эффективного расчета сложных текстовых факторов в реальном времени.
Claim 1 (Независимый пункт): Описывает основной метод ранжирования.
- Система получает запрос, содержащий как минимум Первый Термин и Второй Термин.
- Для данного документа система извлекает из инвертированного индекса Query-Independent Data для пары (Документ, Первый Термин) и пары (Документ, Второй Термин). Эти данные описывают Term-Specific Occurrence каждого термина по отдельности.
- Используя эти извлеченные данные, система генерирует Query-Dependent Feature. Этот признак описывает Group Occurrence Первого и Второго терминов (т.е. как они встречаются вместе).
- Система генерирует Ranking Feature для документа, основываясь как минимум на Первом Термине, Втором Термине и сгенерированном Query-Dependent Feature.
- Документ ранжируется на основе этого Ranking Feature.
Claim 2 и 3 (Зависимые пункты): Уточняют механизм генерации Ranking Feature.
- Генерация выполняется с помощью Нейронной Сети (NN) (Claim 2).
- Claim 3 описывает обучение этой NN. NN обучается предсказывать релевантность (на основе асессорских оценок/Labels), принимая на вход: (i) Term Embeddings (семантика слов) и (ii) Feature Vectors, содержащие динамически сгенерированные Query-Dependent Features (структура и расположение слов).
Claim 5 (Зависимый пункт): Подчеркивает, что Query-Dependent Feature генерируется в реальном времени (real-time) во время процедуры ранжирования.
Claim 6 (Зависимый пункт): Уточняет, что финальное ранжирование выполняется алгоритмом машинного обучения на основе решающих деревьев (Decision-tree-based MLA), например, CatBoost.
Claim 9 и 10 (Зависимые пункты): Предоставляют конкретные примеры. Term-Specific Occurrence (Claim 9) включает позиции термина в Заголовке (Title), URL или Теле документа (Body). Group Occurrence (Claim 10) включает количество раз, когда Второй Термин встречается вместе с Первым Термином в Заголовке, URL или Теле документа.
Где и как применяется
Изобретение является частью многоуровневой архитектуры ранжирования, обеспечивая высококачественные сигналы текстовой релевантности.
INDEXING – Индексирование и извлечение признаков
На этом этапе происходит предварительный расчет и сохранение Query-Independent Data в Inverted Index (170). Для каждого термина в документе сохраняется информация о его позициях в различных зонах (URL, Title, Body).
RANKING – Ранжирование (Вероятно L2/L3)
Основное применение патента происходит во время выполнения запроса в реальном времени.
- Извлечение данных: Система извлекает Query-Independent Data из индекса для кандидатов на ранжирование.
- Динамическая генерация признаков: Dynamic Feature Generator (155) обрабатывает эти данные для расчета Query-Dependent Features (факторов близости и совместной встречаемости).
- Обработка нейросетью: Ranking Feature Generator (NN, 140) принимает эти динамические признаки и Term Embeddings, и вычисляет комплексный Ranking Feature.
- Финальное ранжирование: Основная модель ранжирования (Ranking Model 130, например, CatBoost) использует этот комплексный признак наряду с другими факторами для определения порядка документов в выдаче.
На что влияет
- Текстовая релевантность: Влияет напрямую на оценку того, насколько точно текст документа соответствует запросу, особенно для многословных запросов.
- Оптимизация зон документа: Повышает важность наличия слов запроса вместе (а не по отдельности) в ключевых зонах: Title, URL и Body (Claims 9, 10).
- Проксимити (Близость слов): Дает механизмам ранжирования (NN и CatBoost) точные данные о расстоянии между словами запроса в тексте.
Когда применяется
Алгоритм применяется при обработке поискового запроса в реальном времени, на этапе ранжирования документов-кандидатов.
- Триггеры активации: Наличие в запросе как минимум двух терминов (Claim 1), для которых необходимо рассчитать групповое вхождение.
- Временные рамки: Расчет происходит динамически после получения запроса и до финального ранжирования (Claim 5).
Пошаговый алгоритм
Фаза 1: Офлайн-подготовка
- Индексирование: Документы обрабатываются. Для каждой пары Документ-Термин (DT) рассчитываются и сохраняются в Inverted Index данные query-independent data (позиции термина в Title, URL, Body).
- Обучение NN (Ranking Feature Generator 140): Нейросеть обучается предсказывать метки релевантности (полученные от асессоров) на основе динамически сгенерированных признаков и Term Embeddings для обучающей выборки (Claim 3).
Фаза 2: Ранжирование в реальном времени (Runtime)
- Получение запроса и выбор кандидатов: Система получает запрос (Q) и определяет набор потенциально релевантных документов (D).
- Генерация Эмбеддингов: Для терминов запроса (T1, T2…) генерируются Term Embeddings.
- Извлечение из Индекса: Система обращается к Inverted Index и извлекает Query-Independent Data (позиции) для пар (D, T1), (D, T2)….
- Динамическая генерация признаков: Dynamic Feature Generator (155) обрабатывает извлеченные данные для расчета Query-Dependent Features (Group Occurrence). Примеры расчетов:
- Близость: Расчет расстояния между T1 и T2 в Body.
- Совместная встречаемость: Проверка, присутствуют ли T1 и T2 одновременно в URL или Title.
- Обработка Нейросетью (NN): Term Embeddings и сгенерированные Динамические Признаки подаются на вход Ranking Feature Generator (140).
- Вычисление комплексного признака: NN генерирует Predicted Ranking Feature для пары (D, Q).
- Финальное Ранжирование: Ranking Model (130, CatBoost) использует этот Predicted Ranking Feature вместе с другими факторами для определения финального ранга документа D.
Какие данные и как использует
Данные на входе
- Контентные и Структурные факторы (из Индекса): Это ядро патента. Используются Query-Independent Data, хранящиеся в инвертированном индексе (Claim 9):
- Позиции (positions/offsets) термина в теле документа (Body).
- Позиции термина в заголовке (Title).
- Позиции термина в URL.
- Семантические данные (Векторы): Тексты запросов используются для генерации Term Embeddings, которые подаются в нейронную сеть.
- Дополнительные данные:
- Система может учитывать похожие термины (Similar terms, синонимы) (Claim 7).
- Система может учитывать текстовый контекст (соседние слова) термина, если он хранится в индексе (Claim 8).
Какие метрики используются и как они считаются
Система динамически вычисляет метрики Group Occurrence (Query-Dependent Features). В патенте упоминаются следующие типы (Claim 10,,):
- Co-occurrence Counts (Счетчики совместной встречаемости): Количество раз, когда Термин 1 и Термин 2 встречаются вместе в определенной зоне (Title, URL, Body). Рассчитывается путем анализа позиционных данных обоих терминов в этой зоне.
- Positional Offset (Позиционное смещение / Проксимити): Расстояние между Термином 1 и Термином 2 в документе. Рассчитывается путем вычитания позиций одного термина из позиций другого и нахождения минимального значения.
- Процент покрытия запроса в зоне: Доля слов запроса, которые встречаются в определенной зоне (например, в URL) вместе с данным словом.
Алгоритмы машинного обучения:
- Neural Network (NN): Используется в Ranking Feature Generator (140) для интеграции семантических (Embeddings) и структурных (Dynamic Features) сигналов.
- Decision-tree-based MLA (CatBoost): Используется как основная модель ранжирования (130), принимающая на вход Ranking Feature.
Выводы
- Динамический расчет сложных текстовых факторов: Яндекс обладает механизмом для расчета факторов близости (proximity) и совместной встречаемости (co-occurrence) в реальном времени. Это позволяет учитывать тонкие нюансы текстовой релевантности без перегрузки индекса и потери скорости.
- Гибридная архитектура ранжирования: Патент подтверждает использование сложной архитектуры: Динамический Генератор Признаков -> Нейронная Сеть (NN) -> Основная модель (CatBoost). Нейронная сеть выступает специализированным скорером текстовой релевантности.
- Синергия семантики и структуры: Ключевой особенностью является то, что нейронная сеть оценивает релевантность, получая одновременно Term Embeddings (семантика) и Query-Dependent Features (структура/расположение). Система учитывает и смысл слов, и важность их физического расположения.
- Критическая важность зон документа: Title, URL и Body явно используются для расчета факторов совместной встречаемости (Claims 9, 10). Это подтверждает их первостепенное значение в текстовом ранжировании.
- Расширение на синонимы: Система может применять этот механизм не только к точным словам запроса, но и к синонимам (Claim 7), что требует широкого семантического покрытия в контенте.
Практика
Best practices (это мы делаем)
- Оптимизация ключевых зон (Title, URL) под совместную встречаемость: Обеспечивайте совместное наличие ключевых слов из целевого запроса в Title и URL. Поскольку система динамически рассчитывает Group Occurrence в этих зонах (Claim 10), совместное присутствие даст сильный сигнал релевантности.
- Контроль близости слов в тексте (Proximity Optimization): Оптимизируйте контент так, чтобы слова из целевого запроса находились близко друг к другу в тексте. Система динамически измеряет расстояния (Positional Offset). Чем ближе слова, тем сильнее сигнал релевантности для нейронной сети.
- Использование точных вхождений и естественных фраз: Несмотря на развитие семантического поиска (использование Embeddings), этот патент подтверждает, что точное совместное вхождение терминов остается критически важным фактором.
- Семантическое обогащение для охвата синонимов: Используйте в тексте синонимы и релевантные QBST фразы. Так как система может учитывать «похожие термины» (Claim 7), это увеличивает вероятность нахождения сильных сигналов группового вхождения при расширении запроса.
Worst practices (это делать не надо)
- Разрозненное использование ключевых слов (Keyword Splitting/Stuffing): Простое насыщение текста ключевыми словами без учета их взаимного расположения будет менее эффективно. Если слова запроса разбросаны по всему документу, факторы Group Occurrence и проксимити будут слабыми.
- Игнорирование URL-структуры: Использование нечитаемых или нерелевантных URL снижает возможность получения буста от фактора совместной встречаемости в зоне URL.
- «Водянистый» контент между ключевыми словами: Добавление большого количества текста между словами целевого запроса увеличит позиционное смещение и ослабит сигнал близости.
Стратегическое значение
Патент подтверждает стратегический курс Яндекса на усложнение оценки текстовой релевантности. Он демонстрирует, как именно структурные (позиции слов, зоны) и семантические (эмбеддинги) сигналы интегрируются с помощью многоуровневого машинного обучения (NN и CatBoost). Для SEO это означает, что техническая оптимизация текста и работа над качеством контента должны идти рука об руку. Недостаточно просто написать хороший текст или просто включить ключи в Title — необходимо обеспечить синергию между смыслом, структурой и точным использованием языка.
Практические примеры
Сценарий: Оптимизация страницы категории E-commerce
Запрос (Q): «купить красный чехол iphone 15» (Термины: T1=купить, T2=красный, T3=чехол, T4=iphone, T5=15)
Плохая реализация:
- URL: /shop/accessories/product-id990
- Title: Чехол для телефона | Купить аксессуары недорого
- Текст: У нас вы можете купить отличный чехол. Цвет: красный. Подходит для iPhone модели 15.
Анализ системы:
- Group Occurrence в URL: 0 (Никакие термины не встречаются).
- Group Occurrence в Title: Низкая (T1 и T3 разделены, T2, T4, T5 отсутствуют).
- Близость (Proximity) в тексте: Низкая (Термины разбросаны по разным предложениям).
- Результат NN: Слабый Ranking Feature.
Хорошая реализация:
- URL: /chehly-iphone-15/krasnyj-chehol-iphone-15
- Title: Купить Красный Чехол для iPhone 15 — Цена в Москве
- Текст: Предлагаем купить красный чехол для iPhone 15. Этот стильный чехол надежно защитит ваш iPhone 15.
Анализ системы:
- Group Occurrence в URL: Высокая (T2, T3, T4, T5 встречаются вместе).
- Group Occurrence в Title: Высокая (T1, T2, T3, T4, T5 встречаются близко).
- Близость (Proximity) в тексте: Высокая (Термины в одном предложении).
- Результат NN: Сильный Ranking Feature.
Вопросы и ответы
В чем ключевое нововведение этого патента по сравнению с классическим учетом близости слов (Proximity)?
Нововведение состоит из двух частей. Во-первых, это эффективный механизм расчета близости и совместной встречаемости в реальном времени за счет использования предварительно рассчитанных позиционных данных из индекса (Query-Independent Data), что решает проблему скорости. Во-вторых, эти динамически рассчитанные факторы обрабатываются не просто формулой (как в BM25), а Нейронной Сетью (Ranking Feature Generator) совместно с векторными представлениями слов (Term Embeddings), что позволяет улавливать гораздо более сложные и нелинейные паттерны релевантности.
Что такое Query-Independent Data и Query-Dependent Feature простыми словами?
Query-Independent Data — это заранее сохраненная информация о том, где именно в документе находится каждое отдельное слово (например, слово «чехол» находится на 5-й позиции в Title и 20-й позиции в тексте). Query-Dependent Feature — это информация, которую можно рассчитать только зная весь запрос. Например, если запрос «красный чехол», система на лету рассчитает расстояние между словом «красный» и словом «чехол», используя их заранее сохраненные позиции.
Патент описывает две разные ML-модели: Нейронную Сеть (NN) и Decision-tree-based MLA (CatBoost). Как они взаимодействуют?
Они работают последовательно в многоуровневой архитектуре ранжирования. Нейронная Сеть (Ranking Feature Generator) выполняет роль сложного экстрактора признаков текстовой релевантности. Она принимает сырые сигналы (эмбеддинги и динамические факторы близости) и преобразует их в один мощный комплексный признак (Ranking Feature). Затем этот признак передается в основную модель ранжирования — CatBoost (Decision-tree-based MLA), которая использует его наряду с сотнями других факторов для финальной сортировки документов.
На какие зоны документа стоит обратить особое внимание, исходя из этого патента?
Патент явно выделяет три ключевые зоны, для которых рассчитываются факторы совместной встречаемости и близости: URL, Заголовок (Title) и Тело документа (Body) (Claims 9 и 10). Это подтверждает критическую важность оптимизации URL и Title, а также структуры основного текста для обеспечения близости ключевых слов запроса в этих зонах.
Означает ли этот патент возврат к эпохе точных вхождений и переоптимизации?
Не совсем. Хотя патент фокусируется на точном расположении слов запроса, он также использует Term Embeddings, что означает учет семантики. Нейронная сеть учится балансировать между смыслом (Embeddings) и точным расположением (Query-Dependent Features). Переоптимизация может быть распознана другими системами качества (например, Антикачество), но игнорировать важность близости и совместной встречаемости ключевых слов нельзя.
Как этот механизм влияет на ранжирование по низкочастотным (НЧ) многословным запросам?
Влияние значительно. Для НЧ многословных запросов критически важно показать точное соответствие интенту пользователя. Механизм динамического расчета близости и совместной встречаемости позволяет Яндексу точно определить, насколько хорошо документ соответствует сложной фразе. Документы, где слова запроса встречаются вместе и в правильном контексте, получат существенное преимущество.
Учитывает ли система порядок слов (Word Order)?
Да. Расчет позиционного смещения (positional offset) между терминами подразумевает, что система знает точные позиции и, следовательно, может учитывать порядок слов. Логично предположить, что Dynamic Feature Generator рассчитывает признаки, учитывающие правильный порядок слов во фразе, и нейросеть использует эту информацию для оценки релевантности.
Может ли этот механизм использоваться для анализа синонимов или похожих терминов?
Да. В патенте (Claim 7) упоминается возможность определения похожих терминов (similar term) и извлечения для них Query-Independent Data из индекса. Это означает, что система может рассчитывать факторы близости и совместной встречаемости не только для точных слов запроса, но и для их синонимов или семантически близких QBST фраз, расширяя охват анализа.
Что такое Dynamic Feature Generator и как он реализован?
Dynamic Feature Generator (155) — это специализированный вычислительный модуль, который запускается в реальном времени. Он не является моделью машинного обучения сам по себе, а скорее набором эффективных алгоритмов, которые быстро анализируют позиционные данные из индекса для расчета конкретных признаков (например, расстояния между словами или счетчиков совместных вхождений), определенных инженерами поисковой системы.
Как мне проверить, насколько хорошо моя страница оптимизирована с точки зрения этого патента?
Необходимо провести аудит ключевых страниц по целевым многословным запросам. Проверьте, встречаются ли все слова запроса в URL и Title. Проанализируйте основной текст: находятся ли ключевые слова в одном предложении или пассаже? Чем ближе и полнее представлены слова запроса в этих зонах, тем выше будут значения динамических признаков (Group Occurrence и Proximity), рассчитываемых этой системой.