NastępnyNastępny poradnik
Akumulacja gradientowa
Techniczne
PRZEWODNIK techniczny
Gradientowe punkty kontrolne (zwane także punktami kontrolnymi aktywacji) to sztuczka oszczędzająca pamięć, która odrzuca większość pośrednich aktywacji podczas przebiegu do przodu i przelicza je na bieżąco podczas propagacji wstecznej.
Posłuchaj tego przewodnikaOpowiadane przez sztuczną inteligencję · ~2 min
It lets you train deeper, larger networks by trading extra compute for much lower memory use.
Training normally retains intermediate activations needed for backpropagation. Activation checkpointing saves selected boundary tensors and recomputes internal activations during backward. This trades additional computation for a lower activation-memory footprint; the actual savings and runtime overhead depend on checkpoint placement, operations, model graph, and hardware. In a simplified chain of N similarly sized layers, a textbook schedule with checkpoint boundaries spaced about sqrt(N) layers apart can reduce activation storage to order sqrt(N) checkpoints, with recomputation cost governed by that schedule. This asymptotic example is not a universal prediction for framework implementations. PyTorch exposes activation-checkpointing utilities, and its current guidance also describes selective rematerialization and compiler-assisted choices. It can combine with FSDP and mixed precision, but benchmark the full training workload.
Trenowanie głębokiego transformatora z większym rozmiarem partii na pojedynczym procesorze graficznym poprzez odrzucanie i ponowne obliczanie aktywacji warstw.
Dostrajanie modeli wizji na obrazach o wysokiej rozdzielczości, gdzie mapy aktywacyjne w przeciwnym razie przepełniłyby pamięć GPU.
Transformatory obejmujące twarz umożliwiające gradient_checkpointing=Prawdziwe dopasowanie modeli o miliardach parametrów podczas dostrajania.
Połączenie punktów kontrolnych z FSDP, dzięki czemu zarówno parametry, jak i aktywacje są małe, co umożliwia szkolenie bardzo dużych modeli językowych.
Gradientowe punkty kontrolne są obecnie standardem w szkoleniu na dużych modelach i są coraz bardziej zautomatyzowane, a biblioteki wybierają dla Ciebie optymalne lokalizacje punktów kontrolnych. Łączy się naturalnie z FSDP, mieszaną precyzją i odciążaniem, aby zwiększyć rozmiary modeli. Spodziewaj się „selektywnych” punktów kontrolnych, które przeliczają tylko tanie operacje, zachowując drogie (takie jak macierze uwagi) w pamięci podręcznej, a także podejścia oparte na kompilatorze w narzędziach takich jak torch.compile firmy PyTorch, które automatycznie decydują, co zapisać, a co przeliczyć, aby uzyskać najlepszą równowagę szybkości i pamięci.
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ę
Gradientowe punkty kontrolne (zwane także punktami kontrolnymi aktywacji) to sztuczka oszczędzająca pamięć, która odrzuca większość pośrednich aktywacji podczas przebiegu do przodu i przelicza je na bieżąco podczas propagacji wstecznej. Pozwala trenować głębsze, większe sieci, zamieniając dodatkową moc obliczeniową na znacznie mniejsze zużycie pamięci.
Gradientowy punkt kontrolny ponownie oblicza odrzucone aktywacje podczas przebiegu wstecznego, wydając dodatkowe obliczenia w zamian za znacznie zmniejszoną pamięć.
Backprop oblicza gradienty przy użyciu pośrednich aktywacji z przejazdu do przodu, więc muszą być dostępne, chyba że zostaną ponownie obliczone.
Harmonogram pierwiastkowy jest teoretycznym wynikiem uproszczonego wykresu obliczeń sekwencyjnych, a nie uniwersalną gwarancją wdrożenia.
Narzut związany z ponownym obliczeniem różni się w zależności od polityki punktu kontrolnego i kosztu operacji wybranych do ponownego obliczenia.
torch.utils.checkpoint otacza moduł, więc jego wewnętrzne aktywacje są przeliczane podczas odtwarzania wstecz, zamiast być zapisywane.
Ucz się dalej
Wybrano więcej przewodników na ten temat
NastępnyNastępny poradnik
Akumulacja gradientowa
Techniczne