BERT ile transfer öğrenimi
PyBooks'ta şirket, duygu analizi için önceden eğitilmiş bir transformer modeli olan BERT'in gücünden yararlanmaya karar verdi. BERT, çeşitli NLP görevlerinde dikkat çekici bir performans sergiledi ve bu kullanım senaryosu için ideal bir aday.
Görevin, transformers kütüphanesindeki BERT modelini kullanarak ikili duygu sınıflandırması için temel bir iş akışı kurmak.
Senin için şu sınıflar içe aktarıldı: BertTokenizer, BertForSequenceClassification, torch.
Ayrıca örnek veri texts ve karşılık gelen labels da önceden yüklendi.
Bu egzersiz, kursun bir parçasıdır
PyTorch ile Metin için Deep Learning
Egzersiz talimatları
- İkili sınıflandırmaya uygun
bert-base-uncasedtokenizer ve modeli yükle. - Veri kümeyi belirteçle ve modeli beslemek için hazırla;
return_tensorsargümanını kullanarak PyTorch tensörleri döndürdüğünden emin ol. - En iyileyiciyi, model parametrelerini kullanarak ayarla.
Uygulamalı etkileşimli egzersiz
Bu egzersizi bu örnek kodu tamamlayarak deneyin.
# 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()}")