LoRA
Zaktualizowano:
LoRA (Low-Rank Adaptation) to metoda fine-tuningu, która zyskała popularność w kontekście dużych modeli językowych i modeli generatywnych, zwłaszcza tych do tworzenia obrazów. Zamiast trenować cały model od nowa lub dostrajać wszystkie jego miliardy parametrów, LoRA wprowadza niewielkie, niskorangowe macierze adapterów do wybranych warstw modelu.
Podczas treningu modyfikowane są tylko te nowo dodane macierze, a oryginalne wagi modelu pozostają zamrożone. Dzięki temu liczba trenowalnych parametrów jest drastycznie zmniejszona, co przekłada się na:
- Znacząco niższe wymagania obliczeniowe (GPU, pamięć).
- Szybszy proces treningu.
- Mniejsze pliki wynikowe (adaptery LoRA są znacznie mniejsze niż pełne modele).
Po zakończeniu treningu, wagi macierzy LoRA są dodawane do oryginalnych wag modelu, tworząc zmodyfikowaną wersję, która zachowuje specyficzne cechy nabyte podczas dostrajania. Możliwe jest również dynamiczne włączanie i wyłączanie adapterów LoRA, co pozwala na łatwe przełączanie się między różnymi stylami czy zadaniami bez konieczności ładowania wielu pełnych modeli. Jest to szczególnie przydatne w generowaniu obrazów, gdzie jeden model bazowy może być dostosowany do wielu stylów artystycznych lub obiektów za pomocą różnych adapterów LoRA.
LoRA różni się od pełnego fine-tuningu tym, że nie modyfikuje bezpośrednio wszystkich wag modelu, lecz dodaje do nich małe, trenowalne „nakładki”.