Fine-tuning
Jak działa
1) Wybiera się wstępnie wytrenowany model bazowy. 2) Przygotowuje się mniejszy, zadaniowy lub domenowy zbiór danych (np. pary instrukcja–odpowiedź dla instruction tuningu). 3) Model trenuje się dalej metodą spadku gradientu, zwykle z niskim współczynnikiem uczenia (np. rzędu 2e-5), aby nie zniszczyć wiedzy z treningu wstępnego. 4) W pełnym dostrajaniu aktualizowane są wszystkie wagi; w PEFT/LoRA wagi bazowe są zamrożone, a uczone są jedynie wstrzyknięte, niskorangowe macierze adaptacyjne. 5) Powstały model (lub lekki adapter) jest zapisywany i wdrażany. Niski współczynnik uczenia, mała liczba epok i regularyzacja ograniczają katastroficzne zapominanie i przeuczenie.
Rozwiązany problem
Trening dużych modeli od zera jest kosztowny, wymaga ogromnych zbiorów danych i mocy obliczeniowej, a gotowy model ogólnego przeznaczenia rzadko jest optymalny dla wąskiego zadania lub domeny. Dostrajanie pozwala wykorzystać wiedzę zgromadzoną w modelu bazowym i zaadaptować go do konkretnego celu niewielkim nakładem.
Komponenty
Wstępnie wytrenowany model, którego wagi są dalej dostrajane (lub zamrażane w PEFT).
Oficjalna
Mniejszy, wyspecjalizowany zbiór (np. pary wejście–odpowiedź) definiujący docelowe zachowanie.
Oficjalna
Zwykle strata entropii krzyżowej i optymalizator typu Adam/AdamW z niskim współczynnikiem uczenia.
Oficjalna
Niewielkie, niskorangowe macierze wstrzykiwane do warstw modelu (LoRA) zamiast aktualizacji wszystkich wag.
Oficjalna
Implementacja
Zbyt agresywne dostrajanie nadpisuje wiedzę ogólną zdobytą w treningu wstępnym.
Mały zbiór dostrajający sprzyja zapamiętywaniu przykładów zamiast generalizacji.
Wysoki learning rate destabilizuje wyuczone wagi i niszczy wiedzę bazową.
Ewolucja
Douczanie wstępnie wytrenowanych na ImageNet sieci CNN staje się standardową praktyką uczenia transferowego w wizji komputerowej.
Howard i Ruder wprowadzają uniwersalne dostrajanie modeli językowych dla NLP, pokazując skuteczny transfer indukcyjny dla dowolnego zadania tekstowego.
BERT upowszechnia schemat, w którym wstępnie wytrenowany model dostraja się jedną dodatkową warstwą do wielu zadań NLP, osiągając wyniki SOTA.
LoRA zamraża wagi bazowe i uczy niskorangowych macierzy, redukując liczbę trenowanych parametrów do ~10 000x mniej i pamięć GPU 3x względem pełnego dostrajania GPT-3 175B.
OpenAI dostraja GPT-3 na demonstracjach i sprzężeniu zwrotnym (SFT + RLHF), by model podążał za instrukcjami użytkownika – podstawa współczesnych asystentów.
Hiperparametry (konfigurowalne osie)
Zbyt wysoki niszczy wiedzę z treningu wstępnego; typowo rzędu 1e-5–5e-5 przy pełnym dostrajaniu.
Pełne dostrajanie (wszystkie wagi) vs PEFT/LoRA (ułamek parametrów). Decyduje o koszcie pamięci i ryzyku zapominania.
Zbyt wiele epok prowadzi do przeuczenia na małym zbiorze dostrajającym.
Rozmiar niskorangowych macierzy adaptacyjnych; kompromis między pojemnością a liczbą parametrów.
Wąskie gardło obliczeniowe
Pełne dostrajanie wymaga przechowywania gradientów i stanów optymalizatora dla wszystkich parametrów, co jest głównym powodem powstania metod parametroszczędnych (PEFT/LoRA).
Paradygmat wykonania
Standardowe dostrajanie aktualizuje gęste wagi przez wsteczną propagację; w PEFT/LoRA aktualizowana jest tylko niewielka, gęsta część (adaptery) przy zamrożonej reszcie.
Równoległość
Obliczenia w obrębie batcha są w pełni równoległe i skalują się przez równoległość danych na wielu urządzeniach, ale kolejne kroki optymalizacji są sekwencyjne.
Wymagania sprzętowe
Dostrajanie oparte na gradientach korzysta z rdzeni tensorowych i treningu mieszanej precyzji (bf16/fp16) na GPU Ampere i nowszych.