Close Menu
    Telegram
    SEO HARDCORE
    • Разборы патентов
      • Патенты Google
      • Патенты Яндекс
    • Скоро
      SEO инструменты
    • Скоро
      SEO аналитика
    SEO HARDCORE
    Разборы патентов • Патенты Google

    Как Google кластеризует и фильтрует похожие товары от одного продавца в результатах поиска по продуктам

    NEAR-DUPLICATE FILTERING IN SEARCH ENGINE RESULT PAGE OF AN ONLINE SHOPPING SYSTEM (Фильтрация почти дубликатов на странице результатов поиска системы онлайн-шоппинга)
    • US9607331B2
    • Google LLC
    • 2017-03-28
    • 2013-08-01
    2013 Google Shopping Индексация Патенты Google

    Анализ патента Google, описывающего систему для повышения разнообразия в поиске по товарам. Система вычисляет степень схожести между товарами одного продавца на основе названия, модели, описания и изображения. Похожие товары объединяются в кластеры, и в результатах поиска отображается только ограниченное количество товаров из каждого кластера, чтобы предотвратить доминирование одного продавца с вариациями одного продукта.

    • Описание
    • Детальный разбор
    • Выводы
    • Практика
    • Вопросы и ответы
    • Наверх

    Описание

    Какую задачу решает

    Патент решает проблему снижения разнообразия (diversity) в результатах поиска системы онлайн-шоппинга (Online Shopping System), вызванную доминированием почти дублирующихся записей (near-duplicate entries). Это особенно актуально, когда один продавец или компания предоставляет множество записей с минимальными отличиями в атрибутах (например, вариации цвета или размера). Система направлена на сокращение внутри-вендорных (intra-company) дубликатов, чтобы улучшить пользовательский опыт покупателя.

    Что запатентовано

    Запатентована система для идентификации и фильтрации почти дубликатов товаров от одного и того же продавца. Система вычисляет метрику расстояния (distance) между парами товаров на основе взвешенной суммы редакционных расстояний (edit distance) их атрибутов (название, модель, описание, изображение). Товары с расстоянием ниже определенного порога группируются в кластеры. При формировании поисковой выдачи применяются фильтры, ограничивающие количество отображаемых результатов из одного кластера.

    Как это работает

    Механизм работает в двух основных фазах:

    • Офлайн-обработка (Индексация): Система анализирует набор записей для каждого продавца. Для каждой пары товаров вычисляется расстояние схожести (например, с использованием нормализованного расстояния Левенштейна). Строится граф, где товары — это узлы, а расстояния — ребра. Идентифицируются кластеры схожих товаров (например, товары с уровнем схожести 95%). Каждому товару присваивается идентификатор кластера (Cluster ID) и минимальное расстояние до ближайшего соседа (min_score).
    • Онлайн-обработка (Ранжирование/Фильтрация): В ответ на запрос пользователя система генерирует список результатов. Затем этот список фильтруется с использованием данных о кластерах. Например, система может применить «crowding» (уплотнение), чтобы показать только один или несколько наиболее важных (на основе q-score) товаров из каждого кластера.

    Актуальность для SEO

    Высокая. Управление дубликатами и обеспечение разнообразия товаров являются критически важными задачами для любых крупных платформ электронной коммерции, включая Google Shopping. Методы, описанные в патенте, напрямую связаны с тем, как агрегируются и отображаются продуктовые фиды. По мере роста объемов данных в E-commerce, такие системы дедупликации становятся все более необходимыми.

    Важность для SEO

    Патент имеет высокое значение (8/10) для SEO-специалистов, работающих с E-commerce и Google Shopping. Он раскрывает конкретные механизмы, определяющие, какие товары будут показаны, а какие скрыты как дубликаты. Понимание атрибутов, используемых для расчета схожести (название, модель, описание, изображение), и роли «важности» товара (q-score) позволяет стратегически оптимизировать продуктовые фиды для максимизации видимости ключевых продуктов и предотвращения нежелательной фильтрации.

    Детальный разбор

    Термины и определения

    Cluster ID (Идентификатор кластера)
    Уникальный идентификатор, присваиваемый группе почти дублирующихся товаров. Часто определяется атрибутом наиболее важного товара (с наивысшим q-score) в кластере.
    D(P, Q) (Функция расстояния)
    Метрика, вычисляющая расстояние (несхожесть) между двумя товарами P и Q. Рассчитывается как взвешенная сумма редакционных расстояний их атрибутов.
    Edit Distance (ED) (Редакционное расстояние)
    Метрика для измерения различия между двумя строками. В патенте упоминаются расстояние Хэмминга, Левенштейна, Дамерау-Левенштейна и Джаро-Винклера. Конкретно используется нормализованное расстояние Левенштейна.
    Min_score (Минимальная оценка/расстояние)
    Атрибут товара, указывающий наименьшее расстояние до другого товара в том же кластере. Используется для фильтрации результатов по порогу схожести.
    Near-Duplicate Entries (Почти дублирующиеся записи)
    Записи о товарах в базе данных, которые имеют идентичные или очень похожие атрибуты.
    Online Shopping System (Система онлайн-шоппинга)
    Платформа, позволяющая пользователям искать и покупать товары через интернет (например, Google Shopping).
    ProductNeardupInfo
    Структура данных, хранящая информацию о дедупликации для товара, включающая Cluster ID, min_score и количество товаров в кластере (num_products).
    Q-score (Оценка качества/важности)
    Статическая, не зависящая от запроса оценка важности (importance score) товара. Используется для выбора представителя кластера.
    Thumbnail Key (Ключ миниатюры)
    Отпечаток (fingerprint) миниатюры (изображения) товара, используемый для оценки схожести изображений.

    Ключевые утверждения (Анализ Claims)

    Claim 1 (Независимый пункт): Описывает основной метод сокращения почти дубликатов от одного продавца в результатах поиска.

    1. Система определяет расстояние в векторном пространстве квантифицированных атрибутов для каждой пары записей в наборе записей от одного и того же продавца (from the same merchant).
    2. Система определяет кластеры записей как функцию от вычисленных расстояний.
    3. Система получает запрос к базе данных.
    4. Система возвращает упорядоченный список результатов, отфильтрованный по крайней мере одним из следующих способов:
      • Исключение из списка всех, кроме предопределенного первого порогового числа записей из каждого кластера (например, показывать только 1 товар на кластер).
      • После включения первой записи в список, исключение других записей, находящихся в пределах предопределенного порогового расстояния от первой записи.

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

    Claim 2 (Зависимый от 1): Уточняет метод расчета расстояния.

    Определение расстояния включает вычисление взвешенной суммы (weighted sum) редакционного расстояния (edit distance) между квантифицированными атрибутами пар записей.

    Claim 4 (Зависимый от 1): Уточняет метод определения кластеров.

    Кластеры идентифицируются как группы записей, связанные с другой записью расстоянием, меньшим предопределенного первого порогового расстояния.

    Claim 6 (Зависимый от 1): Добавляет два дополнительных метода фильтрации к тем, что указаны в Claim 1.

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

    Где и как применяется

    Изобретение затрагивает этапы индексирования для предварительных вычислений и финальные этапы формирования выдачи для применения фильтров.

    INDEXING – Индексирование и извлечение признаков
    Основная часть работы алгоритма происходит на этом этапе в офлайн-режиме. Система использует инфраструктуру параллельной обработки (упоминается MapReduce) для:

    1. Группировки товаров по продавцам (Company ID).
    2. Расчета парных расстояний D(P, Q) между товарами внутри каждой группы.
    3. Построения графа схожести и выполнения кластеризации.
    4. Вычисления и индексации структуры ProductNeardupInfo (Cluster ID, min_score, num_products) для каждого товара.
    5. Объединения (Union) категорий для всех товаров внутри кластера для предотвращения потери покрытия.

    RANKING – Ранжирование
    На этом этапе генерируется предварительный список релевантных товаров стандартными методами ранжирования. Также на этом этапе (или ранее) определяется статическая важность товара (q-score).

    RERANKING – Переранжирование / METASEARCH – Метапоиск и Смешивание
    На финальном этапе формирования SERP система применяет фильтры, основанные на проиндексированных данных о кластерах.

    • Crowding (Уплотнение): Система может использовать Cluster ID для ограничения максимального количества товаров на кластер в выдаче. Выбираются товары с наивысшим q-score.
    • Фильтрация по порогу: Система может исключать товары, чей min_score ниже заданного порога (например, исключать все товары, которые отличаются от соседа менее чем на 1%).
    • Отображение кластера: В ответ на действие пользователя (клик по ссылке «Похожие товары») система фильтрует выдачу, оставляя только товары с определенным Cluster ID.

    На что влияет

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

    Когда применяется

    • Триггеры активации: Алгоритм кластеризации активируется при обновлении продуктового фида продавца. Алгоритм фильтрации активируется при любом поиске в системе онлайн-шоппинга.
    • Условия применения фильтрации: Фильтрация применяется, если в результатах поиска присутствуют товары, идентифицированные как члены одного кластера почти дубликатов. Уровень фильтрации может зависеть от настроек системы (например, порога схожести или максимального количества товаров на кластер).

    Пошаговый алгоритм

    Процесс А: Офлайн-кластеризация (MapReduce)

    1. Сбор и группировка: Товары извлекаются из базы данных и группируются по идентификатору продавца (Company ID).
    2. Сортировка: Внутри каждой группы товары сортируются по q-score (важности) в порядке убывания.
    3. Расчет парных расстояний: Для каждой пары товаров (P, Q) в группе вычисляется расстояние D(P, Q) с использованием взвешенной суммы редакционных расстояний атрибутов.
    4. Построение графа и фильтрация ребер: Строится полный граф. Ребра (связи) с расстоянием, превышающим заданный порог T (например, T=0.05), отбрасываются. Остается разреженный граф.
    5. Кластеризация: На разреженном графе выполняется обход (или алгоритм Union-Find) для поиска связанных компонентов. Каждый компонент является кластером почти дубликатов.
    6. Присвоение идентификаторов: Каждому кластеру присваивается Cluster ID (например, ID товара с максимальным q-score в кластере).
    7. Расчет метрик кластера: Для каждого товара вычисляется min_score (расстояние до ближайшего соседа в кластере) и num_products (размер кластера).
    8. Объединение категорий: Категории всех товаров в кластере объединяются (Union), и этот объединенный набор категорий присваивается всем товарам кластера.
    9. Индексация: Структура ProductNeardupInfo и обновленные категории индексируются для использования в поиске.

    Процесс Б: Онлайн-фильтрация результатов поиска

    1. Получение запроса и генерация результатов: Система получает запрос и формирует упорядоченный список результатов.
    2. Применение фильтров (Crowding): Система итерирует по списку. Если достигнуто максимальное пороговое число результатов из одного Cluster ID, последующие результаты из этого кластера исключаются.
    3. Применение фильтров (Расстояние): При итерации по списку, если текущий результат находится слишком близко (расстояние меньше порога) к уже включенному результату, текущий результат исключается.
    4. Применение фильтров (Min_Score): Результаты, чей min_score ниже заданного порога (например, NDTH=0.05), исключаются из выдачи.
    5. Формирование SERP: Отфильтрованный список возвращается пользователю. Для оставшихся результатов могут быть добавлены ссылки на просмотр похожих товаров (используя Cluster ID).

    Какие данные и как использует

    Данные на входе

    Система использует следующие атрибуты товаров для расчета схожести:

    • Контентные факторы:
      • Name (Название товара).
      • Model (Модель товара).
      • Description (Описание товара, используемое для сниппета).
      • Category (Категория товара – используется для объединения внутри кластера).
    • Мультимедиа факторы:
      • Thumbnail Key (Отпечаток/fingerprint миниатюры изображения товара).
    • Системные данные:
      • Company ID / Merchant ID (Идентификатор продавца – используется для ограничения скоупа анализа).
      • Q-score (Статическая оценка важности товара).

    Какие метрики используются и как они считаются

    • Normalized Levenshtein Distance (ED): Редакционное расстояние между двумя строками A и B, нормализованное по длине.
      Формула: ED = Levenshtein_Distance(A, B) / max(length(A), length(B)).
      Значение находится в диапазоне [0, 1].
    • Weighted Distance (D(P, Q)): Взвешенная сумма редакционных расстояний атрибутов.
      Формула: D(P, Q) = K_name*ED(P_name, Q_name) + K_model*ED(P_model, Q_model) + K_description*ED(P_description, Q_description) + K_thumb*ED(P_thumb, Q_thumb).
      Где K_* это весовые коэффициенты для каждого атрибута. Сумма K_* равна 1.0, поэтому D(P, Q) также находится в диапазоне [0, 1].
    • Порог кластеризации (T): Максимальное расстояние, при котором два товара считаются почти дубликатами. В патенте приводится пример T=0.05 (т.е. товары схожи на 95%).
    • Min_score: Минимальное значение D(P, Q) для товара P среди всех других товаров Q в том же кластере.

    Выводы

    1. Фокус на внутри-вендорной дедупликации: Ключевая особенность патента — кластеризация и фильтрация применяются к набору товаров одного и того же продавца. Цель — не объединить одинаковые товары от разных продавцов, а предотвратить доминирование одного продавца с множеством похожих предложений.
    2. Атрибуты схожести: Схожесть определяется по конкретному набору атрибутов: Название, Модель, Описание и Изображение (через Thumbnail Key). Изменение этих атрибутов напрямую влияет на результат кластеризации.
    3. Взвешенная модель схожести: Система использует взвешенную сумму редакционных расстояний, что подразумевает разную важность атрибутов (например, схожесть модели может быть важнее схожести описания). Конкретные веса (K_*) в патенте не указаны, но сам механизм критичен.
    4. Роль «Важности» (Q-score): При фильтрации предпочтение отдается товарам с более высоким q-score (статической важностью). Это означает, что система не просто выбирает случайный товар из кластера, а выбирает наиболее авторитетный или качественный.
    5. Объединение категорий для сохранения покрытия: Чтобы избежать потери видимости по запросам, релевантным скрытым дубликатам, система объединяет категории всех товаров в кластере и присваивает их всем членам кластера. Это гарантирует, что представитель кластера будет ранжироваться по всем релевантным категориям.
    6. Гибкие методы фильтрации: Система может применять разные стратегии фильтрации: ограничение количества на кластер (Crowding), фильтрация по минимальному расстоянию (min_score) или исключение слишком близких соседей в SERP.

    Практика

    Best practices (это мы делаем)

    Рекомендации применимы к оптимизации продуктовых фидов для систем типа Google Shopping.

    • Обеспечение уникальности ключевых атрибутов: Чтобы избежать нежелательной кластеризации разных товаров, необходимо обеспечить достаточное различие в их Названиях, Моделях, Описаниях и Изображениях. Различия должны превышать порог схожести (предположительно 95%).
    • Стратегическое управление вариациями: Если вариации товара (например, цвета) должны отображаться как единый продукт, следует минимизировать различия в описаниях и названиях, позволяя системе их скластеризовать. Убедитесь, что основная версия товара имеет наивысший q-score (важность), чтобы именно она стала представителем кластера.
    • Оптимизация Q-score представителя кластера: Так как q-score используется для выбора представителя, необходимо работать над повышением сигналов важности/качества для основного товара в группе вариаций (например, через сбор отзывов, улучшение поведенческих факторов, внешние ссылки, если они влияют на q-score в данной системе).
    • Использование уникальных изображений для разных товаров: Поскольку Thumbnail Key (отпечаток изображения) участвует в расчете схожести, использование идентичных или очень похожих изображений для разных артикулов увеличивает вероятность их кластеризации как дубликатов.
    • Полнота покрытия категорий: Используйте механизм объединения категорий в своих интересах. Убедитесь, что все товары в потенциальном кластере имеют правильно назначенные категории. Представитель кластера унаследует все эти категории, что расширит его семантическое покрытие.

    Worst practices (это делать не надо)

    • Создание множества дубликатов для захвата SERP: Попытка занять больше позиций в выдаче путем загрузки множества минимально отличающихся товаров от одного продавца будет неэффективна. Система активно борется с этим, сводя такие товары к одному или нескольким результатам.
    • Игнорирование атрибута Model: Использование одинакового номера модели для разных товаров или нечеткое заполнение этого поля может привести к ошибочной кластеризации, так как это один из ключевых атрибутов в формуле расстояния.
    • Незначительное переписывание описаний: Использование автоматического рерайтинга или синонимайзинга для генерации «уникальных» описаний может быть недостаточно. Нормализованное расстояние Левенштейна эффективно выявляет такие манипуляции, и если схожесть останется выше порога (например, 95%), товары будут считаться дубликатами.

    Стратегическое значение

    Патент подтверждает важность структурированных данных и качества продуктовых фидов в E-commerce поиске. Он демонстрирует, что поисковые системы инвестируют значительные ресурсы (включая офлайн-обработку MapReduce) для обеспечения разнообразия выдачи и борьбы с дублированием контента на уровне отдельных продавцов. Для SEO-стратегии это означает переход от простой загрузки большого количества SKU к стратегическому управлению ассортиментом и оптимизации атрибутов для контроля того, как система воспринимает схожесть товаров.

    Практические примеры

    Сценарий: Управление вариациями цвета для обуви

    Продавец продает модель кроссовок «Runner Pro» в 5 цветах. Цель: Показать один результат в общем поиске, но дать пользователю возможность увидеть другие цвета.

    1. Структура фида: Названия и описания делаются максимально похожими, модель указывается одинаковая («Runner Pro»). Изображения отличаются (показывают разный цвет).
    2. Расчет схожести: Система вычисляет расстояние D(P, Q). Так как Name, Model и Description почти идентичны, общее расстояние мало (например, 0.02), что ниже порога T=0.05.
    3. Кластеризация: Все 5 вариаций объединяются в один кластер.
    4. Выбор представителя: Система выбирает вариацию с наивысшим q-score (например, черный цвет, так как он самый популярный).
    5. Результат в SERP: В выдаче отображается только черная версия. Рядом с ней может быть показана ссылка «Еще 4 похожих товара» (как описано в патенте), ведущая на выдачу, отфильтрованную по Cluster ID.

    Сценарий: Разделение похожих, но разных моделей телефонов

    Продавец продает «Phone X1» и «Phone X1 Pro». Они похожи внешне, но имеют разные функции и цену. Цель: Показать оба телефона в выдаче.

    1. Структура фида: Необходимо максимизировать различия. Указать разные модели («X1» vs «X1 Pro»). В названиях и описаниях акцентировать внимание на уникальных функциях «Pro» версии. Использовать изображения, подчеркивающие различия (если есть).
    2. Расчет схожести: За счет различий в атрибутах расстояние D(P, Q) увеличивается (например, до 0.10).
    3. Кластеризация: Так как расстояние выше порога T=0.05, товары не попадают в один кластер.
    4. Результат в SERP: Оба товара могут быть показаны в результатах поиска независимо друг от друга.

    Вопросы и ответы

    Применяется ли этот патент к общему веб-поиску или только к Google Shopping?

    Патент специфичен для «Системы онлайн-шоппинга» (Online Shopping System) и описывает обработку структурированных записей о товарах с атрибутами вроде <model> и <description>. Его механизмы предназначены для поиска по продуктам (например, Google Shopping), а не для дедупликации веб-страниц в основном поиске Google.

    Фильтрует ли система одинаковые товары от разных продавцов?

    Нет, основная цель этого патента — фильтрация почти дубликатов от одного и того же продавца (intra-company или same merchant). Система сначала группирует товары по ID продавца и только потом выполняет кластеризацию внутри этой группы. Для объединения одинаковых товаров от разных продавцов используются другие механизмы.

    Какие атрибуты используются для определения схожести товаров?

    В патенте явно указана формула, использующая четыре основных атрибута: Название (Name), Модель (Model), Описание (Description) и Ключ миниатюры (Thumbnail Key, отпечаток изображения). Схожесть рассчитывается как взвешенная сумма редакционных расстояний этих атрибутов.

    Как система решает, какой товар показать, если несколько объединены в кластер?

    Система выбирает представителя кластера на основе q-score — статической, не зависящей от запроса оценки важности товара. Товары в кластере сортируются по q-score, и тот, у кого он выше, имеет больше шансов быть показанным в выдаче при применении фильтрации (crowding).

    Что такое q-score и как его оптимизировать?

    Патент определяет q-score как оценку важности товара, но не детализирует, как он рассчитывается. В контексте E-commerce поиска, это, вероятно, агрегированная метрика, учитывающая популярность товара, его качество, отзывы, возможно, цену и поведенческие данные. Оптимизация включает улучшение всех доступных сигналов качества и популярности основного SKU.

    Насколько похожими должны быть товары, чтобы их посчитали дубликатами?

    Патент приводит пример порога T=0.05 для нормализованного расстояния. Это означает, что если два товара отличаются менее чем на 5% (т.е. схожи более чем на 95%) по своим атрибутам, они считаются почти дубликатами. Этот порог может настраиваться системой.

    Что произойдет с категориями товаров, которые были скрыты как дубликаты?

    Патент предлагает решение для предотвращения потери покрытия: система объединяет (Union) категории всех товаров внутри кластера и присваивает этот объединенный набор категорий всем товарам кластера, включая представителя. Это гарантирует, что представитель будет ранжироваться во всех релевантных категориях.

    Как использование уникальных изображений влияет на дедупликацию?

    Это важный фактор. Изображение (через Thumbnail Key) является одним из четырех атрибутов в формуле расчета расстояния. Использование разных изображений увеличивает расстояние между товарами и снижает вероятность их кластеризации как дубликатов. Использование одинаковых изображений, наоборот, увеличивает схожесть.

    Достаточно ли просто изменить порядок слов в названии или описании, чтобы избежать фильтрации?

    Скорее всего, нет. Система использует редакционное расстояние (например, Левенштейна) для сравнения строк. Хотя расстояние Левенштейна чувствительно к порядку слов, незначительные изменения могут не привести к существенному увеличению расстояния, особенно если используется нормализация. Чтобы гарантированно избежать фильтрации, требуются более существенные различия в контенте.

    Как проверить, были ли мои товары объединены в кластер?

    Патент не описывает публичных инструментов для этого. Однако косвенным признаком может быть резкое снижение видимости определенных SKU при одновременном росте видимости одного основного SKU. Также, если в выдаче появляется ссылка «Показать похожие товары» рядом с вашим продуктом, это означает, что он находится в кластере с другими товарами.

    Навигация
    • Описание
    • Детальный разбор
    • Выводы
    • Практика
    • Вопросы и ответы
    • Наверх
    Telegram
    © 2025 SEO HARDCORE

    Type above and press Enter to search. Press Esc to cancel.