Transformer to architektura, na której zbudowane są praktycznie wszystkie dzisiejsze duże modele. Jej kluczowa zaleta jest banalna: da się ją policzyć równolegle.
Czym jest transformer
Transformer to architektura sieci neuronowej opisana w 2017 roku, oparta na mechanizmie uwagi. Zbudowana jest z powtarzalnych bloków, przez które przechodzą wektory tokenów. Każdy blok zawiera warstwę uwagi, która pozwala tokenom „patrzeć” na siebie nawzajem, oraz warstwę w pełni połączoną, która przetwarza każdą pozycję osobno. Duży model to kilkadziesiąt lub więcej takich bloków ułożonych jeden na drugim.
Dlaczego wyparł wcześniejsze architektury
Poprzednie podejścia przetwarzały tekst sekwencyjnie, słowo po słowie, co uniemożliwiało efektywne zrównoleglenie treningu. Transformer przetwarza całą sekwencję naraz, dzięki czemu daje się trenować na dużo większych zbiorach przy tym samym czasie. To nie była przewaga jakościowa nad wcześniejszymi pomysłami, tylko przewaga skali — i ona okazała się decydująca.
Wagi są zamrożone po treningu
Po zakończeniu treningu parametry transformera się nie zmieniają. Podczas rozmowy w modelu nie zapisuje się nic — wszystko, co wygląda na uczenie się w trakcie, jest wyłącznie zawartością okna kontekstu. To architektoniczna przyczyna, dla której pamięć agenta trzeba budować na zewnątrz.
Ograniczenie, które z tego wynika
Mechanizm uwagi porównuje każdy token z każdym, więc nakład obliczeń rośnie kwadratowo wraz z długością sekwencji. Stąd bierze się koszt długiego kontekstu i cała rodzina technik, które próbują ten koszt obejść.