NastępnyNastępny poradnik
Optymalizatory ZeRO i Sharded
Techniczne
PRZEWODNIK techniczny
Adam jest głównym optymalizatorem większości nowoczesnych sieci neuronowych, automatycznie dostosowującym osobną szybkość uczenia się dla każdego parametru.
Posłuchaj tego przewodnikaOpowiadane przez sztuczną inteligencję · ~2 min
It matters because it makes training deep models faster and far less finicky than plain gradient descent.
Adam (Adaptive Moment Estimation), wprowadzony przez Kingmę i Ba w 2014 roku, łączy w sobie dwie idee. Po pierwsze, dynamika: utrzymuje wykładniczo malejącą średnią z poprzednich gradientów (pierwszy moment), więc aktualizuje prędkość budowy w stałych kierunkach. Po drugie, skalowanie według parametrów: śledzi średnią kwadratową gradientów (drugi moment) i dzieli każdy krok przez pierwiastek kwadratowy z tej wartości, więc parametry z dużymi, zaszumionymi gradientami wymagają mniejszych kroków, a rzadko aktualizowane - większych. Ta zdolność adaptacyjna oznacza, że często można używać jednej szybkości uczenia się w całej sieci. Wariant AdamW oddziela zanik masy od aktualizacji gradientu i stał się domyślnym sposobem uczenia dużych transformatorów i modeli językowych.
Trenowanie dużych modeli językowych, takich jak GPT i Llama, które wykorzystują AdamW jako standardowy optymalizator.
Dostrajanie wstępnie wytrenowanego klasyfikatora obrazu (np. ResNet) w niestandardowym zestawie danych z tylko domyślną szybkością uczenia się Adama.
Trenowanie modeli dyfuzji za generatorami obrazów, takimi jak Stable Diffusion.
Uruchamianie 8-bitowego Adama w bibliotekach takich jak bitsandbytes, aby dopasować stany optymalizatora do ograniczonej pamięci GPU.
Adam i AdamW pozostają dominujący, ale badania zwiększają wydajność modeli bilionowych parametrów, w których przechowywanie dwóch dodatkowych wartości na wagę jest kosztowne. Warianty wymagające niewielkiej pamięci, takie jak Adafactor, 8-bitowy Adam i nowsze optymalizatory, takie jak Lion (który wykorzystuje tylko pęd oparty na znakach) i Sophia mają na celu dopasowanie jakości Adama przy mniejszej ilości pamięci lub szybszej zbieżności. Oczekuj, że adaptacyjne optymalizatory dostosowane specjalnie do rozproszonego i mało precyzyjnego szkolenia będą stale ewoluować.
Darmowy newsletter
Trzy zweryfikowane historie AI każdego poranka w dni robocze, napisane prostym angielskim. Bezpłatne na zawsze, bez reklam.
Jedno e‑mail każdego dnia roboczego. Wypisz się jednym kliknięciem. Nigdy nie sprzedajemy ani nie udostępniamy Twojego adresu.
Sprawdź się
Natychmiastowa informacja zwrotna na każde pytanie oraz udostępnialny certyfikat z weryfikowalnym ID po zaliczeniu kursu.
Wspieraj darmową edukację AI. AI Understanding jest organizacją non-profit 501(c)(3) — bez reklam, bez płatnej ściany, zawsze. Przekaż darowiznę
Adam jest głównym optymalizatorem większości nowoczesnych sieci neuronowych, automatycznie dostosowującym osobną szybkość uczenia się dla każdego parametru. Ma to znaczenie, ponieważ sprawia, że trenowanie głębokich modeli jest szybsze i znacznie mniej wymagające niż zwykłe zejście gradientowe.
Adam utrzymuje wykładniczo malejącą średnią gradientów (pierwszy moment) i kwadratów gradientów (drugi moment) dla każdego parametru.
Zarówno m, jak i v są inicjowane na zero, więc wczesne szacunki są obarczone niskim błędem; dzielenie przez (1 - beta^t) koryguje to.
AdamW stosuje zanik masy bezpośrednio do wag, zamiast mieszać go z składnikiem gradientu adaptacyjnego, co poprawia uogólnianie w transformatorach.
Do mianownika dodaje się epsilon (około 1e-8), aby parametry o średnich gradientach bliskich zera kwadratowego nie spowodowały eksplozji.
Dzieląc przez pierwiastek kwadratowy średniej kwadratowej gradientu każdego parametru, Adam skaluje wielkość kroku dla każdego parametru, zamiast używać jednej wartości globalnej.
Ucz się dalej
Wybrano więcej przewodników na ten temat
NastępnyNastępny poradnik
Optymalizatory ZeRO i Sharded
Techniczne