Adapters
En parameter-effektiv finjusteringsmetode, hvor små neurale moduler indsættes i en fortrænet model, så kun disse trænes.
Kort fortalt
Adapters er små ekstra lag, der sættes ind i en stor sprogmodel, så man kan tilpasse den til en ny opgave uden at skulle træne hele modellen igen.
- Kategori
- teknik
- Niveau
- øvet
Betydninger
1- 1
En parameter-effektiv finjusteringsmetode, hvor små neurale netværk (adaptermoduler) indsættes mellem lagene i en fortrænet transformer-model. Under finjustering fryses de originale vægte, og kun adaptermodulerne opdateres.
- Adapters gør det muligt at finjustere en BERT-model på en klassifikationsopgave med kun 3-5% ekstra parametre. — forskningsartikel, 2019
- Ved at bruge adapters kan man opretholde flere specialiserede versioner af en stor sprogmodel i én enkelt model.
Hvornår bruges det
Adapters bruges især i NLP, når man vil finjustere en stor sprogmodel (f.eks. BERT eller GPT) til en specifik opgave, samtidig med at man sparer tid og hukommelse. De gør det muligt at have flere tilpasninger i én model uden at gemme separate kopier af hele modellen.
Kodeeksempel
from transformers import AutoModel
from transformers.adapters import AdapterConfig
model = AutoModel.from_pretrained("bert-base-uncased")
adapter_config = AdapterConfig(mh_adapter=True, output_adapter=True)
model.add_adapter("my_adapter", config=adapter_config)
model.train_adapter("my_adapter")Eksempel på tilføjelse af et adapter-modul til BERT ved hjælp af Hugging Face's adapters-bibliotek.
Oprindelse
Begrebet 'adapters' stammer fra Houlsby et al. (2019), der introducerede 'Adapter-moduler' i artiklen 'Parameter-Efficient Transfer Learning for NLP'.
Afledte ord
2Kilder
1- Parameter-Efficient Transfer Learning for NLP (Houlsby et al., 2019)