Google использует механизм неконтролируемого (автоматического) извлечения фактов для пополнения Knowledge Graph. Система находит уже известный факт на странице и анализирует окружающую его HTML-структуру («контекстуальный шаблон»). Затем этот изученный шаблон используется для извлечения других, ранее неизвестных фактов с этой же страницы. Это позволяет Google понимать полуструктурированные данные без ручной настройки.
Описание
Какую задачу решает
Патент решает проблему масштабного извлечения фактической информации из интернета, где данные представлены в огромном разнообразии форматов и HTML-структур. Он устраняет ограничения систем, которые полагаются только на заранее заданные правила (Predefined Patterns), позволяя системе адаптироваться к неизвестным или полуструктурированным (semi-structured) макетам страниц без ручного вмешательства (unsupervised).
Что запатентовано
Запатентована система неконтролируемого извлечения фактов, которая использует метод бутстрэппинга (самообучения). Суть изобретения заключается в использовании уже известных фактов (Seed Attribute-Value Pairs) для изучения специфической HTML-структуры (Contextual Pattern) на конкретной веб-странице. Как только этот контекстный паттерн изучен, система применяет его для извлечения новых фактов с той же страницы.
Как это работает
Система работает итеративно по принципу индуктивного обучения:
- Извлечение «Семян» (Seed Extraction): Система извлекает факт (пару атрибут-значение) из Документа А, часто используя известный Predefined Pattern.
- Поиск Контекста (Context Retrieval): Система находит Документ Б, который также содержит этот «семенной» факт.
- Изучение Паттерна (Pattern Identification): Анализируется HTML-разметка, окружающая «семенной» факт в Документе Б, чтобы определить Contextual Pattern (например, как именно оформлены атрибут и значение).
- Расширенное Извлечение (Pattern Application): Система применяет этот новый Contextual Pattern к Документу Б для извлечения дополнительных пар атрибут-значение.
Актуальность для SEO
Высокая. Автоматическое извлечение структурированных данных для наполнения Knowledge Graph и формирования ответов (Featured Snippets, PAA) является ключевой задачей для Google. Способность системы обучаться новым шаблонам извлечения без участия человека критически важна для масштабирования и поддержания актуальности базы знаний в условиях постоянно меняющегося веба.
Важность для SEO
Патент имеет критическое значение (85/100) для Entity SEO и оптимизации под Knowledge Graph. Он напрямую описывает механизм, с помощью которого Google читает и интерпретирует полуструктурированные данные на веб-страницах (списки, таблицы спецификаций). Это подчеркивает, что Google не ограничен стандартной разметкой (как Schema.org) и может активно обучаться понимать уникальную структуру сайта, если она последовательна и логична.
Детальный разбор
Термины и определения
- Attribute-Value Pair (Пара Атрибут-Значение)
- Базовая единица информации, состоящая из атрибута (например, «Дата рождения») и его значения (например, «2 декабря 1981»). Является основой для формирования Факта.
- Contextual Pattern (Контекстуальный Паттерн)
- Шаблон представления данных (например, специфическая HTML-структура), который выводится системой на лету путем анализа контекста, в котором появляется известный факт (Seed Attribute-Value Pair) в документе. Он не задан заранее.
- Fact Repository (Хранилище Фактов)
- База данных, хранящая извлеченные факты. В контексте Google это инфраструктура Knowledge Graph.
- Importer (Импортер)
- Компонент системы, который обрабатывает документы и извлекает факты, часто используя Predefined Patterns. Отвечает за первичное извлечение.
- Janitor (Дворник/Санитар)
- Компонент системы, который выполняет постобработку фактов: очистку, нормализацию, слияние объектов, а также может реализовывать логику извлечения на основе Contextual Patterns.
- Object (Объект)
- Представление сущности реального мира (человек, место, вещь) в Fact Repository. Определяется набором связанных фактов (через Object ID).
- Predefined Pattern (Предопределенный Паттерн)
- Заранее известный шаблон или стандартная структура документа (например, стандартная HTML-таблица), используемый Importer для надежного извлечения фактов.
- Seed Attribute-Value Pair («Семенная» пара Атрибут-Значение)
- Уже известный факт, используемый в качестве отправной точки (анкоря). Система ищет этот факт в новом документе, чтобы изучить его Contextual Pattern.
Ключевые утверждения (Анализ Claims)
Claim 1 (Независимый пункт): Описывает основной механизм неконтролируемого извлечения фактов методом бутстрэппинга.
- Система идентифицирует первый факт (атрибут и значение), полученный из первого документа.
- Система извлекает второй документ, который содержит те же атрибут и значение первого факта.
- Система идентифицирует во втором документе Contextual Pattern, связанный с атрибутом и значением первого факта. (Т.е. изучает структуру вокруг известного факта).
- Система извлекает второй факт из второго документа, используя этот Contextual Pattern. При этом атрибут и значение второго факта отличаются от первого.
- Система сохраняет первый и второй факты в Fact Repository.
Ядро изобретения — это способность использовать уже известную информацию (первый факт) для изучения того, как представлена информация в новом контексте (второй документ), и использовать это знание (Contextual Pattern) для извлечения новой информации (второй факт).
Claim 2 и 3 (Зависимые): Описывают генерализацию и повторное использование шаблона.
Изученный Contextual Pattern может использоваться для извлечения фактов из третьего документа (Claim 2). Это особенно актуально, если второй и третий документы находятся на одном домене (Claim 3), что предполагает использование общих шаблонов верстки на сайте.
Claim 7, 8, 9 и 10 (Зависимые): Описывают использование множественных фактов для повышения точности и валидации.
Система может использовать множество известных фактов из первого документа для идентификации Contextual Pattern во втором (Claim 8). Извлечение новых фактов может зависеть от того, сколько известных фактов подтверждают этот паттерн (Claim 9). Также система может использовать один факт для вывода шаблона, а другой для его проверки (Claim 10). Это повышает надежность извлечения.
Где и как применяется
Изобретение является ключевой частью процесса наполнения Knowledge Graph и применяется на этапе обработки контента.
CRAWLING – Сканирование и Сбор данных
Система собирает исходные HTML-документы, которые служат сырьем для анализа.
INDEXING – Индексирование и извлечение признаков
Это основной этап применения патента. Процесс разделен на фазы:
- Первичное извлечение (Importers): Importers используют Predefined Patterns для извлечения начального набора фактов. Эти факты служат «семенами».
- Неконтролируемое извлечение (Janitors/Unsupervised Fact Extractor): Система использует эти «семена» для поиска других документов, анализа контекста и вывода Contextual Patterns. Затем эти шаблоны используются для извлечения дополнительных фактов.
- Нормализация и Хранение: Извлеченные факты нормализуются и сохраняются в Fact Repository (Knowledge Graph).
Входные данные:
- HTML-документы.
- Существующие факты в репозитории (Seed Attribute-Value Pairs).
- Набор Predefined Patterns.
Выходные данные:
- Новые извлеченные факты (пары атрибут-значение).
- Изученные Contextual Patterns (которые могут быть использованы повторно на похожих страницах).
На что влияет
- Конкретные типы контента: Наибольшее влияние оказывается на полуструктурированный контент (semi-structured content) — таблицы спецификаций, списки характеристик, биографические сводки, профили продуктов, где данные представлены последовательно, но не всегда в стандартном формате.
- Специфические запросы: Влияет на информационные запросы, связанные с сущностями, где Google может отображать панели знаний (Knowledge Panels) или извлеченные ответы (Featured Snippets), основанные на этих данных.
- Конкретные ниши: Влияет на все ниши с фактической информацией: E-commerce, медиа, биографии, локальный поиск и т.д.
Когда применяется
- Условия применения: Алгоритм применяется во время индексирования и обработки данных.
- Триггеры активации: Активация механизма происходит, когда система находит на странице факт, который уже известен ей (Seed Attribute-Value Pair), и этот факт окружен структурой, потенциально содержащей другие факты.
Пошаговый алгоритм
Процесс неконтролируемого извлечения фактов:
- Получение исходных данных: Система получает доступ к Документу А и Документу Б.
- Извлечение «Семян» (из Документа А): Importer анализирует Документ А. Идентифицируется предопределенный паттерн (например, стандартная таблица). Извлекается одна или несколько пар атрибут-значение. Они становятся «семенами» (Seed Attribute-Value Pairs).
- Поиск Контекста (в Документе Б): Система проверяет Документ Б на наличие «семенных» пар.
- Идентификация Контекстного Паттерна: Если «семя» найдено в Документе Б, система анализирует окружающий его HTML-контекст. Определяется локальная структура разметки (Contextual Pattern).
- Валидация Паттерна (Опционально): Если доступно несколько «семян», система проверяет, соответствуют ли они все одному и тому же Contextual Pattern в Документе Б. Это повышает уверенность в паттерне.
- Применение Паттерна и Извлечение: Система применяет идентифицированный Contextual Pattern к остальному контенту Документа Б для извлечения новых пар атрибут-значение.
- Повторное Использование Паттерна (Опционально): Изученный Contextual Pattern может быть применен к другим похожим документам (например, с того же домена).
- Хранение: Новые извлеченные факты сохраняются в Fact Repository.
Какие данные и как использует
Данные на входе
Патент фокусируется на том, как используются структура и контент документа для извлечения фактов.
- Структурные факторы (HTML/DOM): Это критически важные данные. Система анализирует HTML-теги и структуру DOM, окружающие текст, чтобы вывести Contextual Pattern. Примеры включают теги таблиц, разрывы строк (<BR>), теги выделения (<B>, <I>), списки.
- Контентные факторы: Текстовое содержание документа. Ключевым является наличие известных текстовых строк (Seed Facts) в документе.
- Системные данные: Существующая база фактов (Fact Repository), из которой берутся Seed Attribute-Value Pairs.
Какие метрики используются и как они считаются
Патент не детализирует конкретные формулы, но описывает механизмы, использующие следующие концепции:
- Pattern Matching (Сопоставление с Паттерном): Система оценивает, насколько хорошо выявленный Contextual Pattern соответствует расположению известных (seed) фактов.
- Confidence Level (Уровень Уверенности): В описании архитектуры упоминается, что факты имеют метрики уверенности. Уверенность в Contextual Pattern может зависеть от количества «семенных» фактов, которые подтверждают этот паттерн (Claim 9).
- Corroboration (Подтверждение): Факты, извлеченные новыми методами, могут проходить проверку и подтверждение из других источников для корректировки Confidence Level.
Выводы
- Google активно учится понимать структуру сайта: Система не полагается только на Schema.org или стандартные таблицы. Если сайт использует уникальную, но последовательную структуру для представления фактов, Google может автоматически вывести шаблон (Contextual Pattern) для извлечения этих данных.
- Обучение через известные факты (Бутстрэппинг): Процесс основан на индукции. Google использует то, что уже знает (Seed Attribute-Value Pair), чтобы понять новый контекст и извлечь новую информацию.
- Важность полуструктурированных данных: Патент подчеркивает ценность списков, описаний, нестандартных таблиц (semi-structured data). Четкое и логичное представление информации облегчает системе вывод Contextual Pattern.
- HTML-разметка как сигнал: Способ форматирования контента (использование тегов выделения, списков, таблиц) напрямую влияет на способность Google извлекать информацию. Чистая и последовательная HTML-структура критически важна.
- Шаблоны могут быть специфичны для сайта: Патент предполагает (Claim 3), что однажды изученный Contextual Pattern может быть повторно использован на других страницах того же домена, что указывает на анализ структуры на уровне шаблонов сайта.
Практика
Best practices (это мы делаем)
- Используйте семантический HTML для фактов: При представлении пар атрибут-значение (например, спецификации продукта, биографические данные) используйте наиболее подходящие семантические структуры. Списки определений (<DL>, <DT> для атрибута, <DD> для значения) и таблицы (<TABLE> с <TH> и <TD>) идеально подходят для надежного извлечения.
- Поддерживайте абсолютную согласованность структуры: Если вы используете определенный формат верстки (даже на базе <div> и <span>), применяйте его последовательно на всей странице и на всем сайте. Это позволяет системе выявить устойчивый Contextual Pattern.
- Обеспечьте четкое разделение Атрибута и Значения: Убедитесь, что атрибуты и их значения находятся в тесной близости в HTML-коде и четко разграничены тегами или явными разделителями (например, двоеточием).
- Используйте стандартизированные наименования атрибутов: Применяйте общепринятые названия для атрибутов (например, «Дата рождения», а не «Когда появился на свет»). Это облегчает распознавание Seed Attribute-Value Pairs и последующее обучение шаблонам.
Worst practices (это делать не надо)
- Хаотичная и непоследовательная верстка: Представление однотипных фактов в разной структуре в пределах одного документа или сайта. Это блокирует возможность выявления единого Contextual Pattern.
- Использование сложного и несемантичного HTML: Избыточная вложенность <div> и сложная верстка для представления простых фактов вместо использования семантических элементов усложняет анализ контекста.
- Прятать факты в неструктурированном тексте: Размещение важных фактических данных глубоко в абзацах текста без структурного выделения делает их сложными для извлечения этим методом.
- Разделение атрибута и значения в коде: Размещение атрибута и его значения далеко друг от друга в DOM-дереве, даже если визуально они рядом.
Стратегическое значение
Этот патент подтверждает стратегию Google на максимальную структуризацию всего контента в вебе для наполнения Knowledge Graph. Для SEO это означает, что оптимизация сущностей (Entity SEO) требует не только внедрения микроразметки, но и тщательной работы над HTML-структурой контента. Способность Google к неконтролируемому обучению шаблонам означает, что любой сайт с качественной и последовательной версткой имеет высокие шансы стать надежным источником данных, даже без активного использования Schema.org.
Практические примеры
Сценарий: Оптимизация карточки товара в E-commerce
Цель: Убедиться, что Google может легко извлечь все технические характеристики продукта.
Плохая реализация (Сложно для извлечения):
<div class="spec-item">Разрешение: 1920x1080</div> <div class="spec-item">Вес устройства составляет 1.2 кг</div>
Проблема: Атрибут и значение смешаны, форматирование непоследовательно.
Хорошая реализация (Оптимизировано для Contextual Pattern):
Использование списка определений (Definition List):
<dl class="specifications"> <dt>Разрешение</dt> <dd>1920x1080</dd> <dt>Вес</dt> <dd>1.2 кг</dd> </dl>
Преимущество: Теги <DT> (атрибут) и <DD> (значение) создают четкий и последовательный Contextual Pattern, который система легко идентифицирует (либо как Predefined, либо как Contextual) и использует для извлечения всех пар.
Вопросы и ответы
Что такое «Contextual Pattern» и чем он отличается от «Predefined Pattern»?
Predefined Pattern (Предопределенный шаблон) — это заранее известный Google способ организации данных, например, стандартная HTML-таблица. Contextual Pattern (Контекстуальный шаблон) — это шаблон, который Google выводит автоматически на лету, анализируя структуру конкретной страницы. Если вы используете нестандартную, но последовательную верстку, Google попытается изучить ее и создать Contextual Pattern для извлечения данных.
Что такое «Seed Attribute-Value Pair» (Семенной факт) и почему это важно?
Это уже известный Google факт (например, Google знает, что столица Франции — Париж). Когда система видит этот факт на вашей странице, она использует его как анкорь (Seed) для изучения того, как ваша страница структурирует данные (Contextual Pattern). Если ваша структура чиста, система использует этот анкорь, чтобы извлечь и другие факты с вашей страницы.
Означает ли этот патент, что можно не использовать микроразметку Schema.org?
Нет. Schema.org остается наиболее надежным способом передачи структурированных данных, так как она не требует от Google «догадываться» о структуре. Описанный механизм — это способ Google извлекать данные, когда микроразметка отсутствует. Лучшая стратегия — использовать Schema.org и поддерживать чистую, последовательную HTML-верстку.
Как повысить вероятность того, что Google выведет Contextual Pattern для моего сайта?
Ключевой фактор — последовательность. Используйте абсолютно одинаковую структуру HTML (теги, классы, порядок элементов) для однотипной информации (например, характеристик товаров). Также используйте общепринятые названия атрибутов, чтобы Google мог легче найти на вашей странице уже известные ему факты («семена») для запуска процесса обучения.
Как Google определяет, что изученный Contextual Pattern верен?
Патент предлагает использовать несколько «семенных» фактов (Claim 8, 9, 10). Если система находит паттерн, который корректно описывает расположение нескольких уже известных фактов на странице, ее уверенность (Confidence) в этом паттерне возрастает. Если соответствия нет или оно неоднозначно, шаблон может быть отклонен.
Может ли система использовать паттерн, изученный на моем сайте, для извлечения данных с другого сайта?
Да. Claim 2 указывает, что изученный Contextual Pattern может быть применен к третьему документу. Claim 3 уточняет, что это особенно вероятно для документов на одном домене. Это означает, что если ваша CMS использует единый шаблон для всех страниц, Google изучит его один раз и применит ко всему сайту.
Влияет ли дизайн страницы или CSS на этот процесс извлечения?
В первую очередь система анализирует HTML-структуру (DOM-дерево), а не визуальный рендеринг. CSS напрямую не влияет, но частое использование сложных макетов, опирающихся на несемантичные <div> вместо структурных элементов (таблиц, списков), может затруднить идентификацию четких паттернов.
Как этот патент связан с Featured Snippets и Knowledge Graph?
Этот механизм напрямую используется для наполнения Knowledge Graph (Fact Repository). Многие Featured Snippets (особенно в виде списков и таблиц) также формируются путем извлечения полуструктурированных данных со страницы с использованием методов, описанных в этом патенте.
Что важнее для этого алгоритма: текст или структура?
Оба критически важны, но этот патент сфокусирован именно на структуре. Текст предоставляет фактические данные (атрибуты и значения), но именно HTML-структура (Contextual Pattern) позволяет системе понять, как эти данные связаны между собой и как их можно масштабно извлечь со страницы.
Насколько актуальны эти методы, учитывая прогресс в NLP и машинном обучении?
Методы очень актуальны. Хотя современные NLP-модели могут извлекать факты из неструктурированного текста, извлечение из полуструктурированных данных (как описано в патенте) остается более точным, дешевым и масштабируемым способом. Вероятно, Google использует гибридный подход, комбинируя структурное извлечение и сложные NLP-модели.