full fine tuning
Full fine tuning er en finjusteringsmetode, hvor samtlige parametre i en prætrænet model opdateres under træning på en specifik opgave.
Kort fortalt
Full fine tuning betyder, at man tager en allerede trænet model og genoptræner alle dens vægte på sin egen data, så den bliver specialiseret til ens egen opgave.
- Kategori
- teknik
- Niveau
- øvet
Betydninger
1- 1
Den proces, hvor en prætrænet maskinlæringsmodel finjusteres ved at opdatere alle dens vægte og bias under træning på en ny, specifik opgave.
- Full fine tuning af en BERT-model på et juridisk tekstkorpus forbedrer klassifikationsnøjagtigheden markant. — Forskning i juridiske sprogmodeller, 2022
- På grund af de høje omkostninger ved full fine tuning vælger mange organisationer i stedet parameter-effektive alternativer. — Teknisk rapport, 2023
Hvornår bruges det
Full fine tuning anvendes typisk, når man har tilstrækkeligt med opgavespecifikke data og ønsker maksimal ydeevne. Det kræver betydelige beregningsressourcer, da hele modellen opdateres. Metoden er standard for større modeller som GPT og BERT, men bliver i stigende grad erstattet af parameter-effektive metoder som LoRA, når ressourcerne er begrænsede.
Kodeeksempel
from transformers import AutoModelForSequenceClassification
model = AutoModelForSequenceClassification.from_pretrained('bert-base-uncased', num_labels=2)
# Aktiver alle parametre (standard)
for param in model.parameters():
param.requires_grad = True
# Træningsloop (forenklet)
optimizer = torch.optim.AdamW(model.parameters(), lr=2e-5)
for batch in dataloader:
outputs = model(**batch)
loss = outputs.loss
loss.backward()
optimizer.step()Et simpelt eksempel på full fine tuning af BERT til klassifikation ved at aktivere alle parametre og bruge AdamW-optimizer.
Oprindelse
Udtrykket 'fine-tuning' kommer fra elektronik og akustik, hvor det betyder at foretage små justeringer for at opnå optimal præstation. 'Full' tilføjes for at kontrastere med delvise eller parameter-effektive finjusteringsmetoder.
Kilder
2- Fine-Tuning Language Models from Human Preferences (Ziegler et al., 2019)
- LoRA: Low-Rank Adaptation of Large Language Models (Hu et al., 2021)