Яндекс патентует метод автоматического создания высококачественных «негативных примеров» для обучения своих алгоритмов ранжирования. Система анализирует сессии, где пользователь уточняет свой запрос. Если пользователь переформулировал Запрос 1 в Запрос 2, система берет результат из выдачи Запроса 1 и помечает его как нерелевантный для Запроса 2. Это позволяет моделям машинного обучения лучше отличать релевантные документы от похожих, но не отвечающих финальному интенту пользователя.
Описание
Какую задачу решает
Патент решает задачу повышения качества обучения алгоритмов ранжирования (Machine Learning Algorithm, MLA). Основная проблема заключается в сложности генерации эффективных «негативных примеров» (документов, которые нерелевантны запросу). Использование случайных документов в качестве негативных примеров недостаточно эффективно. Патент предлагает метод автоматической генерации «сложных негативных» примеров (hard negatives) на основе анализа поведения пользователей, в частности, уточнения ими поисковых запросов в рамках одной сессии. Это улучшает способность MLA отличать действительно релевантные документы от тех, которые лишь поверхностно похожи на них.
Что запатентовано
Запатентован метод генерации обучающей выборки (training set) для MLA, используемого в системе поиска информации. Суть изобретения заключается в использовании последовательности запросов пользователя в рамках одной поисковой сессии для выявления негативных примеров. Если пользователь задает первый запрос (Q1), а затем в той же сессии задает второй, отличающийся запрос (Q2), система создает негативный пример, связывая Q2 с одним из результатов поиска, показанных по Q1.
Как это работает
Система анализирует логи поисковых запросов. Она идентифицирует поисковую сессию, в которой пользователь вводит последовательность разных запросов (например, уточняя свой интент). Если Запрос 1 (Q1) сменяется Запросом 2 (Q2), это интерпретируется как сигнал, что выдача по Q1 не полностью удовлетворила пользователя. Система берет результат из выдачи Q1 (SERP 1) и помечает его как негативный пример для Q2. Для повышения качества этих примеров могут применяться дополнительные фильтры: например, Q1 и Q2 должны иметь общие слова (уточнение запроса), и время взаимодействия (Dwell Time) с результатом из SERP 1 должно быть коротким (например, менее 30 секунд).
Актуальность для SEO
Высокая. Обучение моделей машинного обучения на высококачественных данных, включая сложные негативные примеры, является критически важным направлением для всех современных поисковых систем. Автоматизация сбора таких данных из логов поведения пользователей (имплицитная обратная связь) — это стандартная практика, и описанный метод предлагает конкретный и эффективный способ ее реализации.
Важность для SEO
Влияние на SEO значительно (7/10), но косвенное. Патент не описывает новый фактор ранжирования, а описывает инфраструктурный процесс улучшения качества самого алгоритма ранжирования. Для SEO это означает, что поисковая система становится более «умной» и лучше различает документы, которые точно отвечают финальному интенту пользователя, от документов, которые вынуждают пользователя уточнять запрос. Это повышает требования к точности попадания в интент и качеству поведенческих факторов (в частности, предотвращению возврата к выдаче).
Детальный разбор
Термины и определения
- Dwell Time (Время пребывания)
- Метрика, описывающая время, которое пользователь проводит на странице результата поиска перед тем, как вернуться к SERP или завершить поиск. Используется как индикатор удовлетворенности результатом.
- Machine Learning Algorithm (MLA) (Алгоритм машинного обучения)
- Алгоритм (например, ранжирующая модель), который обучается на примерах для выполнения задач, таких как предсказание релевантности документа запросу.
- Negative Training Examples (Негативные обучающие примеры)
- Элементы обучающей выборки, которые показывают алгоритму, чем целевой объект «не является» (например, пара «запрос – нерелевантный документ»). Патент фокусируется на генерации сложных (hard) негативных примеров.
- Query Log (Лог запросов)
- База данных, хранящая историю поисковых запросов, показанных SERP и взаимодействий пользователей с ними.
- Query Refinement (Уточнение запроса)
- Ситуация, когда пользователь отправляет последующий запрос, который сужает или уточняет предыдущий, часто сохраняя общие термины. В патенте это называется «overlap».
- Search Session (Поисковая сессия)
- Последовательность запросов и взаимодействий пользователя в течение ограниченного периода времени, часто объединенная одной информационной потребностью. Может определяться по времени между запросами (например, 7 минут).
- SERP (Search Engine Result Page)
- Страница результатов поиска, содержащая набор ссылок на документы.
Ключевые утверждения (Анализ Claims)
Патент описывает систему для автоматической генерации обучающих данных на основе анализа последовательности действий пользователя.
Claim 1 (Независимый пункт): Описывает основной механизм генерации негативных примеров.
- Система извлекает из логов первый запрос (Q1), его выдачу (SERP 1), второй запрос (Q2, отличающийся от Q1 и отправленный после) и его выдачу (SERP 2). Оба запроса отправлены одним устройством.
- Условие активации: Q2 отправлен в рамках той же поисковой сессии, что и Q1.
- Действие: Генерируется обучающая выборка для использования в качестве Negative Training Examples.
- Состав выборки: Q2 в паре с предопределенным результатом поиска из SERP 1.
Ядро изобретения — использование последующего запроса в сессии как индикатора нерелевантности результатов предыдущего запроса для финального интента.
Claims 6-8 (Зависимые пункты): Вводят условие уточнения запроса (Query Refinement).
Система анализирует Q1 и Q2 на предмет наличия «перекрытия» (overlap). Генерация негативного примера происходит только при наличии этого перекрытия. Перекрытие определяется как наличие хотя бы одного общего поискового термина между Q1 и Q2 (или ровно одного общего термина в одном из вариантов).
Это фокусирует механизм на ситуациях, когда пользователь уточняет запрос, а не меняет тему поиска.
Claims 9-12 (Зависимые пункты): Описывают метод выбора «предопределенного результата» из SERP 1.
- Система анализирует взаимодействия пользователя с SERP 2 (клики, время наведения).
- Выбирается результат в SERP 2 с наивысшим параметром взаимодействия (например, кликнутый результат).
- «Предопределенный результат» в SERP 1 выбирается на основе позиции кликнутого результата в SERP 2. Это может быть результат на той же позиции в SERP 1, либо на позиции выше или ниже.
Этот механизм направлен на выбор «сложных негативных» примеров — тех, которые ранжировались высоко по предыдущему запросу и похожи на позитивный пример из финального запроса.
Claims 13-14 (Зависимые пункты): Вводят фильтрацию на основе поведения.
Система анализирует взаимодействие пользователя с выбранным результатом из SERP 1. Генерация негативного примера происходит ТОЛЬКО если взаимодействие было ниже определенного порога (например, Dwell Time менее 30 секунд). Это гарантирует, что результат, который был полезен пользователю (даже если он потом уточнил запрос), не будет помечен как негативный.
Где и как применяется
Этот патент описывает инфраструктурный процесс, который не выполняется в реальном времени при обработке запроса пользователя. Он относится к офлайн-процессам подготовки данных для обучения моделей ранжирования.
Сбор данных и обработка логов (Offline)
Система взаимодействует с базой данных логов (Search Log Database). На вход принимаются сырые данные о поведении пользователей: последовательности запросов, временные метки, показанные SERP и параметры взаимодействия (клики, Dwell Time).
RANKING – Ранжирование (Обучение моделей)
Результатом работы описанной системы является обучающая выборка (Training Set), состоящая из высококачественных негативных (и, как упоминается в описании, позитивных) примеров. Эта выборка подается на вход для обучения основного алгоритма ранжирования (MLA, например, CatBoost или нейросетевые модели вроде YATI). Улучшенная выборка позволяет модели точнее определять релевантность документов.
На что влияет
- Специфические запросы: Наибольшее влияние оказывается на запросы, которые часто подвергаются уточнению. Это сложные информационные запросы, неоднозначные запросы или запросы, где интент пользователя эволюционирует в процессе поиска.
- Качество ранжирования: Влияет на способность поисковой системы отличать документы, точно соответствующие финальному интенту, от документов, соответствующих промежуточным или более широким интентам.
Когда применяется
Алгоритм применяется в процессе генерации обучающих выборок для MLA.
Триггеры активации в процессе анализа логов:
- Обнаружение двух различных запросов (Q1 и Q2), отправленных одним пользователем.
- Временная близость: Q1 и Q2 находятся в рамках одной поисковой сессии (например, разница во времени меньше порога).
- (Опционально) Уточнение: Q1 и Q2 имеют общие термины (overlap).
- (Опционально) Поведенческие сигналы: Пользователь взаимодействовал с SERP 2 (клик), и взаимодействие с выбранным результатом из SERP 1 было коротким (например, Dwell Time < 30 сек).
Пошаговый алгоритм
Процесс генерации негативного обучающего примера.
- Сбор данных: Извлечение записей из Query Log, содержащих последовательности запросов, SERP и данные о взаимодействиях.
- Идентификация сессии: Группировка запросов одного пользователя в поисковые сессии на основе временных меток.
- Выбор пары запросов: Идентификация в рамках сессии первого запроса (Q1) и последующего отличающегося запроса (Q2). В одном из вариантов реализации проверяется наличие общих терминов между Q1 и Q2 (уточнение запроса).
- Анализ взаимодействий с Q2: Определение результата в SERP 2, с которым пользователь позитивно взаимодействовал (например, кликнул). Фиксируется позиция этого результата.
- Выбор кандидата из Q1: Выбор результата из SERP 1 для использования в качестве негативного примера. Он может быть выбран случайно или на основе позиции позитивного результата из SERP 2 (например, результат на той же позиции в SERP 1).
- Фильтрация кандидата: Проверка взаимодействия пользователя с выбранным результатом из SERP 1. Если Dwell Time превышает порог (например, 30 секунд), кандидат отбрасывается.
- Генерация примера: Если кандидат прошел фильтрацию, формируется негативный обучающий пример: пара (Q2 + Результат из SERP 1).
- Обучение MLA: Сгенерированные примеры используются для обучения алгоритма ранжирования.
Какие данные и как использует
Данные на входе
- Поведенческие факторы: Являются основой для работы алгоритма. Используются:
- Последовательность запросов пользователя.
- Взаимодействия с SERP (User Interaction Parameter): клики (Loss/Win, click event), время наведения (Hovering time).
- Метрики вовлеченности: Dwell Time (время пребывания на результате), длинные/короткие клики.
- Временные факторы: Временные метки (Time Stamp) запросов используются для определения границ поисковой сессии.
- Контентные факторы: Тексты запросов (Q1 и Q2) используются для определения наличия общих терминов (overlap/refinement).
- Системные данные: Состав и порядок результатов в SERP 1 и SERP 2.
Какие метрики используются и как они считаются
- Same Search Session (Та же поисковая сессия): Определяется путем анализа разницы во времени между Q1 и Q2. Если разница ниже порога (в описании упоминается пример 7 минут), запросы считаются частью одной сессии.
- Overlap (Перекрытие/Уточнение): Определяется наличием хотя бы одного (или ровно одного) общего поискового термина между Q1 и Q2.
- User Interaction Parameter (Параметр взаимодействия): Метрики, такие как клик или Dwell Time.
- Пороги взаимодействия (Interaction Threshold): Используются для фильтрации примеров. В патенте упоминается порог в 30 секунд для Dwell Time. Если время взаимодействия с результатом из SERP 1 меньше порога, он подходит для негативного примера. Если больше – нет.
- Метрики для позитивных примеров: В описании патента также упоминается возможность генерации позитивных примеров (Q2 + кликнутый результат из SERP 2). Для них также может использоваться порог Dwell Time (например, > 30 секунд). Также упоминается расчет оценки (ranked score) на основе времени просмотра, например, по формуле $$ log(view\_time) $$, с возможным ограничением максимального времени (capping).
Выводы
- Уточнение запроса как негативный сигнал: Яндекс активно использует имплицитную обратную связь от пользователей для обучения моделей ранжирования. Переформулировка запроса в рамках одной сессии интерпретируется как сильный сигнал о том, что предыдущая выдача не удовлетворила информационную потребность.
- Автоматизация сбора Hard Negatives: Патент описывает механизм автоматического сбора «сложных негативных» примеров. Это документы, которые ранжируются высоко по похожему (предыдущему) запросу, но нерелевантны финальному интенту. Обучение на таких примерах значительно повышает точность MLA.
- Критическая роль Dwell Time в оценке качества: Dwell Time используется не только как сигнал ранжирования, но и как валидатор для генерации обучающих данных. Короткое время взаимодействия подтверждает нерелевантность результата, а длительное (например, > 30 сек) указывает на его потенциальную полезность, даже если запрос был уточнен.
- Фокус на финальном интенте: Система нацелена на обучение модели распознавать документы, удовлетворяющие финальный, уточненный интент пользователя, а не промежуточные этапы поиска.
Практика
Best practices (это мы делаем)
- Максимально точное попадание в интент: Создавайте контент, который полностью и исчерпывающе отвечает на запрос пользователя. Цель — предотвратить необходимость для пользователя возвращаться на выдачу и уточнять запрос (pogo-sticking). Если пользователи часто уточняют запрос после посещения вашего сайта, ваш контент может быть использован как негативный пример для обучения MLA.
- Оптимизация Dwell Time и вовлеченности: Удерживайте пользователя на странице, предоставляя ценную информацию быстро и в удобном формате. Длительное время взаимодействия (> 30 секунд) является сигналом полезности, который, согласно патенту, предотвращает маркировку документа как негативного примера, даже если пользователь уточнил запрос.
- Анализ путей уточнения запросов (Refinement Paths): Изучайте, как пользователи уточняют запросы в вашей нише. Если пользователи часто переходят от широкого запроса Q1 к узкому Q2, убедитесь, что ваша страница по Q1 помогает пользователю перейти к Q2 (например, через внутреннюю перелинковку или структуру контента), либо сразу оптимизируйте страницу под более конкретный интент Q2, если он является основным.
- Комплексный охват темы: Для широких запросов создавайте страницы (хабы), которые покрывают различные возможные уточнения. Это повышает вероятность длительного взаимодействия и снижает вероятность того, что пользователь вернется в поиск для переформулировки.
Worst practices (это делать не надо)
- Оптимизация под широкие запросы без удовлетворения интента: Создание контента, который ранжируется по общим запросам, но не дает конкретного ответа, приведет к коротким кликам и уточнению запросов. Это генерирует данные, которые будут использованы для обучения MLA распознавать такой контент как некачественный.
- Кликбейт и вводящие в заблуждение сниппеты: Привлечение трафика с помощью нерелевантных заголовков приведет к быстрому возврату на выдачу (Dwell Time < 30 сек). Это идеальный сценарий для генерации негативных обучающих примеров по этому патенту.
- Игнорирование поведенческих метрик: Фокус только на текстовой релевантности без учета метрик удовлетворенности пользователя (возвраты к выдаче, время на сайте) является проигрышной стратегией, так как поведенческие данные лежат в основе обучения ранжирующих моделей.
Стратегическое значение
Этот патент подтверждает стратегический приоритет Яндекса на использование поведенческих данных для улучшения качества поиска. Он демонстрирует, что данные о поведении используются не только как прямые факторы ранжирования, но и как фундамент для обучения основных моделей машинного обучения (MLA). Стратегически это означает, что разрыв между сайтами, которые точно удовлетворяют интент пользователя, и сайтами, которые этого не делают, будет увеличиваться, так как MLA становится лучше в их различении благодаря высококачественным обучающим данным.
Практические примеры
Сценарий 1: Генерация негативного примера при покупке техники
- Действия пользователя: Пользователь ищет Q1: «лучшие стиральные машины». Он кликает на Сайт А (агрегатор отзывов) из SERP 1, проводит там 10 секунд и возвращается на выдачу. Затем он вводит Q2: «лучшие узкие стиральные машины с сушкой». Он кликает на Сайт Б из SERP 2 и остается там на 5 минут.
- Действие системы (Offline):
- Система определяет, что Q1 и Q2 в одной сессии и имеют общие термины («лучшие стиральные машины»).
- Система видит позитивное взаимодействие с Сайтом Б по Q2.
- Система выбирает Сайт А из SERP 1 как кандидата для негативного примера.
- Система проверяет Dwell Time на Сайте А (10 секунд), что ниже порога (30 секунд).
- Результат: Генерируется негативный обучающий пример: («лучшие узкие стиральные машины с сушкой» + Сайт А). MLA учится, что контент типа Сайта А (общий агрегатор) менее релевантен для конкретного запроса Q2, чем контент типа Сайта Б.
Сценарий 2: Фильтрация негативного примера (защита от ложного срабатывания)
- Действия пользователя: Пользователь ищет Q1: «симптомы коронавируса». Кликает на Сайт В (медицинский портал) из SERP 1, читает статью 2 минуты. Возвращается на выдачу и вводит Q2: «инкубационный период коронавируса».
- Действие системы (Offline):
- Система определяет сессию и перекрытие терминов.
- Система выбирает Сайт В как кандидата для негативного примера.
- Система проверяет Dwell Time на Сайте В (2 минуты). Это выше порога (30 секунд).
- Результат: Негативный пример НЕ генерируется. Сайт В был полезен пользователю по первому запросу, хотя интент и эволюционировал.
Вопросы и ответы
Что такое «негативный пример» (Negative Training Example) в контексте этого патента?
Негативный пример — это элемент данных, используемый для обучения алгоритма ранжирования (MLA), который показывает, какой документ НЕ является релевантным для данного запроса. В этом патенте негативный пример создается путем связывания финального запроса пользователя (Q2) с документом, который был показан (и, возможно, посещен с коротким Dwell Time) в ответ на предыдущий запрос (Q1) в той же сессии. Это помогает модели научиться штрафовать такие документы.
Чем отличаются «сложные негативные примеры» (Hard Negatives) от обычных?
Обычные негативные примеры часто генерируются случайным образом (например, любой документ, который не был кликнут). Сложные негативные примеры (Hard Negatives) — это документы, которые похожи на релевантные или высоко ранжируются по очень близкому запросу, но не удовлетворяют финальный интент пользователя. Описанный в патенте метод генерирует именно Hard Negatives, используя результаты из предыдущей выдачи (SERP 1) для уточненного запроса (Q2), что значительно повышает качество обучения модели.
Влияет ли этот патент напрямую на ранжирование моего сайта?
Напрямую нет. Этот алгоритм работает офлайн и генерирует данные для обучения ранжирующих моделей, а не участвует в ранжировании в реальном времени. Однако его применение приводит к тому, что основные модели ранжирования Яндекса становятся более точными. Если ваш сайт часто приводит к тому, что пользователи возвращаются на выдачу и уточняют запрос, этот механизм поможет Яндексу научиться понижать ваш сайт в выдаче по соответствующим запросам.
Какую роль играет Dwell Time в этом патенте и какой порог используется?
Dwell Time играет критически важную роль фильтра для валидации негативных примеров. Если пользователь провел на странице из предыдущей выдачи (SERP 1) время, превышающее порог, этот результат НЕ будет использован как негативный пример, даже если пользователь уточнил запрос. В патенте в качестве примера приводится порог в 30 секунд. Это подчеркивает важность удержания пользователя на странице.
Работает ли этот механизм, если пользователь полностью меняет тему поиска?
Патент описывает несколько вариантов реализации. В основном варианте (Claims 6-8) требуется, чтобы между предыдущим (Q1) и последующим (Q2) запросами были общие термины (overlap), что указывает на уточнение запроса, а не смену темы. Однако в описании упоминается и возможность использования двух случайных, не связанных запросов в рамках одной сессии. Но наиболее эффективным считается вариант с уточнением запроса.
Как система выбирает, какой именно результат из предыдущей выдачи (SERP 1) использовать как негативный пример?
Описано несколько методов. Один из них — случайный выбор. Более сложный метод заключается в следующем: система определяет, на какой результат пользователь кликнул в финальной выдаче (SERP 2), и затем выбирает результат на той же (или соседней) позиции в предыдущей выдаче (SERP 1). Это направлено на поиск документов, которые система считает похожими на финальный позитивный результат.
Как я могу защитить свой сайт от того, чтобы он стал «негативным примером» для обучения MLA?
Ключевая стратегия — максимально полно удовлетворять интент пользователя и минимизировать возвраты к выдаче (pogo-sticking). Обеспечьте высокое качество контента, быструю загрузку и удобную навигацию. Если пользователь проводит на вашем сайте достаточно времени (более 30 секунд, согласно примеру из патента), система с меньшей вероятностью пометит вашу страницу как негативный пример, даже если пользователь продолжит поиск.
Что этот патент говорит о важности поведенческих факторов для Яндекса?
Патент подтверждает критическую важность поведенческих факторов. Он показывает, что Яндекс использует сложные паттерны поведения (последовательность запросов, уточнения, Dwell Time) не просто как сигналы для ранжирования, но как источник эталонных данных (Ground Truth) для обучения своих основных алгоритмов машинного обучения. Это означает, что поведенческие данные лежат в основе понимания релевантности Яндексом.
Стоит ли мне пытаться оптимизировать сайт под промежуточные запросы в цепочке поиска?
Оптимизация под промежуточные запросы может быть полезна, но она не должна идти в ущерб удовлетворению финального интента. Если страница хорошо отвечает на промежуточный запрос и обеспечивает длительное взаимодействие, это позитивный сигнал. Однако если она привлекает трафик по промежуточному запросу, но разочаровывает пользователя, который искал более конкретный ответ, это приведет к генерации негативных примеров и ухудшению видимости сайта в долгосрочной перспективе.
Использует ли система также позитивные примеры?
Да, хотя основной фокус патента на негативных примерах, в описании упоминается генерация позитивных примеров. Позитивный пример — это пара из финального запроса (Q2) и результата, с которым пользователь позитивно взаимодействовал в SERP 2 (например, клик и Dwell Time > 30 секунд). Система стремится создать сбалансированную обучающую выборку.