finjustering

Finjustering er processen med at videreoplære en allerede trænet model på en specifik, ofte mindre, mængde data for at tilpasse den til en bestemt opgave eller domæne.

Kort fortalt

Finjustering er en teknik, hvor du tager en allerede trænet model og træner den lidt mere på dine egne data, så den bliver bedre til netop din opgave.

Kategori
teknik
Niveau
øvet

Betydninger

2
  1. 1

    Videreoplæring af en allerede trænet model på et specifikt datasæt, ofte med lav læringshastighed, for at tilpasse modellens parametre til en ny opgave.

    • Vi finjusterede en fortrænet BERT-model på danske anmeldelser for at opnå høj klassifikationsnøjagtighed.
    • Finjustering af GPT-3 på instruktionsdata har vist sig at forbedre modellens evne til at følge anvisninger.
  2. 2

    Overordnet betegnelse for justering af en models hyperparametre eller konfiguration for at optimere ydeevnen.

    • Gennem finjustering af læringshastighed og batch-størrelse opnåede vi en markant forbedring af modellens præcision.

Hvornår bruges det

Finjustering anvendes typisk i transfer learning, hvor en stor model (fx BERT eller GPT) først fortrænes på en bred korpus og derefter finjusteres på en mindre, opgavespecifik datasæt. Det bruges inden for naturlig sprogbehandling, computer vision og mange andre AI-områder for at opnå god ydeevne med begrænset datamængde.

Kodeeksempel

from transformers import BertForSequenceClassification, Trainer, TrainingArguments

model = BertForSequenceClassification.from_pretrained('bert-base-uncased', num_labels=2)
training_args = TrainingArguments(output_dir='./results', num_train_epochs=3, per_device_train_batch_size=16)
trainer = Trainer(model=model, args=training_args, train_dataset=train_dataset)
trainer.train()

Eksempel på finjustering af BERT til binær klassifikation ved hjælp af Hugging Face Transformers.

Oprindelse

Lånord fra engelsk 'fine-tuning', sammensat af 'fine' (fin) og 'tuning' (justering).

Afledte ord

2

Kilder

2
  • BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding (Devlin et al., 2019)
  • Fine-Tuning Language Models from Human Preferences (Ziegler et al., 2019)