Two-Tower Model

Wprowadzenie

Two-Tower Model (model dwuwieżowy) — Ta architektura uczenia maszynowego jest powszechnie stosowana w systemach rekomendacyjnych oraz w wyszukiwaniu informacji. Składa się z dwóch niezależnych sieci neuronowych, zwanych wieżami, które przetwarzają dwa różne typy danych wejściowych, generując dla nich wektorowe reprezentacje, czyli osadzenia. Głównym celem jest nauka osadzeń w taki sposób, aby elementy o podobnym znaczeniu lub kontekście znajdowały się blisko siebie w przestrzeni wektorowej, co umożliwia efektywne wyszukiwanie i dopasowywanie. Model ten jest niezwykle efektywny w scenariuszach, gdzie konieczne jest szybkie i precyzyjne porównywanie dużych zbiorów danych, takich jak miliardy produktów do polecenia użytkownikowi lub setki milionów dokumentów do przeszukania. Jego zdolność do oddzielnego przetwarzania zapytań i przedmiotów, a następnie porównywania ich osadzeń, sprawia, że jest to fundamentalne narzędzie w nowoczesnych systemach AI opartych na wyszukiwaniu podobieństwa.

Jak działają Modele dwuwieżowe?

Działanie modelu dwuwieżowego opiera się na idei uczenia się osadzeń (embeddings) dla dwóch rodzajów obiektów, na przykład zapytań użytkownika i przedmiotów (produktów, filmów, artykułów). Każda z dwóch "wież" to oddzielna sieć neuronowa, która przyjmuje jeden typ danych wejściowych. Pierwsza wieża, często nazywana wieżą zapytania, przetwarza dane wejściowe związane z użytkownikiem lub jego zapytaniem, takie jak historia przeglądania, demografia czy treść wpisanego zapytania, generując wektor osadzenia zapytania. Druga wieża, nazywana wieżą przedmiotu, przetwarza cechy samych przedmiotów, takie jak ich atrybuty, opisy tekstowe czy kategorie. Jej wyjściem jest wektor osadzenia przedmiotu. Obie wieże są trenowane jednocześnie, a ich osadzenia są tak kalibrowane, aby wektory powiązanych par (np. zapytanie i odpowiadający mu pozytywny przedmiot) były do siebie bliskie w przestrzeni wektorowej, podczas gdy niepowiązane pary były od siebie oddalone. Proces treningu często wykorzystuje funkcje straty oparte na podobieństwie, takie jak podobieństwo kosinusowe, w połączeniu z technikami próbkowania negatywnego. Model uczy się, które pary zapytanie-przedmiot są pozytywnymi przykładami (np. użytkownik kliknął dany produkt) i stara się maksymalizować podobieństwo między ich osadzeniami, jednocześnie minimalizując podobieństwo dla losowo wybranych negatywnych przykładów. Po wytrenowaniu, wieże mogą generować osadzenia niezależnie, co pozwala na wstępne wygenerowanie osadzeń dla wszystkich przedmiotów i przechowywanie ich w bazie danych, umożliwiając bardzo szybkie wyszukiwanie podobieństwa w czasie rzeczywistym poprzez porównywanie osadzenia nowego zapytania z prekomputowanymi osadzeniami przedmiotów.

Główne zalety i charakterystyka

Jedną z kluczowych zalet modeli dwuwieżowych jest ich skalowalność. Dzięki oddzielnemu generowaniu osadzeń dla zapytań i przedmiotów, osadzenia przedmiotów mogą być obliczone offline i przechowywane w indeksie, na przykład w bazie danych wektorowej. W momencie zapytania wystarczy obliczyć osadzenie dla zapytania użytkownika, a następnie szybko wyszukać najbliższe wektory przedmiotów w przestrzeni osadzeń, co pozwala na obsługę ogromnej liczby danych i użytkowników z niską latencją. Inną istotną korzyścią jest elastyczność w doborze architektur wież. Każda wieża może być dostosowana do specyfiki swoich danych wejściowych, wykorzystując różne typy sieci neuronowych, takie jak sieci konwolucyjne dla obrazów, sieci rekurencyjne lub transformery dla tekstu, czy proste sieci MLP dla danych tabelarycznych. Pozwala to na optymalne przetwarzanie różnorodnych cech i adaptację do wielu domen problemowych, jednocześnie utrzymując wspólną przestrzeń osadzeń dla porównań.

Zastosowania w praktyce

  • Systemy rekomendacyjne, np. rekomendacje produktów w e-commerce (Amazon, Allegro) lub filmów (Netflix, YouTube)
  • Wyszukiwarki internetowe, gdzie model dopasowuje zapytania do dokumentów lub stron
  • Wyszukiwanie obrazów, np. znajdowanie podobnych zdjęć lub produktów na podstawie obrazu
  • Personalizacja treści, np. dobieranie artykułów newsowych (Google News) lub postów w mediach społecznościowych (Facebook, Instagram)
  • Dopasowywanie ofert pracy do kandydatów lub na odwrót w serwisach rekrutacyjnych
  • Systemy Q&A (pytania i odpowiedzi), dopasowujące pytania do najbardziej trafnych odpowiedzi

Porównanie z innymi strukturami danych

W porównaniu do tradycyjnych modeli dopasowywania, które bezpośrednio łączą cechy zapytania i przedmiotu i przetwarzają je jedną siecią (tzw. modele typu "cross-encoder"), modele dwuwieżowe oferują znacznie większą efektywność obliczeniową w fazie wnioskowania. Podczas gdy cross-encoder wymagałby oceny każdej pary zapytanie-przedmiot osobno, co jest niepraktyczne dla dużych zbiorów, model dwuwieżowy pozwala na wstępne wygenerowanie osadzeń dla wszystkich przedmiotów. Wadą modeli dwuwieżowych w stosunku do cross-encoderów jest to, że ze względu na oddzielne przetwarzanie danych przez wieże, nie są one w stanie uchwycić złożonych interakcji między zapytaniem a przedmiotem na wczesnych etapach przetwarzania. Może to prowadzić do nieco niższej precyzji w scenariuszach wymagających bardzo subtelnego zrozumienia relacji. Z tego powodu, w wielu zaawansowanych systemach, model dwuwieżowy często pełni rolę etapu kandydata, szybko odfiltrowując miliardy opcji do kilkudziesięciu lub kilkuset, które są następnie rerankowane przez bardziej złożony i kosztowny obliczeniowo model typu cross-encoder dla maksymalnej precyzji.

Najlepsze praktyki (2026)

  • Wykorzystywanie próbkowania negatywnego (np. in-batch negatives, ANCE, Hard Negative Mining) dla efektywniejszego treningu.
  • Zapewnienie spójności przestrzeni osadzeń poprzez wspólne funkcje straty i normalizację wektorów (np. L2).
  • Regularna aktualizacja osadzeń przedmiotów w indeksie, aby odzwierciedlać zmiany w danych lub modelu.
  • Stosowanie technik destylacji wiedzy, aby przenosić wiedzę z większych modeli do mniejszych, szybszych wież.
  • Monitorowanie metryk offline (recall, precyzja na k) i online (CTR, konwersje) w celu oceny skuteczności modelu.
  • Wykorzystanie danych kontekstowych użytkownika w wieży zapytania (np. historia interakcji, bieżąca lokalizacja).

Typowe błędy i pułapki

  • Niedostateczne próbkowanie negatywne, prowadzące do słabego rozróżniania między podobnymi, ale nieistotnymi przedmiotami.
  • Używanie zbyt prostych architektur wież dla złożonych danych wejściowych, co ogranicza zdolność do uczenia się bogatych reprezentacji.
  • Brak aktualizacji osadzeń przedmiotów, co skutkuje rekomendowaniem lub wyszukiwaniem nieaktualnych lub wycofanych pozycji.
  • Nieprawidłowe skalowanie danych wejściowych lub brak normalizacji osadzeń, prowadzące do niestabilnego treningu.
  • Zbyt duża zależność od modelu dwuwieżowego bez dodatkowego etapu rerankingu dla scenariuszy wymagających najwyższej precyzji.
  • Ignorowanie błędu driftu koncepcyjnego, gdzie preferencje użytkowników lub charakterystyka przedmiotów zmieniają się w czasie, a model nie jest odpowiednio adaptowany.