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

    Как Яндекс оптимизирует скорость обработки нейросетевых моделей (BERT/YATI) путем интеллектуального пакетирования входных данных

    СПОСОБЫ И ЭЛЕКТРОННЫЕ УСТРОЙСТВА ДЛЯ ПАКЕТИРОВАНИЯ ЗАПРОСОВ, ПРЕДНАЗНАЧЕННЫХ ДЛЯ ОБРАБОТКИ ОБРАБАТЫВАЮЩИМ БЛОКОМ (METHODS AND ELECTRONIC DEVICES FOR PACKAGING REQUESTS INTENDED FOR PROCESSING BY PROCESSING UNIT)
    • RU2810916C2
    • Yandex LLC
    • 2023-12-29
    • 2021-10-21
    2023 Индексация Обучение моделей Патенты Яндекс Семантический поиск

    Яндекс оптимизирует выполнение моделей глубокого обучения (используемых в поиске, переводе и т.д.) путем эффективного пакетирования входных данных (например, запросов или текстов документов). Поскольку входные данные имеют переменную длину и должны быть дополнены до одинаковой длины для пакетной обработки, Яндекс использует алгоритм, минимизирующий объем этого дополнения («padding»). Это ускоряет обработку на CPU/GPU.

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

    Описание

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

    Патент решает инфраструктурную задачу повышения эффективности выполнения Глубоких Нейронных Сетей (DNN), таких как Трансформеры (BERT/YATI), LSTM или CNN. Он направлен на уменьшение времени обработки запросов процессором (CPU/GPU) при пакетной обработке входных данных переменной длины (например, текстов или запросов). Проблема заключается в том, что для параллельной обработки все входные данные в пакете должны иметь одинаковую длину, что требует дополнения («padding») коротких запросов пустыми токенами. Это дополнение приводит к неэффективному использованию вычислительных ресурсов. Патент предлагает способ минимизации этого неэффективного расхода. Он не устраняет SEO-манипуляции и не улучшает релевантность поиска напрямую.

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

    Запатентован способ эффективного пакетирования (batching) запросов для обработки DNN. Суть изобретения — в итеративном алгоритме формирования пакета, который на каждом шаге выбирает следующий запрос для добавления таким образом, чтобы минимизировать «стоимость» (Cost). Стоимость определяется как количество дополнительных токенов (padding), необходимых для выравнивания длин всех запросов в пакете.

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

    Система группирует входные данные (например, пользовательские запросы или документы, обрабатываемые моделями типа YATI/BERT). Она итеративно формирует пакет. На каждом шаге система сравнивает два запроса-кандидата из очереди. Для каждого кандидата рассчитывается, сколько нового «паддинга» потребуется, если его добавить в текущий пакет (либо для дополнения самого кандидата, либо для дополнения уже существующих в пакете запросов). Система выбирает того кандидата, который требует наименьшего количества новых дополнительных токенов, оптимизируя плотность пакета и минимизируя бесполезные вычисления.

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

    Высокая. Эффективное выполнение больших языковых моделей (например, Трансформеров типа YATI) является критически важной задачей для инфраструктуры современного поиска. Оптимизация загрузки GPU/CPU и ускорение обработки нейронных сетей остаются ключевыми инженерными приоритетами.

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

    Влияние на SEO минимальное (1/10). Это инфраструктурный патент, фокусирующийся исключительно на вычислительной эффективности (скорости и оптимизации ресурсов) внутренних систем Яндекса. Он не описывает механизмы ранжирования, оценки релевантности или качества контента. Следовательно, он не предлагает прямых практических инсайтов для изменения SEO-стратегий.

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

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

    Патент описывает внутренние процессы Яндекс без прямых рекомендаций для SEO. Он дает понимание инфраструктурных оптимизаций, применяемых при работе нейронных сетей.

    Глубокая Нейронная Сеть (DNN)
    Искусственная нейронная сеть с несколькими слоями. В патенте упоминаются различные архитектуры: Трансформеры (Transformer), BERT (используется в поиске), LSTM, CNN. В контексте Яндекса это, вероятно, включает модели типа YATI.
    Запрос (Request)
    Входные данные для DNN, представляющие собой последовательность токенов. Запрос является неделимым (токены должны обрабатываться совместно). В контексте поиска это может быть пользовательский запрос или текст документа.
    Токен (Token)
    Единица обработки для DNN. В зависимости от применения, это может быть часть слова, слово, временной участок спектрограммы (для речи) или кадр изображения (для видео).
    Длина Запроса (Request Length)
    Количество токенов в запросе. Ключевой параметр, используемый в алгоритме, так как запросы имеют переменную длину.
    Пакет (Batch)
    Группа запросов, которые обрабатываются обрабатывающим блоком одновременно (параллельно). Все запросы в пакете должны иметь одинаковую длину.
    Дополнительные токены (Additional Tokens / Padding)
    Пустые токены, добавляемые к запросам в пакете для выравнивания их длины до максимальной длины в этом пакете.
    Стоимость (Cost)
    Метрика, используемая для оптимизации пакетирования. Указывает на количество дополнительных токенов (паддинга), которые необходимо добавить в пакет при включении нового запроса-кандидата.
    Обрабатывающий блок (Processing Unit)
    Аппаратный элемент, выполняющий операции DNN. Упоминаются CPU (Центральный процессор) и GPU (Графический процессор).

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

    Ядро изобретения заключается в специфическом способе расчета «стоимости» добавления запроса в пакет и использовании этого расчета для принятия решения.

    Claim 1 (Независимый пункт): Описывает основной итеративный процесс пакетирования.

    1. Система получает очередь запросов (переменной длины, неделимых).
    2. Выполняется текущая итерация для пакета (который уже содержит хотя бы один запрос).
    3. Определяется первое значение стоимости для добавления Кандидата 1. Стоимость = количество необходимых дополнительных токенов для выравнивания длин.
    4. Определяется второе значение стоимости для добавления Кандидата 2.
    5. Система селективно добавляет в пакет целевой запрос — того кандидата, который имеет наименьшее значение стоимости.

    Claim 2 (Зависимый): Определяет состояние пакета.

    Пакет на текущей итерации имеет Текущую Длину Пакета (L_max). Она соответствует наибольшей длине запроса из всех, уже добавленных в пакет.

    Claim 3 (Зависимый): Описывает расчет стоимости для «короткого» кандидата.

    Если длина Кандидата 1 меньше, чем Текущая Длина Пакета (L_max), то Стоимость 1 равна разности между L_max и длиной Кандидата 1. (То есть, стоимость равна паддингу, необходимому только для этого нового запроса).

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

    Если длина Кандидата 1 больше, чем Текущая Длина Пакета (L_max), то Стоимость 1 равна разности между длиной Кандидата 1 и L_max, умноженной на Текущее Количество Запросов в Пакете (B). (То есть, стоимость равна паддингу, который придется добавить ко всем уже существующим в пакете запросам).

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

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

    INDEXING – Индексирование и извлечение признаков
    Применяется при обработке текстов документов с использованием DNN (например, BERT/YATI) для генерации эмбеддингов или извлечения сущностей. Алгоритм пакетирует документы для ускорения этого процесса.

    QUERY PROCESSING – Понимание Запросов
    Применяется при обработке входящих пользовательских запросов с помощью DNN для понимания интента, классификации и генерации векторных представлений запроса. Алгоритм пакетирует пользовательские запросы для эффективной обработки.

    RANKING – Ранжирование (Уровни L3/L4)
    Если тяжелые DNN модели используются в онлайн-режиме во время поздних стадий ранжирования для оценки документов относительно запроса, этот алгоритм используется для пакетирования пар (запрос, документ) перед подачей в модель.

    Взаимодействие и Потоки Данных:

    • Алгоритм располагается между очередью запросов и Обрабатывающим блоком (CPU/GPU), на котором выполняется DNN.
    • На входе: Очередь запросов (последовательности токенов переменной длины).
    • На выходе: Сформированные пакеты запросов (последовательности фиксированной длины, дополненные паддингом), готовые для параллельной обработки.

    На что влияет

    Алгоритм влияет исключительно на скорость и эффективность (утилизацию ресурсов) обработки данных. Он универсален и применяется ко всем типам контента, запросов, форматов и тематик, которые обрабатываются с помощью DNN в Яндексе. Патент указывает, что он применим не только в поиске, но и в переводе, распознавании и синтезе речи, компьютерном зрении.

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

    Алгоритм применяется непрерывно, когда система Яндекс выполняет модель DNN (например, Transformer, YATI/BERT, CNN, LSTM) и необходимо эффективно обработать множество входных данных в параллельном режиме на GPU или CPU.

    Условия останова (Прекращение формирования пакета): Итеративное добавление запросов прекращается, если выполняется условие останова. В патенте упоминаются следующие варианты:

    • Выполнено заранее заданное количество итераций (достигнут максимальный размер пакета).
    • Текущая длина пакета достигла заранее заданной максимальной длины.
    • Текущее общее количество дополнительных токенов (паддинга) в пакете достигло заранее заданного порога.

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

    Процесс формирования пакета запросов для оптимизации обработки DNN.

    1. Инициализация пакета: Система получает очередь запросов. Выбирается первый запрос для начала нового пакета (например, самый старый или самый короткий запрос). Инициализируются текущие параметры пакета: Текущая Длина Пакета (L_max) и Текущий Размер Пакета (B).
    2. Выбор кандидатов: Идентифицируются следующие два запроса-кандидата из очереди (Кандидат 1 и Кандидат 2) с длинами L1 и L2.
    3. Расчет стоимости (Кандидат 1): Система рассчитывает стоимость (количество необходимого паддинга) добавления Кандидата 1:
      • Если L1 < L_max: Стоимость = L_max — L1.
      • Если L1 > L_max: Стоимость = (L1 — L_max) * B.
      • Если L1 = L_max: Стоимость = 0.
    4. Расчет стоимости (Кандидат 2): Аналогично рассчитывается стоимость добавления Кандидата 2.
    5. Сравнение и Добавление: Система выбирает кандидата с минимальной стоимостью и добавляет его в пакет.
    6. Применение Паддинга: К запросам в пакете (либо к новому запросу, либо к существующим) добавляются необходимые пустые токены для выравнивания их длины до нового значения L_max.
    7. Обновление Состояния: Параметры L_max и B обновляются с учетом добавленного запроса.
    8. Проверка Условий Остановки: Система проверяет, достигнуты ли условия останова (например, максимальный размер пакета).
    9. Итерация или Завершение: Если условия не достигнуты, процесс возвращается к шагу 2 (следующая итерация). Если достигнуты, формирование пакета завершается, и он отправляется на обработку в Обрабатывающий блок.

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

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

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

    • Контентные/Структурные факторы: Основными данными являются сами Запросы, представленные как последовательности Токенов.
    • Технические факторы: Критически важным фактором, используемым для принятия решений, является Длина Запроса (количество токенов в нем).

    Важно отметить, что данный конкретный алгоритм НЕ использует ссылочные, поведенческие, временные, географические или иные SEO-факторы для принятия решения о пакетировании.

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

    Система вычисляет одну ключевую метрику для оптимизации.

    • Метрика: Стоимость (Cost). Определяется как количество дополнительных токенов (паддинга), которое требуется добавить при включении кандидата.

    Формулы расчета:

    Расчет стоимости для запроса-кандидата с длиной $L_i$ при текущей длине пакета $L_{max}$ и текущем размере пакета $B$:

    1. Если длина кандидата меньше текущей длины пакета ($L_i < L_{max}$):

    $$Cost = L_{max} — L_i$$

    2. Если длина кандидата больше текущей длины пакета ($L_i > L_{max}$):

    $$Cost = (L_i — L_{max}) * B$$

    Методология: Алгоритм использует жадный (greedy) подход, минимизируя стоимость на каждой отдельной итерации путем сравнения двух кандидатов.

    Выводы

    1. Фокус на инфраструктуре, а не на SEO: Патент описывает исключительно внутренние процессы Яндекса по оптимизации вычислительной инфраструктуры. Он не содержит прямых рекомендаций или выводов для SEO-стратегии.
    2. Эффективность выполнения DNN — приоритет: Патент подчеркивает важность скорости и эффективности выполнения моделей глубокого обучения (таких как BERT/YATI, Трансформеры) для Яндекса. Сложные модели требуют значительных ресурсов, и их оптимизация критична.
    3. Минимизация паддинга: Ключевая инновация — это алгоритм пакетирования входных данных переменной длины, который минимизирует накладные расходы на «паддинг» (добавление пустых токенов). Это позволяет более плотно загружать GPU/CPU и сокращать время обработки.
    4. Ускорение процессов поиска: Эта оптимизация косвенно влияет на скорость работы поисковой системы в целом: ускоряется индексация (обработка документов нейросетями), ускоряется обработка запросов и, потенциально, ускоряется ранжирование за счет более эффективного выполнения базовых DNN-операций.
    5. Универсальность применения: Описанный метод применим ко всем DNN, которые использует Яндекс, включая поиск, перевод, обработку речи и изображений.

    Практика

    ВАЖНО: Патент является чисто инфраструктурным и не дает практических выводов для SEO-специалистов по изменению стратегий продвижения.

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

    Информация в патенте не предоставляет данных для формирования лучших практик SEO. Стандартные практики по созданию качественного контента, улучшению технических характеристик сайта и наращиванию авторитетности остаются актуальными, но они никак не связаны с механизмом, описанным в данном документе.

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

    Патент не направлен на борьбу с какими-либо SEO-манипуляциями и не делает какие-либо существующие SEO-тактики неэффективными или опасными. Он не описывает алгоритмов пессимизации.

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

    Стратегическое значение патента для SEO заключается только в понимании сложности инфраструктуры Яндекса. Он подтверждает масштаб использования моделей глубокого обучения (DNN) в поиске и тот факт, что Яндекс вкладывает значительные инженерные усилия в оптимизацию их выполнения. Это позволяет использовать более сложные и тяжелые модели (например, YATI) в реальном времени. Однако, патент не меняет понимание приоритетов Яндекса в отношении релевантности, качества или E-E-A-T.

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

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

    Сценарий: Оптимизация обработки запросов моделью YATI

    Текущее состояние пакета: 4 запроса (B=4). Максимальная длина 10 токенов (L_max=10).

    Кандидаты из очереди:

    • Кандидат А: Запрос длиной 5 токенов (L_A=5).
    • Кандидат Б: Запрос длиной 12 токенов (L_B=12).

    Расчет стоимости:

    1. Стоимость А (Короткий запрос): L_A < L_max. Стоимость = L_max — L_A = 10 — 5 = 5 дополнительных токенов (нужно дополнить только запрос А).
    2. Стоимость Б (Длинный запрос): L_B > L_max. Стоимость = (L_B — L_max) * B = (12 — 10) * 4 = 8 дополнительных токенов (нужно дополнить все 4 существующих запроса на 2 токена каждый).

    Результат: Система выберет Кандидата А, так как его стоимость (5) меньше стоимости Кандидата Б (8). Это минимизирует общее количество бесполезных вычислений (обработки пустых токенов).

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

    Влияет ли этот патент на алгоритмы ранжирования?

    Нет, напрямую не влияет. Патент описывает способ оптимизации инфраструктуры для выполнения моделей глубокого обучения (DNN), которые используются в ранжировании (например, YATI/BERT). Он делает выполнение этих моделей быстрее и эффективнее, но не меняет логику того, как эти модели оценивают релевантность или качество документа.

    Что такое «Запрос» и «Токен» в контексте этого патента?

    «Токен» — это базовая единица данных, которую обрабатывает нейронная сеть. В обработке текста это может быть слово или часть слова. «Запрос» — это полная последовательность токенов, подаваемая на вход нейросети (например, целое предложение или абзац текста документа). Ключевой момент патента в том, что эти запросы имеют разную длину.

    Влияет ли длина моего контента или Title на работу этого алгоритма?

    Да, длина вашего контента (в токенах) является входным параметром для этого алгоритма, когда Яндекс обрабатывает вашу страницу с помощью DNN. Алгоритм будет группировать ваш контент с другим контентом схожей длины для эффективной обработки. Однако это не означает, что вам следует менять стратегию оптимизации длины контента — вы не можете контролировать, с чем Яндекс сгруппирует ваш документ.

    Что такое «паддинг» (дополнительные токены) и почему это считается «стоимостью»?

    Для параллельной обработки на GPU все запросы в пакете должны иметь одинаковую длину. «Паддинг» — это пустые токены, добавляемые к коротким запросам, чтобы уравнять их длину с самым длинным запросом в пакете. Это считается «стоимостью», потому что вычислительные ресурсы (GPU/CPU циклы) тратятся на обработку этих пустых токенов, что является бесполезной работой.

    К каким моделям Яндекса применим этот патент?

    Патент применим ко всем типам глубоких нейронных сетей (DNN), которые обрабатывают данные переменной длины. В тексте явно упоминаются Трансформеры, BERT (и его аналоги, такие как YATI), CNN и LSTM. Это охватывает модели, используемые в поиске, обработке естественного языка, переводе, а также обработке речи и изображений.

    Почему алгоритм сравнивает только два кандидата за раз?

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

    Если благодаря этой оптимизации мои страницы индексируются быстрее, помогает ли это моему SEO?

    Ускорение индексации всегда полезно, особенно для новостного контента. Данный патент способствует общему ускорению процессов индексации в Яндексе за счет более эффективного использования инфраструктуры. Однако он не меняет то, как именно оценивается ваша страница (ее качество и релевантность), а только скорость этой оценки.

    Связан ли этот алгоритм с оптимизацией скорости загрузки сайта (Page Speed)?

    Нет, этот патент не имеет отношения к скорости загрузки сайта у пользователя или к метрикам Core Web Vitals. Он касается исключительно скорости внутренних вычислительных процессов на серверах Яндекса при обработке данных нейронными сетями.

    Определяет ли этот алгоритм, какие запросы или документы более важны?

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

    Каков главный вывод из этого патента для Senior SEO-специалиста?

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

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

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