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. 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

2

Kilder

1
  • Parameter-Efficient Transfer Learning for NLP (Houlsby et al., 2019)