LoslegenKostenlos loslegen

Transfer Learning mit BERT

Bei PyBooks hat sich das Unternehmen entschieden, die Leistungsfähigkeit von BERT, einem vortrainierten Transformer-Modell, für Sentiment-Analyse zu nutzen. BERT liefert in vielen NLP-Aufgaben hervorragende Ergebnisse und ist daher ein idealer Kandidat für diesen Einsatzzweck.

Deine Aufgabe ist es, einen einfachen Workflow mit dem BERT-Modell aus der transformers-Bibliothek für eine binäre Sentiment-Klassifikation aufzusetzen.

Folgendes wurde bereits für dich importiert: BertTokenizer, BertForSequenceClassification, torch. Die Beispieldaten texts und die zugehörigen labels sind ebenfalls vorab geladen.

Diese Übung ist Teil des Kurses

Deep Learning für Text mit PyTorch

Kurs anzeigen

Anleitung zur Übung

  • Lade den Tokenizer und das Modell bert-base-uncased, geeignet für binäre Klassifikation.
  • Tokenisiere deinen Datensatz und bereite ihn für das Modell vor. Achte darauf, dass PyTorch-Tensoren mit dem Argument return_tensors zurückgegeben werden.
  • Richte den Optimizer mit den Modellparametern ein.

Interaktive Übung

Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.

# Load the BERT tokenizer and model
tokenizer = BertTokenizer.from_pretrained('____')
model = BertForSequenceClassification.from_pretrained('____', num_labels=____)

# Tokenize your data and return PyTorch tensors
inputs = tokenizer(____, padding=True, truncation=True, return_tensors="____", max_length=32)
inputs["labels"] = torch.tensor(labels)

# Setup the optimizer using model parameters
optimizer = torch.optim.AdamW(____, lr=0.00001)
model.train()
for epoch in range(2):
    outputs = model(**inputs)
    loss = outputs.loss
    loss.backward()
    optimizer.step()
    optimizer.zero_grad()
    print(f"Epoch: {epoch+1}, Loss: {loss.item()}")
Code bearbeiten und ausführen