Двухбашенные нейронные сети

Материал из MachineLearning.

Перейти к: навигация, поиск
Статья написана с использованием LLM DeepSeek-V3 и проверена участником М. Мишин 9:48, 30 июня 2026 (MSD)
Промпт приводится полностью в Обсуждение:Двухбашенные нейронные сети


Содержание

Определение и основная идея

Двухбашенная нейронная сеть (англ. two‑tower neural network, также dual‑encoder) — это архитектура глубокого обучения, состоящая из двух независимых энкодеров («башен»), каждый из которых преобразует объекты своего типа (например, пользователей и элементы) в общее векторное пространство фиксированной размерности. Релевантность пары объектов вычисляется как косинусная близость или скалярное произведение их эмбеддингов.

Ключевая идея — разделение кодирования: эмбеддинги элементов вычисляются один раз (офлайн) и индексируются, а на запрос пользователя вычисляется только его эмбеддинг, после чего выполняется быстрый поиск ближайших соседей (ANN). Благодаря этому двухбашенная архитектура стала стандартом индустрии для этапа первичного ранжирования (pre‑ranking) в системах рекомендаций и информационного поиска, где требуется из миллионов или миллиардов объектов за миллисекунды отобрать несколько сотен кандидатов.

Мотивация и место в пайплайне рекомендательной системы

Современные рекомендательные системы строятся как многостадийная воронка: от широкого поиска (retrieval) до точного ранжирования (ranking). Двухбашенная модель доминирует на самом первом этапе — первичном ранжировании (также называют pre‑ranking или candidate generation). Здесь из всего каталога (до миллиардов единиц) нужно сформировать кандидатный набор размером в сотни‑тысячи объектов для последующей более точной, но и более затратной обработки.

Если использовать однобашенную (кросс‑энкодерную) модель, где релевантность вычисляется совместной обработкой пары (пользователь, элемент) через одну сеть, то для каждого из миллионов элементов пришлось бы выполнять отдельный прямой проход — это вычислительно невозможно при требуемой латентности (<10 мс). Двухбашенная архитектура решает эту проблему за счёт предварительного вычисления эмбеддингов всех элементов и использования приближённого поиска ближайших соседей. Инженерный компромисс заключается в том, что мы жертвуем частью точности (из‑за отсутствия взаимодействия признаков на этапе кодирования) ради скорости, что оказывается приемлемым на первом этапе фильтрации.

Архитектурное устройство

Формально двухбашенная модель задаётся двумя параметризованными функциями отображения:

f_q: \mathcal{X} \rightarrow \mathbb{R}^d, \quad f_i: \mathcal{Y} \rightarrow \mathbb{R}^d,

где \mathcal{X} — пространство признаков пользователя/запроса, \mathcal{Y} — пространство признаков элемента/документа, d — размерность общего эмбеддинг‑пространства (обычно 128–256). Релевантность между пользователем u и элементом v вычисляется как:

\text{sim}(u, v) = \frac{f_q(u)^\top f_i(v)}{\|f_q(u)\| \|f_i(v)\|}

(косинусная близость) или просто скалярное произведение, если эмбеддинги нормированы.

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

Классификация архитектурных вариантов

По симметричности башен

  • Симметричный дуальный энкодер (Symmetric Dual Encoder, SDE) — башни разделяют параметры (или имеют идентичную структуру). Часто называется «сиамской» сетью. Применяется, когда пользователи и элементы имеют схожую природу (например, поиск похожих документов).
  • Асимметричный дуальный энкодер (Asymmetric Dual Encoder, ADE) — башни имеют различную архитектуру и непересекающиеся параметры. Это наиболее распространённый вариант в рекомендательных системах из‑за принципиально разной природы признаков.

По использованию эмбеддингов

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

По типу энкодеров внутри башен

  • MLP‑башни — классический вариант (восходит к DSSM, 2013). Простые, быстрые, хорошо масштабируются.
  • Трансформерные энкодеры — обрабатывают последовательности (историю взаимодействий, текст). Дают лучшее качество, но дороже в инференсе.
  • GNN‑усиленные башни — используют графовые свёртки на графе пользователь‑элементных взаимодействий, что позволяет учитывать структуру коллаборативной фильтрации.
  • Гибридные подходы — например, модель FIT (Fully Interacted Two‑tower) добавляет раннее взаимодействие через мета‑запросы и лёгкий скорер для сохранения скорости.

Обучение двухбашенных моделей

Функция потерь

Стандартным является контрастивное обучение с использованием sampled softmax над каталогом:

\mathcal{L} = -\frac{1}{|\mathcal{P}|} \sum_{(q, i^+) \in \mathcal{P}} \log \frac{\exp(\text{sim}(q, i^+)/\tau)}{\sum_{i^- \in \mathcal{N}(q)} \exp(\text{sim}(q, i^-)/\tau)},

где \mathcal{P} — множество положительных пар (взаимодействие), \mathcal{N}(q) — множество отрицательных элементов для запроса q, \tau — температурный параметр. Интуитивно: эмбеддинги взаимодействовавших пар сближаются, случайных — раздвигаются.

Негативный сэмплинг

Вычислительная проблема: полный softmax по миллиардам элементов невозможен. Основные подходы:

  • In‑batch негативы — негативными считаются все остальные элементы текущего батча. Просто и эффективно, но вносит смещение популярности.
  • LogQ‑коррекция — корректирует логиты вычитанием логарифма вероятности появления элемента в батче. Однако, как показано в недавних работах, стандартная коррекция не полностью устраняет смещение, поскольку положительный элемент присутствует с вероятностью 1.
  • Hard негативы — семплирование элементов, которые модель ошибочно считает релевантными. Улучшает качество, но требует дополнительных вычислений.
  • CBNS (Cross‑Batch Negative Sampling) — использует кэшированные эмбеддинги из предыдущих батчей для увеличения пула негативов.

Борьба со смещением

Помимо смещения популярности, возникают смещение позиции (элементы выше в выдаче получают больше кликов) и смещение обратной связи (пользователь взаимодействует только с показанным). Решения: совместное обучение башни релевантности и башни смещения, использование данных A/B‑тестов, коррекционные методы.

Современные вызовы

Масштабирование

При каталоге в миллиарды элементов даже приближённый поиск (ANN) становится нетривиальным. Требуется тщательный выбор индекса (HNSW, IVF, SCANN) с балансом точности, памяти и скорости. Практика показывает, что при правильной настройке двухбашенные системы обеспечивают субмиллисекундную задержку.

Онлайновое обновление эмбеддингов

В динамических системах предпочтения и каталог меняются непрерывно. Периодическое переобучение — стандарт, но есть и инкрементальные подходы: пересчёт эмбеддингов только для изменившихся элементов или дообучение модели на новых данных.

Баланс качества и скорости

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

Актуальные научные подходы

Улучшение взаимодействия между башнями

Классическая архитектура критикуется за отсутствие взаимодействия признаков до вычисления скалярного произведения. Современные исследования предлагают:

  • FIT (Fully Interacted Two‑tower) — вводит обучаемую матрицу мета‑элементов для раннего взаимодействия и лёгкий скорер для позднего.
  • CS3 (Capability Synergy) — цикл‑адаптивная структура с кросс‑башенной синхронизацией и каскадным шерингом знаний для онлайн‑обучения.

Улучшение контрастивного обучения

  • SamToNe (Same Tower Negatives) — добавляет в негативы объекты из той же башни, что улучшает выравнивание эмбеддинг‑пространств двух энкодеров.

Трансформеры и GNN в башнях

Использование предобученных трансформеров (BERT) внутри башен позволяет извлекать семантику из текстов (например, SSDTR). GNN‑усиление учитывает структуру коллаборативной фильтрации и улучшает качество.

Заключение

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

См. также

Литература

  • Huang P.‑S., He X., Gao J., Deng L., Acero A., Heck L. Learning Deep Structured Semantic Models for Web Search using Clickthrough Data // Proceedings of the 22nd ACM International Conference on Information & Knowledge Management (CIKM), 2013. — фундаментальная работа, вводящая архитектуру DSSM (Deep Structured Semantic Model), которая является прямым предшественником и первой реализацией двухбашенных сетей для задачи информационного поиска. https://www.microsoft.com/en-us/research/publication/learning-deep-structured-semantic-models-for-web-search-using-clickthrough-data/
  • Su L., et al. Beyond Two‑Tower Matching: Learning Sparse Retrievable Cross‑Interactions for Recommendation // Proceedings of the 46th International ACM SIGIR Conference on Research and Development in Information Retrieval (SIGIR ’23), 2023. https://arxiv.org/abs/2311.18213 — работа, предлагающая новый подход SparCode, который выходит за рамки классической двухбашенной архитектуры, поддерживая сложные кросс-взаимодействия между признаками запроса и элемента при сохранении эффективности поиска.
  • Khrylchenko K., Baikalov V., Makeev S., Matveev A., Liamaev S. Correcting the LogQ Correction: Revisiting Sampled Softmax for Large‑Scale Retrieval // Proceedings of the 19th ACM Conference on Recommender Systems (RecSys ’25), 2025. https://arxiv.org/abs/2507.09331 — современная работа, критически пересматривающая стандартную LogQ‑коррекцию и предлагающая уточнённую формулу для более эффективной борьбы со смещением при обучении двухбашенных моделей.
  • Xiong C., Yu X., Xu W., Cheng L., Yuan C., Mo L. A Learnable Fully Interacted Two‑Tower Model for Pre‑Ranking System // Proceedings of the 48th International ACM SIGIR Conference on Research and Development in Information Retrieval (SIGIR ’25), 2025. https://arxiv.org/abs/2509.12948 — предлагает архитектуру FIT (Fully Interacted Two‑tower), решающую ключевую проблему классических двухбашенных моделей — отсутствие взаимодействия между башнями — при сохранении эффективности инференса.
  • Fey M., et al. ContextGNN: Beyond Two‑Tower Recommendation Systems // arXiv preprint arXiv:2411.19513, 2024. https://arxiv.org/abs/2411.19513 — анализирует ограничения двухбашенных моделей (парно-агностическое представление пользователей и элементов) и предлагает альтернативу на основе графовых нейронных сетей, которая адаптируется к различным характеристикам данных и превосходит существующие методы.
  • Wang Y., Xiong F., Han Z., et al. Unleashing the Potential of Two‑Tower Models: Diffusion‑Based Cross‑Interaction for Large‑Scale Matching // Proceedings of the ACM Web Conference 2025 (WWW ’25), 2025. https://arxiv.org/abs/2502.20687 — исследует применение диффузионных моделей для кросс‑взаимодействия между башнями, показывая значительный прирост качества на этапе matching.

Категории

Личные инструменты