Metin için bir CNN modeli eğit
TextClassificationCNN sınıfını tanımladığın için tebrikler. PyBooks şimdi modeli eğitip kitap incelemelerinin duygu analizinde daha doğru sonuçlar almak istiyor.
Aşağıdaki paketler senin için içe aktarıldı:
torch, torch.nn nn olarak, torch.nn.functional F olarak, torch.optim optim olarak.
vocab_size ve embed_dim argümanlarıyla oluşturulmuş bir TextClassificationCNN() örneği de yüklenip model olarak kaydedildi.
Bu egzersiz
PyTorch ile Metin için Deep Learning
kursunun bir parçasıdırEgzersiz talimatları
- İkili sınıflandırmada kullanılan bir kayıp fonksiyonu tanımla ve
criterionolarak kaydet. - Eğitim döngüsünün başında gradyanları sıfırla.
- Döngünün sonunda parametreleri güncelle.
Uygulamalı interaktif egzersiz
Bu örnek kodu tamamlayarak bu egzersizi bitirin.
# Define the loss function
criterion = nn.____()
optimizer = optim.SGD(model.parameters(), lr=0.1)
for epoch in range(10):
for sentence, label in data:
# Clear the gradients
model.____()
sentence = torch.LongTensor([word_to_ix.get(w, 0) for w in sentence]).unsqueeze(0)
label = torch.LongTensor([int(label)])
outputs = model(sentence)
loss = criterion(outputs, label)
loss.backward()
# Update the parameters
____.____()
print('Training complete!')