Model jest fine-tuningowany na zbiorze danych par (instrukcja, odpowiedź) obejmujących różnorodne zadania. Dzięki temu model uczy się wzorca: "wykonaj zadanie opisane w instrukcji". Może być łączony z RLHF dla lepszej jakości.
Pretrenowane modele językowe są dobre w przewidywaniu kolejnego tokenu, ale słabo reagują na polecenia użytkownika. Instruction tuning dostosowuje model do podążania za instrukcjami w naturalnym języku.
Oficjalna
Oficjalna
Oficjalna
Instruction tuning to standardowa procedura nadzorowanego fine-tuningu. Przykłady treningowe są niezależne i mogą być przetwarzane równolegle na GPU/TPU z wykorzystaniem data parallelism i tensor parallelism. Między przykładami treningowymi nie występują żadne zależności sekwencyjne.
Liczba i różnorodność typów zadań uwzględnionych w zbiorze danych instrukcji. Badania ablacyjne przedstawione w Wei et al. (2021) oraz Chung et al. (2022) wykazują, że większa liczba klastrów zadań systematycznie poprawia generalizację zero-shot na niewidzianych wcześniej zadaniach.
Liczba parametrów wstępnie wytrenowanego modelu bazowego. Wei et al. (2021) wykazali, że korzyści płynące z uogólniania podczas dostrajania przez instrukcje rosną wraz ze skalą modelu, przy czym mniejsze modele wykazują minimalne usprawnienia.
Łączna liczba przykładów (instrukcja, odpowiedź) wykorzystanych do fine-tuningu. Instruction tuning może być skuteczny przy stosunkowo niewielkich zbiorach danych (od tysięcy do setek tysięcy przykładów) w porównaniu z pretrainingiem.
Określa, czy przykłady chain-of-thought (CoT) są uwzględniane w mieszance danych do instruction tuningu. Chung et al. (2022) wykazali, że włączenie danych CoT znacząco poprawia zdolności rozumowania oraz wydajność zero-shot CoT, nie obniżając przy tym wyników na innych benchmarkach.
Rozmiar kroku aktualizacji gradientu podczas SFT. Dostrajanie na instrukcjach zazwyczaj wykorzystuje mniejsze współczynniki uczenia niż pretrening, aby uniknąć katastrofalnego zapominania wiedzy zdobytej podczas pretreningu.
Instruction tuning jest obliczeniowo równoważne nadzorowanemu dostrajaniu (supervised fine-tuning) dużego modelu językowego. Dominującym sprzętem dla tego typu obciążeń są GPU Tensor Cores, obsługujące mieszaną precyzję (BF16/FP16) operacji macierzowych wymaganych przy dostrajaniu transformerów.
Eksperymenty z instruction tuning na dużą skalę (np. Flan-PaLM 540B, Flan-T5) były przeprowadzane na klastrach TPU w Google. TPU zapewniają wysoką przepustowość dla wielkoskalowego SFT i są dobrze wspierane przez JAX/Flax oraz PyTorch XLA.