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

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

    QUERY LANGUAGE IDENTIFICATION (Идентификация языка запроса)
    • US10489399B2
    • Google LLC
    • 2019-11-26
    • 2007-04-19
    2007 Мультиязычность Патенты Google Персонализация

    Патент описывает вероятностный метод Google для точной идентификации языка поискового запроса, включая голосовые. Система анализирует частотность слов в разных языках и комбинирует эти данные с контекстом: языком интерфейса (например, google.fr) и историческими языковыми предпочтениями пользователя. Это позволяет корректно обрабатывать запросы, даже если их язык отличается от ожидаемого.

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

    Описание

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

    Патент решает фундаментальную проблему точного определения языка поискового запроса. Это критически важно, поскольку дальнейшая обработка запроса (например, стемминг, подбор синонимов, диакритические расширения) зависит от языка. Например, слово «car» означает «автомобиль» в английском и «потому что» во французском. Система решает проблему неоднозначных запросов, содержащих термины из разных языков, или запросов, введенных на языке, отличающемся от языка интерфейса или обычного языка пользователя, что особенно актуально для голосового ввода (spoken query).

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

    Запатентована система и метод для идентификации языка запроса с использованием вероятностного подхода. Суть изобретения заключается в комбинировании нескольких источников данных: анализа самих терминов запроса (насколько часто они встречаются в документах на разных языках) и контекстуальных сигналов, таких как язык пользовательского интерфейса (Interface Language) и исторические языковые предпочтения пользователя. Система рассчитывает вероятности для каждого потенциального языка и выбирает наиболее вероятный.

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

    Система работает, генерируя и комбинируя несколько векторов вероятности:

    • Анализ интерфейса и истории: Генерируется Classifier Vector (или Second Score), который оценивает вероятность языка запроса, учитывая язык интерфейса и историю пользователя. Этот вектор обучается на исторических логах запросов (Query Log).
    • Анализ терминов: Для каждого слова в запросе генерируется Score Vector (или First Score). Он основан на нормализованной и сглаженной частоте появления этого слова в документах на разных языках в обучающем корпусе (Training Corpus).
    • Комбинирование: Все эти векторы перемножаются для получения итогового вектора (Third Score). Язык с наивысшей итоговой вероятностью выбирается в качестве языка запроса.

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

    Высокая. Точная идентификация языка является базовой и критически важной функцией любой современной поисковой системы. Учитывая, что данный патент (B2) является продолжением (continuation) более ранних заявок и был выдан в 2019 году, а также явно фокусируется (в Claim 1) на обработке голосовых запросов (spoken query) и идентификации языка, отличающегося от основного языка пользователя, описанные методы остаются крайне актуальными для этапа Query Understanding.

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

    Влияние на SEO оценивается как высокое (75/100). Патент имеет прямые последствия для международного SEO. Он определяет, как именно Google интерпретирует запрос и, следовательно, какой языковой индекс будет использоваться для ранжирования. Понимание этого механизма необходимо для разработки стратегий таргетинга на многоязычных пользователей и обеспечения того, чтобы контент был найден пользователями, ищущими на соответствующем языке, независимо от используемого ими интерфейса или их местоположения.

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

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

    Classifier Vector (Вектор классификатора)
    Вектор вероятностей, генерируемый Interface Classifier. Он содержит оценки вероятности для каждого языка, исходя из контекста (язык интерфейса и/или история пользователя). Соответствует Second Score в Claims.
    Corpus / Training Corpus (Обучающий корпус)
    Коллекция документов с известной языковой разметкой. Используется для анализа частотности слов в разных языках и расчета Score Vectors.
    Interface Classifier (Классификатор интерфейса)
    Компонент системы, который предсказывает язык запроса на основе контекста. Обучается на исторических данных (Query Log) с использованием машинного обучения (например, Naïve Bayes) и ручного тюнинга.
    Interface Language (Язык интерфейса)
    Естественный язык пользовательского интерфейса. В Claims патента B2 также используется концепция interface language historically associated with the user – язык, исторически связанный с пользователем на основе его предыдущих взаимодействий.
    Query Language (Язык запроса)
    Идентифицированный естественный язык поискового запроса.
    Query Log (Журнал запросов)
    Коллекция записей о прошлых запросах, включающая сам запрос, язык интерфейса, и языки выбранных пользователем результатов. Используется для обучения Interface Classifier.
    Score Vector (Вектор оценки)
    Вектор вероятностей, генерируемый для отдельного термина запроса. Указывает вероятность принадлежности термина к различным языкам на основе его частоты в Training Corpus. Соответствует First Score в Claims.
    Smoothing (Сглаживание)
    Техника, применяемая к Score Vectors для уменьшения шума и предотвращения нулевых вероятностей для редких слов. Использует значение сглаживания (s).
    User Language Vector (Вектор языка пользователя)
    Опциональный вектор (упомянутый в описании), указывающий исторические языковые предпочтения пользователя.

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

    Патент US10489399B2 является продолжением (continuation) более ранних патентов (от 2007 и 2013 гг.). Анализ сфокусирован на Claims, представленных в данном документе, которые имеют специфический фокус.

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

    1. Система получает голосовой запрос (query that is spoken by a user).
    2. Определяется Interface Language, исторически связанный с пользователем (на основе языков интерфейсов, использованных для предыдущих запросов).
    3. Система обрабатывает термины запроса, чтобы идентифицировать Query Language, который отличается от этого исторически связанного языка.
    4. Процесс идентификации включает доступ к коллекции записей запросов (query records) и вычисление трех типов оценок для каждого языка:
      • First Score (Лингвистическая оценка): Вероятность того, что термин принадлежит языку, на основе анализа корпуса документов.
      • Second Score (Контекстуальная оценка): Вероятность того, что запрос принадлежит языку, учитывая язык интерфейса. Этот расчет основан на исторических записях запросов (Query Log).
      • Third Score (Комбинированная оценка): Комбинация First Score и Second Score.
    5. Определение Query Language на основе Third Scores.
    6. Генерация результатов поиска, соответствующих идентифицированному Query Language.

    Ядро изобретения заключается в комбинации двух различных вероятностных подходов (First Score – на основе контента/терминов, Second Score – на основе контекста/поведения) для надежной идентификации языка. Это позволяет системе преодолеть предвзятость, основанную на истории пользователя или языке интерфейса, если сами слова запроса дают сильный сигнал о другом языке.

    Claims 2-4 (Зависимые): Уточняют, что исторически связанный язык может определяться на основе языка предыдущих запросов, языка ранее использованных интерфейсов или языка ранее выбранных результатов.

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

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

    INDEXING – Индексирование и извлечение признаков
    На этом этапе происходит предварительная обработка данных. Corpus Analyzer анализирует Training Corpus для определения языка каждого документа и подсчета частоты слов в каждом языке. Эти данные (используемые для расчета Score Vectors / First Score) вычисляются офлайн.

    QUNDERSTANDING – Понимание Запросов
    Это основной этап применения патента. Система идентификации языка запроса активируется сразу после получения запроса.

    1. Получение контекста (Онлайн): Определяется язык интерфейса и/или исторический язык пользователя. Используется Interface Classifier (для расчета Classifier Vector / Second Score).
    2. Анализ терминов (Онлайн): Query Word Scorer использует данные из этапа INDEXING для генерации Score Vectors / First Score.
    3. Вычисление и выбор языка (Онлайн): Система комбинирует все оценки и определяет Query Language.
    4. Обучение (Офлайн): Interface Classifier обучается и настраивается с использованием Query Logs.

    RANKING – Ранжирование
    Идентифицированный Query Language используется для выбора соответствующего языкового индекса и применения языкозависимых методов обработки запроса (стемминг, синонимы).

    Входные данные:

    • Поисковый запрос (текстовый или голосовой).
    • Язык текущего интерфейса и данные истории пользователя.
    • Предварительно рассчитанные данные о частоте слов в корпусе.
    • Предварительно обученный Interface Classifier.

    Выходные данные:

    • Идентифицированный Query Language.

    На что влияет

    • Специфические запросы: Наибольшее влияние оказывается на короткие запросы, запросы с многозначными терминами, именами собственными, заимствованиями (жаргон) и запросы, язык которых отличается от языка интерфейса.
    • Типы ввода: Критически важно для голосовых запросов (spoken query), как указано в Claim 1.
    • Языковые и географические ограничения: Важно для международного поиска и пользователей в многоязычных регионах.

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

    • Частота применения: Применяется при обработке каждого поискового запроса в реальном времени для определения языка до начала процессов ранжирования.

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

    Процесс А: Идентификация языка запроса в реальном времени

    1. Получение запроса и контекста: Система получает запрос и определяет контекст (текущий Interface Language и/или исторически связанный язык пользователя).
    2. Генерация вектора классификатора (Contextual Evidence): Interface Classifier генерирует Classifier Vector (или Second Score), оценивая вероятность языков на основе контекста.
    3. Идентификация терминов: Запрос разбивается на слова (термины). Опционально, частотные пары слов (N-grams) могут обрабатываться как единое целое.
    4. Генерация векторов оценки терминов (Term Evidence): Для каждого термина извлекается Score Vector (или First Score), основанный на нормализованной частоте термина в каждом языке Training Corpus.
    5. Сглаживание (Опционально): К векторам применяется Smoothing для корректировки вероятностей и уменьшения шума.
    6. Комбинирование векторов: Все Score Vectors терминов и Classifier Vector перемножаются для получения итогового вектора (Third Score).
    7. Выбор языка: Выбирается язык с наивысшей оценкой. Этот язык становится Query Language.

    Процесс Б: Офлайн-подготовка данных

    1. Анализ корпуса (для Score Vectors): Training Corpus анализируется для подсчета частоты каждого слова в документах каждого языка. Данные нормализуются (делятся на общее количество документов на этом языке).
    2. Обучение классификатора интерфейса (для Classifier Vector):
      • Анализ Query Log: Сбор статистики о том, на каких языках были запросы и выбранные результаты для каждого языка интерфейса.
      • Автоматическая классификация: Использование классификатора (например, Naïve Bayes) для генерации начального распределения.
      • Ручная разметка и Тюнинг: Эксперты вручную размечают часть запросов. Классификатор настраивается (тюнится) для минимизации ошибок.
      • Валидация: Проверка точности и повторение тюнинга при необходимости (описано на FIG. 2).

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

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

    Система использует несколько ключевых типов данных:

    • Контентные факторы (Офлайн): Текст документов в Training Corpus и их языковая разметка. Используется для подсчета частоты слов.
    • Поведенческие факторы (Офлайн и Онлайн):
      • Query Logs: Исторические данные о запросах, интерфейсах и кликах (язык выбранных результатов) используются для обучения Interface Classifier.
      • История пользователя: Языки предыдущих взаимодействий пользователя используются для определения исторически связанного языка или User Language Vector.
    • Интерфейсные факторы (Онлайн): Язык пользовательского интерфейса (Interface Language), через который получен текущий запрос.

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

    • Нормализованная частота слова: Количество появлений слова в документах языка L, деленное на общее количество документов на языке L в корпусе. Это предотвращает перекос в сторону языков с большим объемом контента.
    • Score Vector (Вероятность P(L|t)): Вероятность языка L при условии наличия термина t.
    • Smoothing (Сглаживание): Используется формула для корректировки P(L|t): P(L|t)=(n+s)/(k*s+N). Где n – частота термина t в языке L; N – общая частота термина t; k – количество языков; s – значение сглаживания. Патент также предлагает вариант расчета s: s=(N+p)/(k^q).
    • Classifier Vector (Вероятность P(L|I)): Вероятность языка L при условии использования интерфейса I (и/или истории пользователя). Рассчитывается с помощью машинного обучения на основе Query Logs.
    • Итоговая оценка (Query Language Score): Результат перемножения соответствующих вероятностей из всех Score Vectors и Classifier Vector.

    Выводы

    1. Контекст и контент равнозначны в идентификации языка: Google не полагается исключительно на слова в запросе. Контекст (язык интерфейса и история пользователя – Second Score) играет столь же важную роль, как и анализ самих слов (First Score), особенно для коротких или неоднозначных запросов.
    2. Вероятностный подход к неоднозначности: Система использует вероятностный подход для разрешения ситуаций, когда слова существуют в нескольких языках. Вместо жестких правил используются нормализованные частоты и сглаживание (Smoothing).
    3. Адаптация к поведению пользователя: Система обучается на Query Logs (агрегированное поведение) и учитывает историю конкретного пользователя (персонализация), чтобы точнее интерпретировать его текущий запрос, но при этом способна распознать, когда пользователь меняет язык (фокус патента B2).
    4. Обработка N-Grams (Пар слов): Патент упоминает возможность анализа пар слов как единого целого. Это повышает точность для устойчивых выражений или названий (например, «Palo Alto»), которые могут быть неоднозначными по отдельности.
    5. Зависимость от качества корпуса: Точность работы системы напрямую зависит от качества Training Corpus и правильности идентификации языка документов в нем. Это подчеркивает важность чистых языковых сигналов в вебе.

    Практика

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

    • Обеспечение чистоты языка на странице: Критически важно, чтобы язык контента на странице был четким и последовательным. Это гарантирует, что при индексации (когда Google формирует свой Training Corpus) страница будет корректно классифицирована, а ее термины будут правильно учтены в частотном анализе.
    • Корректная реализация международной разметки: Использование атрибутов lang в HTML и правильная настройка Hreflang помогают Google точно идентифицировать язык документа. Это повышает качество данных, на которых обучается система идентификации языка запросов.
    • Анализ международного поведения пользователей: Понимайте, что пользователи могут искать на языке X, используя интерфейс на языке Y. Оптимизируйте контент под релевантные запросы на нужном языке, не полагаясь на то, что пользователь использует «правильный» локальный домен Google.
    • Использование естественных словосочетаний (N-grams): Поскольку система может анализировать пары слов, использование естественных и устойчивых словосочетаний, характерных для целевого языка, помогает в корректной идентификации языка контента и запросов.
    • Оптимизация под голосовой поиск: Учитывая явный фокус на spoken query в патенте B2, оптимизируйте контент под естественные голосовые запросы. Система должна точно определить язык произнесенной фразы, даже если он не является основным для пользователя.

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

    • Смешивание нескольких языков на одной странице: Избегайте значительного смешивания языков в основном контенте (за исключением естественных заимствований или цитат). Это может привести к неверной классификации языка страницы при индексации, что ухудшит данные в Training Corpus и может негативно сказаться на ранжировании.
    • Создание контента на «ломаном» языке (Плохой машинный перевод): Контент, который не соответствует частотным характеристикам естественного языка, будет плохо обрабатываться системой и может быть неверно классифицирован или признан низкокачественным.
    • Игнорирование многоязычия аудитории: Предположение, что пользователи в определенной стране ищут только на основном языке этой страны. Система Google специально разработана для динамической идентификации языка запроса независимо от контекста.

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

    Этот патент подчеркивает, что идентификация языка является сложным, многофакторным и вероятностным процессом, лежащим в основе Query Understanding. Для международного SEO это означает, что стратегия должна быть гибкой и учитывать реальное поведение пользователей, а не только технические настройки. Система Google способна понять язык пользователя независимо от его интерфейса или истории, что требует от SEO-специалистов высокого качества и четкости языковых сигналов на сайте.

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

    Сценарий 1: Многоязычный пользователь (переключение языка)

    1. Контекст: Пользователь находится в Швейцарии, интерфейс на немецком языке. История поиска преимущественно на немецком (Исторически связанный язык = Немецкий).
    2. Запрос: Пользователь вводит «voiture occasion» (франц. «подержанный автомобиль»).
    3. Анализ системы:
      • Classifier Vector (Контекст): Высокая вероятность немецкого.
      • Score Vectors (Термины): «voiture» и «occasion» имеют высокую частотность во французском корпусе и низкую в немецком.
      • Комбинирование: Совместная вероятность для французского языка значительно превышает вероятность для немецкого, перевешивая контекстуальный сигнал.
    4. Результат: Система идентифицирует язык запроса как французский (отличающийся от исторического) и предоставляет результаты из французского индекса.

    Сценарий 2: Разрешение неоднозначности с помощью пар слов (N-grams)

    1. Контекст: Пользователь использует интерфейс на испанском языке (google.es).
    2. Запрос: «Palo Alto».
    3. Анализ системы:
      • Classifier Vector: Высокая вероятность испанского.
      • Score Vectors (Отдельные слова): «Palo» и «Alto» существуют и в испанском, и в английском.
      • Анализ пар слов: Система распознает «Palo Alto» как частотную пару. Парный Score Vector показывает, что эта комбинация значительно чаще встречается в английском корпусе, чем в испанском.
    4. Результат: Несмотря на испанский интерфейс, запрос классифицируется как английский благодаря анализу пары слов.

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

    Как Google определяет язык запроса, если в нем смешаны слова из разных языков?

    Система использует вероятностный подход. Для каждого слова генерируется Score Vector, указывающий вероятность его принадлежности к разным языкам. Затем эти векторы перемножаются между собой и с Classifier Vector (учитывающим контекст). Итоговый результат покажет язык, который является наиболее вероятным для всей комбинации слов и контекста.

    Влияет ли язык интерфейса (например, google.com vs google.de) на определение языка запроса?

    Да, очень сильно. Язык интерфейса используется как ключевой сигнал через Interface Classifier. Это создает априорную вероятность (например, запрос на google.de скорее всего немецкий). Однако, если анализ слов запроса (Score Vectors) дает сильный сигнал о другом языке, он может перевесить влияние интерфейса.

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

    Для таких слов Score Vector покажет вероятности для нескольких языков. В этом случае решающую роль играют другие слова в запросе и контекст (интерфейс, история пользователя). Также патент упоминает возможность анализа пар слов (N-grams), которые часто менее двусмысленны, чем отдельные слова.

    Что такое «язык, исторически ассоциированный с пользователем»?

    Это язык, который система считает основным для пользователя на основе его предыдущей активности. Согласно Claim 1 патента B2, он определяется, например, по языкам интерфейсов, через которые пользователь отправлял предыдущие запросы, или по языкам выбранных ранее результатов. Это используется как один из контекстуальных сигналов.

    Как обучается классификатор интерфейса (Interface Classifier)?

    Он обучается офлайн на основе анализа Query Logs. Система анализирует, на каких языках пользователи вводят запросы через определенный интерфейс и результаты на каком языке они выбирают. Этот процесс включает автоматическую классификацию (например, Naïve Bayes) и последующую ручную корректировку (тюнинг) экспертами для повышения точности.

    Что такое сглаживание (Smoothing) и зачем оно нужно?

    Smoothing – это статистическая техника для корректировки вероятностей. Она нужна, чтобы избежать присвоения нулевой вероятности языку, если слово редко встречается в корпусе, и для уменьшения шума. Это делает систему более устойчивой. В патенте приводится формула P(L|t)=(n+s)/(k*s+N).

    Почему в патенте B2 акцент сделан на голосовых запросах (spoken query)?

    Голосовой ввод часто используется в ситуациях, когда пользователи могут динамично переключаться между языками. Claims защищают механизм, который точно определяет язык голосового запроса, особенно когда он отличается от основного языка пользователя, что критически важно для корректной работы голосовых ассистентов и поиска.

    Как этот патент влияет на международное SEO?

    Он подчеркивает, что Google определяет язык на уровне запроса, а не только на уровне настроек пользователя или домена. Это требует создания качественного контента на всех целевых языках и обеспечения четких языковых сигналов на сайте (включая Hreflang), чтобы Google мог корректно построить свой Training Corpus и интерпретировать запросы.

    Стоит ли смешивать языки на странице, например, добавлять английские термины в русский текст?

    Общепринятые заимствования допустимы, если они естественны для языка, так как система учитывает их частотность в корпусе. Однако значительное смешивание языков не рекомендуется, так как это может затруднить определение основного языка страницы для Google, что ухудшит данные в Training Corpus и может повлиять на ранжирование.

    Влияет ли точность определения языка документа при индексировании на работу этого алгоритма?

    Да, очень сильно. Алгоритм полагается на Training Corpus, где язык документов должен быть точно определен для расчета корректных частот слов (Score Vectors). Если в корпусе много ошибок классификации языка документов, точность идентификации языка запросов снизится.

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

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