MRL
Jak działa
Podczas treningu MRL stosuje funkcję straty nie tylko do pełnego M-wymiarowego embeddingu, ale jednocześnie do wielu zagnieżdżonych prefiksów wektora — np. pierwszych m wymiarów dla m z wybranego zbioru granularności (często potęgi dwójki, jak 8, 16, 32, ... aż do pełnego wymiaru). Każda granularność ma własny człon straty (np. z osobną lub współdzieloną głowicą klasyfikacyjną / stratą kontrastywną), a łączna strata to ważona suma strat po wszystkich granularnościach. Taki cel optymalizacji wymusza upakowanie najważniejszej informacji w najwcześniejszych współrzędnych embeddingu, więc dowolny wiodący prefiks staje się użyteczną reprezentacją. Wariant MRL-E współdzieli głowicę między granularnościami, redukując liczbę parametrów. Podczas inferencji wystarczy wziąć pierwsze k wymiarów; jeśli embeddingi były znormalizowane, po skróceniu należy je ponownie znormalizować (L2), ponieważ obcięty wektor przestaje mieć długość jednostkową.
Rozwiązany problem
Reprezentacje o stałej, sztywnej liczbie wymiarów są albo nadmiarowe, albo niewystarczające dla konkretnego zadania, ponieważ w momencie treningu nie znamy ograniczeń obliczeniowych i statystycznych zadań końcowych. Osobne trenowanie modelu dla każdej docelowej liczby wymiarów jest kosztowne, a proste obcinanie zwykłego embeddingu drastycznie pogarsza jakość. MRL rozwiązuje problem potrzeby jednej, elastycznej reprezentacji, którą można dopasować do różnych budżetów pamięci i opóźnień.
Komponenty
Wiodące pod-wektory embeddingu (pierwsze m wymiarów) stanowiące reprezentacje coraz większej pojemności — od grubej do drobnej (coarse-to-fine).
Osobne człony funkcji straty obliczane dla każdego wybranego prefiksu wymiarów (np. klasyfikacja lub strata kontrastywna na pierwszych m wymiarach).
Oficjalna
Ważona suma strat po wszystkich granularnościach, optymalizowana łącznie. W implementacjach (np. Sentence Transformers) realizowana przez MatryoshkaLoss owijający stratę bazową.
Na inferencji bierze się pierwsze k wymiarów embeddingu; jeśli wektor był znormalizowany, po skróceniu należy wykonać ponowną normalizację L2.
Implementacja
Jeśli embeddingi były znormalizowane, obcięty wektor przestaje mieć długość jednostkową, co zaburza miary podobieństwa (np. cosine/dot).
Skracanie zwykłego embeddingu (nietrenowanego celem Matryoshka) powoduje duży spadek jakości, bo informacja nie jest upakowana w wiodących wymiarach.
Porównywanie wektorów o różnej liczbie wymiarów w tym samym indeksie łamie miary podobieństwa.
Ewolucja
Wprowadzenie Matryoshka Representation Learning dla wizji, języka i wizji+języka; kod i modele open-source (RAIVNLab/MRL).
OpenAI text-embedding-3 udostępnia parametr dimensions pozwalający skracać wektory; wsparcie MatryoshkaLoss trafia do Sentence Transformers.
Google EmbeddingGemma dostarcza natywne wymiary 128/256/512/768 z dynamicznym obcinaniem i do ok. 6x redukcją kosztów przechowywania wektorów.
Hiperparametry (konfigurowalne osie)
Lista zagnieżdżonych wymiarów objętych stratą, np. [768, 512, 256, 128, 64] lub potęgi dwójki 8…2048.
Względne wagi c_m przypisane stratom poszczególnych granularności w sumie łącznej.
Podstawowa funkcja straty zadania owijana przez MRL (np. cross-entropy dla klasyfikacji, strata kontrastywna / CoSENT dla embeddingów tekstowych).
Czy głowica (np. klasyfikacyjna) jest osobna dla każdej granularności (MRL), czy współdzielona między nimi (MRL-E, mniej parametrów).
Złożoność obliczeniowa
Paradygmat wykonania
MRL nie wprowadza routingu ani warunkowej aktywacji — pełny embedding jest obliczany gęsto, a elastyczność wynika z zagnieżdżonej struktury wymiarów i obcinania.
Równoległość
Straty dla wszystkich granularności liczone są na współdzielonym embeddingu i mogą być zrównoleglone; inferencja i obcinanie są trywialnie równoległe.
Wymagania sprzętowe
MRL to cel treningowy plus obcinanie wektora — działa niezależnie od sprzętu, na tych samych architekturach co model bazowy (ViT, ResNet, BERT, enkodery tekstu).