Model składa się z wielu podsieci (ekspertów). Mechanizm routingu (brama) dla każdego tokenu wybiera podzbiór ekspertów (np. top-2). Tylko wybrani eksperci są aktywowani podczas obliczeń, pozostałe parametry są pomijane.
Skalowanie gęstych sieci neuronowych jest kosztowne obliczeniowo — każdy token aktywuje wszystkie parametry. MoE umożliwia skalowanie liczby parametrów bez proporcjonalnego wzrostu kosztów obliczeniowych.
Oficjalna
Oficjalna
Oficjalna
Złożoność czasowa: O(k · C_expert) per token per MoE layer. Złożoność przestrzenna: O(N · P_expert) total parameters.
W oryginalnym sformułowaniu soft MoE (Jacobs et al. 1991) wszystkie eksperci są ważeni i sumowani (all_paths_active). Rzadki wariant top-k (Shazeer et al. 2017) dominuje we współczesnych zastosowaniach LLM.
W obrębie pojedynczego urządzenia obliczenia ekspertów są w pełni równoległe dla tokenów przypisanych do danego eksperta. Na poziomie wielu urządzeń stosuje się równoległość ekspertów (expert parallelism): każde urządzenie przechowuje podzbiór ekspertów i przetwarza wyłącznie tokeny do niego skierowane.
Całkowita liczba podsieci eksperckich. Określa liczbę parametrów warstwy MoE. Zwiększanie N skaluje pojemność modelu bez wzrostu liczby operacji zmiennoprzecinkowych (FLOPs) przypadających na token. Typowe wartości mieszczą się w przedziale od 8 do kilku tysięcy.
Liczba ekspertów aktywowanych na token w każdej warstwie MoE. k=1 (Switch Transformer) minimalizuje nakład obliczeniowy; k=2 to wartość najczęściej stosowana w praktyce. Wyższe k poprawia stabilność routingu, lecz zwiększa liczbę operacji zmiennoprzecinkowych (FLOPs) przypadających na token.
Mnożnik średniej liczby tokenów przypadających na eksperta w danej partii (batch). Określa maksymalny bufor tokenów na eksperta. Wartości powyżej 1,0 zmniejszają liczbę pomijanych tokenów (token dropping) kosztem większego zużycia pamięci. Wartości poniżej 1,0 zwiększają token dropping.
Współczynnik skalowania (alpha) dla pomocniczej straty równoważenia obciążenia (load balancing auxiliary loss) dodawanej do funkcji celu podczas treningu. Zbyt wysoka wartość powoduje niestabilność i obniża jakość modelu; zbyt niska prowadzi do zjawiska kolapsowania ekspertów (expert collapse). Wymaga starannego dostrojenia dla każdej skali modelu.
W modelach MoE opartych na Transformerze nie każda warstwa FFN jest zastępowana warstwą MoE. Wzorzec przeplotu (np. co druga warstwa, co czwarta warstwa) kontroluje kompromis między pojemnością ekspertów a narzutem komunikacyjnym.
Trenowanie i wnioskowanie rzadkich modeli MoE na dużą skalę wymaga klastrów GPU z szybkimi połączeniami (NVLink, InfiniBand) zapewniającymi efektywną komunikację all-to-all w ramach równoległości ekspertów. Obliczenia FFN poszczególnych ekspertów to gęste mnożenia macierzowe, które korzystają z akceleracji Tensor Core.
GShard i Switch Transformer od Google były trenowane na klastrach TPU z wykorzystaniem XLA SPMD do automatycznego shardingu. Łącze ICI w TPU zapewnia wysoką przepustowość komunikacji all-to-all, co dobrze sprawdza się w równoległości ekspertów (expert parallelism).