Learning two-tower models

Wprowadzenie

Learning two-tower models (Uczenie modeli dwuwieżowych) — Modele dwuwieżowe stanowią kluczową architekturę w dziedzinie sztucznej inteligencji, szczególnie w systemach rekomendacyjnych, wyszukiwania informacji oraz personalizacji treści. Ich głównym zadaniem jest efektywne mapowanie dwóch różnych typów encji, takich jak zapytania użytkowników i dokumenty, czy użytkownicy i przedmioty, do wspólnej przestrzeni wektorowej. Dzięki temu możliwe jest szybkie i precyzyjne określenie podobieństwa między nimi. Architektura ta pozwala na decoupling obliczeń, co jest niezwykle korzystne w przypadku bardzo dużych zbiorów danych. Jedna wieża przetwarza jeden typ encji, druga wieża – drugi. Następnie wektory wyjściowe z obu wież są porównywane, zazwyczaj za pomocą miary podobieństwa kosinusowego, aby ocenić ich zgodność. Proces uczenia tych modeli ma na celu zoptymalizowanie tej przestrzeni wektorowej, aby podobne encje znajdowały się blisko siebie, a niepodobne daleko.

Jak działają Jak działają modele dwuwieżowe?

Modele dwuwieżowe charakteryzują się dwoma niezależnymi sieciami neuronowymi, zwanymi wieżami, które przetwarzają dwa różne typy danych wejściowych. Typowym przykładem jest wieża zapytania (query tower) i wieża dokumentu/przedmiotu (document/item tower). Każda wieża, złożona z warstw gęstych, konwolucyjnych lub transformatorowych, przekształca swoje wejście w gęsty wektor (embedding) o stałej długości. Te wektory reprezentują encje w przestrzeni latentnej. Kluczowym etapem jest faza szkolenia, podczas której model uczy się generować takie wektory, aby pary podobnych encji (np. zapytanie i odpowiadający mu dokument, użytkownik i zakupiony przedmiot) miały wektory blisko siebie w przestrzeni wektorowej. Odbywa się to poprzez minimalizację funkcji straty, która zazwyczaj promuje bliskość wektorów pozytywnych par i odległość wektorów negatywnych par. Popularne funkcje straty to triplet loss, negative sampling loss czy contrastive loss. Po wytrenowaniu, wieże mogą działać niezależnie. W przypadku wyszukiwania, wieża dokumentu może zostać użyta do wstępnego obliczenia i indeksowania wszystkich wektorów dokumentów offline. Następnie, gdy pojawia się zapytanie użytkownika, jego wektor jest obliczany przez wieżę zapytania, a następnie porównywany z już istniejącymi wektorami dokumentów w celu szybkiego znalezienia najbardziej trafnych wyników.

Główne zalety i charakterystyka

Jedną z głównych zalet modeli dwuwieżowych jest ich niezwykła efektywność obliczeniowa w fazie wnioskowania, szczególnie w scenariuszach z miliardami potencjalnych przedmiotów. Dzięki wstępnemu obliczeniu i indeksowaniu wektorów wszystkich przedmiotów, zapytania w czasie rzeczywistym wymagają jedynie obliczenia wektora zapytania i szybkiego wyszukiwania najbliższych sąsiadów w przestrzeni wektorowej. To znacznie przyspiesza proces i pozwala na obsługę ogromnej liczby zapytań przy niskim opóźnieniu. Inną istotną korzyścią jest możliwość skalowania i elastyczność. Różne wieże mogą być optymalizowane pod kątem różnych typów danych wejściowych, a ich architektura może być dostosowana do specyfiki domeny. Ponadto, wygenerowane wektory encji są uniwersalne i mogą być wykorzystywane do różnych zadań, takich jak rekomendacje, personalizacja, a nawet grupowanie podobnych treści, co zwiększa ich użyteczność poza pierwotnym celem.

Zastosowania w praktyce

  • Systemy rekomendacyjne dla e-commerce (np. Amazon, Netflix)
  • Wyszukiwarki internetowe i korporacyjne (np. Google Search, Elastic Search)
  • Personalizacja treści w mediach społecznościowych (np. Twitter, TikTok)
  • Dopasowywanie użytkowników i ofert w aplikacjach randkowych (np. Tinder, Bumble)
  • Wyszukiwanie podobnych obrazów lub produktów w katalogach wizualnych
  • Systemy polecania muzyki i podcastów

Porównanie z innymi strukturami danych

W porównaniu do tradycyjnych modeli dopasowania, które często wymagają złożonych obliczeń interakcji między wszystkimi cechami zapytania i przedmiotu w czasie rzeczywistym (np. deep factorization machines), modele dwuwieżowe oferują znaczną przewagę w szybkości. Modele te, choć potężne, mogą być zbyt kosztowne obliczeniowo dla scenariuszy z bardzo dużą liczbą kandydatów. Modele dwuwieżowe skutecznie oddzielają procesy generowania reprezentacji, co umożliwia wstępne obliczenia. W stosunku do prostszych metod, takich jak filtrowanie kolaboracyjne oparte na macierzach, modele dwuwieżowe są w stanie uchwycić bardziej złożone i nieliniowe zależności między encjami. Mogą również efektywniej radzić sobie z problemem zimnego startu dla nowych użytkowników lub przedmiotów, wykorzystując ich cechy (metadata) do generowania sensownych wektorów, nawet bez historii interakcji. Oferują one również większą elastyczność w dołączaniu różnorodnych cech wejściowych, w tym tekstu, obrazów i danych strukturalnych.

Najlepsze praktyki (2026)

  • Zbalansowane próbkowanie negatywnych przykładów w celu uniknięcia trywialnych rozwiązań.
  • Wykorzystanie hard negatives, czyli przykładów negatywnych, które są podobne do pozytywnych, aby zwiększyć trudność uczenia.
  • Regularne aktualizowanie wektorów przedmiotów offline, aby uwzględniać nowe dane i zmiany w preferencjach użytkowników.
  • Stosowanie normalizacji wektorów (np. do długości jednostkowej) przed obliczeniem podobieństwa kosinusowego.
  • Użycie algorytmów wyszukiwania najbliższych sąsiadów (ANN) takich jak FAISS czy ScaNN dla efektywnego wyszukiwania w przestrzeni wektorowej.

Typowe błędy i pułapki

  • Próbkowanie negatywnych przykładów zbyt losowo: Może prowadzić do problemu easy negatives, gdzie model uczy się odróżniać bardzo różne od siebie encje, zamiast subtelnych różnic.
  • Niewystarczające uwzględnienie kontekstu: Modele dwuwieżowe mogą mieć trudności z uchwyceniem kontekstowych preferencji, jeśli kontekst nie jest odpowiednio zakodowany w wieżach.
  • Zbyt rzadkie aktualizowanie indeksu wektorów: Może prowadzić do serwowania nieaktualnych rekomendacji lub wyników wyszukiwania, zwłaszcza w dynamicznych środowiskach.
  • Niezbalansowane dane treningowe: Skutkuje faworyzowaniem popularnych przedmiotów i gorszym performance'em dla niszowych treści.
  • Ignorowanie personalizacji dla wieży itemów: W niektórych scenariuszach wieża itemów może również korzystać z kontekstu użytkownika, aby generować bardziej spersonalizowane wektory przedmiotów.