Google использует этот метод для автоматического построения и уточнения Базы Знаний (Knowledge Graph). Система извлекает пары «Сущность-Класс» (например, «Джордж Буш» — «президенты») из текста с помощью шаблонов, а затем проверяет и фильтрует эти данные, используя кластеризацию по контекстному сходству (Distributional Similarity) и статистические фильтры (J и K). Это повышает точность извлеченных данных, которые затем используются для улучшения понимания запросов и ранжирования.
Описание
Какую задачу решает
Патент решает проблему шума и низкой точности при автоматическом извлечении знаний из неструктурированного текста с использованием текстовых шаблонов (например, «X это Y»). Он устраняет необходимость ручного определения классов и обучающих данных, позволяя масштабируемо извлекать детализированные семантические отношения (пары экземпляр-класс) и строить более точные и детализированные базы знаний.
Что запатентовано
Запатентована система для автоматического создания точной коллекции пар Instance-Class (сущностей и их типов). Изобретение использует кластеризацию на основе распределительного сходства (Distributional Similarity) для фильтрации и валидации пар, которые были первоначально извлечены с помощью шаблонных паттернов (Template Patterns). Цель — повысить точность автоматически сгенерированной базы знаний.
Как это работает
Система работает в несколько этапов. Сначала она извлекает начальные, зашумленные пары Instance-Class из текста, используя шаблоны (например, «Y такие как X»). Параллельно она кластеризует термины, которые появляются в схожих контекстах (Distributional Similarity). Затем система фильтрует начальные пары, используя два статистических ограничения: Constraint J (внутрикластерная частота) гарантирует, что метка класса доминирует внутри одного кластера, а Constraint K (межкластерная частота) гарантирует, что метка класса специфична и не распределена по слишком большому количеству разных кластеров.
Актуальность для SEO
Высокая. Извлечение сущностей (Entity Extraction) и построение графов знаний (Knowledge Graph) являются центральными элементами современного поиска. Этот патент описывает масштабируемый и автоматизированный метод для сбора знаний, который остается крайне актуальным для понимания контента и запросов в 2025 году.
Важность для SEO
Влияние на SEO высокое (8/10). Эта технология является фундаментальной для того, как Google понимает сущности и их взаимосвязи. Она напрямую влияет на Понимание Запросов (идентификация классов в запросах) и Ранжирование. В патенте прямо указано (Claim 6), что извлеченные данные используются для продвижения (promoted) результатов, содержащих релевантные экземпляры (сущности), особенно для фактических и списочных запросов.
Детальный разбор
Термины и определения
- Class (Класс, Метка, Label)
- Семантическая категория, к которой принадлежит экземпляр (например, «президенты», «языки программирования»).
- Context (Контекст)
- Текст, окружающий фразу в предложении. Состоит из префикса (слова слева) и постфикса (слова справа). Используется для расчета Distributional Similarity.
- Constraint J (Ограничение J, Внутрикластерное)
- Порог частоты метки внутри одного кластера. Гарантирует, что значительная часть экземпляров в кластере разделяет данную метку класса (обеспечивает когезию). Аналогично нормализованной частоте термина (TF).
- Constraint K (Ограничение K, Межкластерное)
- Порог частоты метки между кластерами. Ограничивает максимальное количество различных кластеров, в которых может появиться метка класса. Гарантирует специфичность метки, аналогично концепции обратной частоты документа (IDF).
- Distributional Similarity (Распределительное сходство)
- Мера семантической связанности фраз, основанная на гипотезе, что фразы, встречающиеся в схожих контекстах, имеют схожее значение (например, «Клинтон ветировал законопроект» и «Буш ветировал законопроект» указывают на сходство между Клинтоном и Бушем).
- Instance (Экземпляр, Сущность)
- Сущность или фраза, являющаяся примером класса (например, «Джордж Буш», «Python»).
- Instance-Class Pair (Пара Экземпляр-Класс)
- Связь между экземпляром и его классом, например, («Джордж Буш», «президенты»).
- Phrase Clusters (Фразовые кластеры, Semantic Clusters)
- Группы семантически связанных фраз, созданные на основе Distributional Similarity.
- Template Patterns (Шаблонные паттерны)
- Предопределенные текстовые структуры (например, шаблоны Херста), используемые для первоначального извлечения кандидатов Instance-Class Pairs. Примеры: [X is a Y] и [Y such as X, X’, and X»].
- Text Collection (Коллекция текста)
- Корпус документов (например, веб-документы, логи запросов), используемый для извлечения данных.
Ключевые утверждения (Анализ Claims)
Claim 1 (Независимый пункт): Описывает основной метод извлечения и фильтрации.
- Система получает коллекцию текста.
- Идентифицируется первая (начальная) коллекция Instance-Class Pairs путем применения Template Patterns к документам.
- Выполняется кластеризация семантически схожих фраз (на основе контекста).
- Для каждого класса в первой коллекции проверяются два условия:
- Проверяется, помечено ли этим классом пороговое количество экземпляров (Constraint J) внутри одного кластера.
- Проверяется, включает ли пороговое количество кластеров (Constraint K) хотя бы один экземпляр, помеченный этим классом.
- Если оба условия выполнены, система выбирает экземпляры, помеченные этим классом, для включения во вторую (отфильтрованную) коллекцию Instance-Class Pairs.
- Вторая коллекция сохраняется для использования в Information Retrieval.
Claim 2 и 3 (Зависимые): Уточняют пороги и определяют ядро фильтрации.
- Порог J (Claim 2) определяется как минимальное количество экземпляров внутри кластера. Это обеспечивает когезию (cohesion) — класс должен быть доминирующим для кластера.
- Порог K (Claim 3) определяется как максимальное количество кластеров, которые включают экземпляр данного класса. Это обеспечивает специфичность (specificity) — класс не должен быть слишком общим или шумным.
Claim 5 (Зависимый): Детализирует процесс кластеризации (Distributional Similarity).
Он включает получение словаря фраз, идентификацию совпадений в документах, идентификацию контекста (префикс/постфикс) для каждого совпадения, генерацию векторов для каждой фразы на основе контекстов и кластеризацию фраз с использованием этих векторов.
Claim 6 (Зависимый): Описывает применение в поиске.
Получение запроса, идентификация терминов запроса, соответствующих классу, извлечение экземпляров этого класса и обработка результатов поиска таким образом, чтобы документы, в которых извлеченные экземпляры встречаются относительно остальных терминов запроса, повышались (promoted) в ранжировании.
Где и как применяется
Изобретение охватывает несколько этапов поисковой архитектуры, от обработки данных до финального ранжирования.
CRAWLING – Сканирование и Сбор данных
На этом этапе собирается сырье — Text Collection (веб-документы, логи запросов).
INDEXING – Индексирование и извлечение признаков (Основное применение)
Основная часть работы алгоритма происходит здесь (офлайн-процессы) для построения Базы Знаний (Knowledge Graph):
- Обработка текста: Очистка текста, токенизация и разметка частей речи (POS tagging).
- Извлечение кандидатов: Генерация начальных Instance-Class Pairs с использованием Template Patterns.
- Кластеризация: Расчет Distributional Similarity и создание Phrase Clusters.
- Фильтрация: Применение ограничений J и K для создания финальной коллекции пар.
QUNDERSTANDING – Понимание Запросов
Извлеченные данные используются для интерпретации запросов в реальном времени. Система идентифицирует термины в запросе, которые соответствуют известному Class (например, распознавание «президенты сша» как класса в запросе).
RANKING / RERANKING – Ранжирование / Переранжирование
Система извлекает Instances, соответствующие идентифицированному классу. Затем результаты поиска модифицируются: документы, в которых эти экземпляры встречаются в контексте остальных терминов запроса, повышаются в ранжировании (Claim 6).
Входные данные:
- Text Collection (корпус документов).
- Template Patterns (например, «X is a Y»).
Выходные данные:
- Отфильтрованная коллекция Instance-Class Pairs (данные для Базы Знаний).
На что влияет
- Специфические запросы: Наибольшее влияние оказывается на фактические запросы (например, «президент США с пятью детьми»), запросы, подразумевающие отношения «является» (IsA relations), и списочные запросы (например, «список президентов США»).
- Конкретные типы контента: Влияет на любой контент, где упоминаются сущности и их типы (статьи, биографии, каталоги). Это критически важно для построения и использования Графа Знаний.
Когда применяется
- Офлайн (Индексирование): Процессы извлечения и фильтрации пар Instance-Class выполняются во время обработки корпуса документов.
- В реальном времени (Поиск): Использование извлеченных данных происходит при получении запроса пользователя, особенно если в запросе идентифицирован известный класс.
Пошаговый алгоритм
Процесс А: Извлечение и Фильтрация (Офлайн)
- Сбор и Очистка текста: Получение Text Collection. Парсинг, токенизация, разделение на предложения и разметка частей речи (POS tagging).
- Генерация кластеров (Параллельный процесс):
- Сканирование текста для поиска фраз и сбора их контекста (префикс и постфикс).
- Генерация векторов для каждой фразы на основе контекстов.
- Кластеризация фраз на основе сходства векторов (Distributional Similarity) для создания Phrase Clusters (C).
- Генерация начальных пар (Параллельный процесс): Применение Template Patterns к очищенному тексту для создания начальной, зашумленной коллекции Instance-Class Pairs (P).
- Фильтрация и Извлечение (Ядро изобретения):
- Инициализация пустого набора для финальных пар ($P_{JK}$).
- Итерация по каждому семантическому кластеру (S) в C.
- Для каждой метки класса (L), связанной хотя бы с одним экземпляром в S:
- Применение Constraint J: Проверка, превышает ли частота экземпляров в S, связанных с L, порог J. (Доминирует ли метка в кластере?)
- Применение Constraint K: Если J выполнено, проверка, меньше ли общее количество кластеров, содержащих экземпляры с меткой L, порога K. (Достаточно ли специфична метка?)
- Извлечение: Если оба условия выполнены, все пары (I, L), где I находится в S, добавляются в финальный набор $P_{JK}$.
- Хранение: Сохранение финального набора $P_{JK}$ в Базе Знаний.
Процесс Б: Применение в поиске (Реальное время)
- Получение запроса.
- Идентификация класса: Система идентифицирует термины запроса, соответствующие Class в базе знаний.
- Идентификация экземпляров: Извлекаются Instances, соответствующие этому классу.
- Идентификация ресурсов: Стандартный поиск ресурсов, релевантных запросу.
- Модификация ранжирования: Повышение (promotion) в рейтинге тех ресурсов, в которых извлеченные экземпляры встречаются в контексте остальных терминов запроса.
Какие данные и как использует
Данные на входе
- Контентные факторы: Основной ввод — это необработанный текст документов (предложения, фразы). Контекст (слова до и после фразы — префикс и постфикс) критически важен для расчета Distributional Similarity.
- Структурные факторы: Теги частей речи (Part-of-Speech tags) используются для повышения точности применения Template Patterns, например, для определения границ названия категории или метки класса (например, «European countries» во фрагменте «in the name of European countries such as France»).
Какие метрики используются и как они считаются
- Distributional Similarity (Распределительное сходство): Рассчитывается путем сравнения векторов, которые представляют контексты (префиксы и постфиксы), в которых появляется фраза, и частоту этих появлений.
- Constraint J (Внутрикластерная частота): Нормализованная частота метки в кластере. Рассчитывается как количество экземпляров в кластере, имеющих данную метку, деленное на общее количество экземпляров в этом кластере. Это значение сравнивается с порогом J (минимальная частота).
- Constraint K (Межкластерная частота): Количество различных кластеров, содержащих хотя бы один экземпляр с данной меткой. Это значение сравнивается с порогом K (максимально допустимое распространение метки).
- Аналогия с TF-IDF: Патент явно проводит аналогию с TF-IDF. Кластеры рассматриваются как документы, а метки классов — как термины. Constraint J функционирует как нормализованная частота термина (TF), а Constraint K регулирует распространение метки, подобно обратной частоте документа (IDF), наказывая метки, которые появляются в слишком многих кластерах.
Выводы
- Гибридный подход к извлечению знаний: Система эффективно комбинирует два разных метода: шаблонное сопоставление (высокая полнота, низкая точность) и кластеризацию на основе дистрибутивной близости (идентификация семантической связанности). Кластеризация используется для валидации шаблонов.
- Автоматизированное построение Базы Знаний: Патент описывает механизм, позволяющий Google автоматически и масштабируемо извлекать сущности (Instances) и их типы (Classes) из текста без ручного ввода, полагаясь на статистическую валидацию для обеспечения точности.
- Контекст определяет семантику (Distributional Similarity): Ключевым элементом является кластеризация на основе контекста. То, как термины используются в предложениях (их окружение), определяет их семантическую связь.
- Баланс между доминированием и специфичностью (J и K): Фильтрация шума основана на двух ключевых статистических показателях. Constraint J гарантирует, что класс является доминирующим для группы сущностей (когезия), а Constraint K гарантирует, что класс достаточно специфичен (специфичность).
- Прямое влияние на ранжирование: Извлеченные данные активно используются для понимания классов в запросах и для повышения в ранжировании документов, содержащих релевантные экземпляры этих классов (Claim 6).
Практика
Best practices (это мы делаем)
- Используйте естественные языковые шаблоны для определения связей: Активно используйте структуры, которые соответствуют Template Patterns, для явного определения отношений между сущностями. Например: «[Сущность] — это [Тип]» («Python is a programming language») или «[Тип], такие как [Сущность 1], [Сущность 2]» («Programming languages such as Python, Java, and C++»). Это помогает системе на этапе генерации начальных пар.
- Соблюдайте ясность и консистентность контекста: Используйте термины и сущности последовательно в схожих контекстах. Это помогает алгоритму Distributional Similarity правильно кластеризовать связанные сущности. Если контекст использования сущности всегда одинаков (например, контекст вокруг названия породы собаки всегда связан с уходом, темпераментом, размером), ее семантическое значение становится более ясным для системы.
- Обеспечивайте полное покрытие темы (Класс + Экземпляры): При создании контента о какой-либо категории (Class), упоминайте множество релевантных примеров (Instances). Это увеличивает вероятность того, что система сможет сформировать плотный кластер и подтвердить связь между экземплярами и классом через Constraint J (доминирование метки в кластере).
- Укрепляйте семантические связи для повышения ранжирования: Понимая, что Google может идентифицировать класс в запросе (например, «лучшие языки программирования») и повышать результаты, содержащие его экземпляры (Python, Java), создавайте контент, который четко отвечает на запросы, предоставляя релевантные сущности в правильном контексте.
Worst practices (это делать не надо)
- Использование неоднозначной терминологии: Использование терминов в слишком разнообразных или противоречивых контекстах может запутать алгоритм кластеризации Distributional Similarity, не позволяя ему сгруппировать семантически связанные фразы.
- Keyword Stuffing без естественного контекста: Насыщение текста сущностями без обеспечения естественного лингвистического контекста не поможет установить Distributional Similarity. Система анализирует префиксы и постфиксы (окружающие слова), а не просто наличие слов на странице.
- Упоминание сущностей в изоляции: Упоминание сущности (Instance) без явного или неявного упоминания ее класса или связанных с ней других сущностей затрудняет как начальное извлечение (через шаблоны), так и последующую валидацию (через кластеризацию).
Стратегическое значение
Патент подтверждает фундаментальную важность перехода к семантическому и ориентированному на сущности поиску. Он демонстрирует, как Google автоматически строит свое понимание мира (Knowledge Graph). Для SEO-стратегии это означает, что создание авторитетности в теме требует не только покрытия ключевых слов, но и демонстрации четких семантических связей между концепциями (классами) и их примерами (экземплярами) в контенте. Контекстная релевантность, ясность языка и структура контента становятся критически важными для машиночитаемости.
Практические примеры
Сценарий: Создание статьи о языках программирования для улучшения извлечения знаний
- Цель: Помочь Google извлечь пару («Python», «язык программирования») и связать ее с другими языками.
- Действия (Использование шаблонов): Включить предложения: «Python — это высокоуровневый язык программирования» (Шаблон X is a Y). Также: «Среди популярных языков программирования можно выделить такие, как Python, Java и C++» (Шаблон Y such as X).
- Действия (Усиление контекста для Distributional Similarity): Последовательно использовать эти термины в схожих контекстах. Например: «Разработчики используют Python для веб-разработки», «Разработчики используют Java для корпоративных приложений». Схожий контекст («Разработчики используют X для…») помогает алгоритму сгруппировать Python и Java в один кластер.
- Ожидаемый результат (Фильтрация): Система видит, что в кластере {Python, Java, C++} доминирует метка «язык программирования» (выполняется Constraint J), и эта метка не встречается в других несвязанных кластерах (выполняется Constraint K). Связь подтверждается и добавляется в Базу Знаний.
- Ожидаемый результат (Поиск): При запросе «лучшие языки программирования» Google идентифицирует класс и повышает в ранжировании документы, содержащие экземпляры (Python, Java, C++), в контексте запроса.
Вопросы и ответы
Что такое Distributional Similarity (Распределительное сходство) и почему это важно для SEO?
Distributional Similarity — это принцип, согласно которому слова, встречающиеся в одинаковых контекстах, имеют схожее значение. Например, если система видит «Кот пьет молоко» и «Собака пьет молоко», она понимает, что Кот и Собака семантически связаны. Для SEO это критически важно, потому что Google использует этот метод для группировки сущностей на основе контекста вашего контента, даже если их связь не определена явно в тексте.
Что такое ограничения J и K, и как они влияют на извлечение данных?
Это статистические фильтры для повышения точности. Constraint J требует, чтобы метка класса была доминирующей внутри семантического кластера (например, большинство элементов в кластере {Python, Java, C++} должны быть помечены как «язык программирования»). Constraint K требует, чтобы метка класса не была слишком распространенной по разным несвязанным кластерам, гарантируя специфичность. Они обеспечивают, что извлеченные данные являются одновременно релевантными и точными.
Как я могу помочь Google извлечь правильные пары Instance-Class из моего контента?
Используйте ясные и естественные языковые конструкции, соответствующие Template Patterns, описанным в патенте (шаблоны Херста). Явно указывайте отношения, используя фразы вроде «X является Y» или «Y, такие как X1, X2 и X3». Кроме того, используйте сущности последовательно в схожих контекстах, чтобы помочь алгоритмам Distributional Similarity правильно сгруппировать их вместе.
Как именно этот патент влияет на ранжирование результатов поиска?
Патент явно описывает (Claim 6), что когда пользователь вводит запрос, содержащий класс (например, «лучшие президенты США»), система идентифицирует этот класс, находит его экземпляры (например, Линкольн, Вашингтон) и повышает (promotes) в ранжировании те документы, которые содержат эти экземпляры в контексте запроса. Это напрямую улучшает качество выдачи по фактическим и списочным запросам.
Что важнее для этого алгоритма: явное определение («X это Y») или контекст использования?
Оба элемента критически важны и работают вместе. Явное определение (Template Patterns) используется для генерации начальных кандидатов (гипотез). Контекст использования (Distributional Similarity) используется для кластеризации связанных терминов. Затем статистическая фильтрация (J и K) объединяет данные из обоих процессов для валидации гипотез.
Как этот патент связан с Knowledge Graph?
Этот патент напрямую связан с автоматическим наполнением Knowledge Graph. Knowledge Graph — это база данных сущностей (Instances) и их типов (Classes). Описанный механизм предоставляет масштабируемый способ извлечения этих пар из всего интернета для построения и обновления этой базы знаний с высокой точностью.
Нужно ли мне использовать микроразметку (Schema.org), если Google может извлекать эти данные автоматически?
Да, использование микроразметки по-прежнему является лучшей практикой. Микроразметка предоставляет явные, структурированные данные, что снижает неоднозначность и вероятность ошибок при автоматическом извлечении. Описанный в патенте механизм используется Google для извлечения знаний в масштабах всего интернета, в том числе из контента, где разметка отсутствует или некорректна.
Как работа над Topical Authority связана с этим патентом?
Построение Topical Authority напрямую связано с этим механизмом. Чтобы стать авторитетом в теме, нужно покрыть не только основные концепции (Классы), но и множество связанных с ними сущностей (Экземпляров). Создавая контент, который помогает Google формировать плотные семантические кластеры (через консистентный контекст) и валидировать отношения между ними (через четкие шаблоны и фильтры J/K), вы укрепляете авторитетность своего ресурса в данной теме.
Почему система использует разметку частей речи (POS tagging)?
Разметка частей речи используется на этапе применения шаблонов. Она помогает системе более точно идентифицировать границы названия класса или экземпляра в тексте. Например, в фразе «in the name of European countries such as France», POS-теги помогают понять, что «European countries» является названием класса (существительное + прилагательное), а не просто «countries».
Происходит ли процесс извлечения в реальном времени?
Нет, сам процесс извлечения, кластеризации и фильтрации является ресурсоемким и выполняется офлайн в пакетном режиме во время индексирования и обновления базы знаний. Однако результаты этого процесса (извлеченные пары экземпляр-класс) используются уже в реальном времени для понимания запросов и корректировки ранжирования.