Batch Normalization
Model mimarisine son bir iyileştirme olarak, iki doğrusal katmanın her birinden sonra birer batch normalization katmanı ekleyelim. Batch norm hilesi genellikle eğitimin yakınsamasını hızlandırır ve modeli, sinir ağlarının eğitiminde çok sık görülen kaybolan ve aşırı büyüyen gradyan sorunlarına karşı korur.
Hem torch.nn hem de torch.nn.init senin için sırasıyla nn ve init olarak içe aktarıldı. Model mimarisindeki değişiklikleri uyguladıktan sonra, batch normalization'ın nasıl çalıştığına dair kısa bir soruyu yanıtlamaya hazır ol!
Bu egzersiz
PyTorch ile Orta Düzey Deep Learning
kursunun bir parçasıdırUygulamalı interaktif egzersiz
Bu örnek kodu tamamlayarak bu egzersizi bitirin.
class Net(nn.Module):
def __init__(self):
super().__init__()
self.fc1 = nn.Linear(9, 16)
# Add two batch normalization layers
____ = ____
self.fc2 = nn.Linear(16, 8)
____ = ____
self.fc3 = nn.Linear(8, 1)
init.kaiming_uniform_(self.fc1.weight)
init.kaiming_uniform_(self.fc2.weight)
init.kaiming_uniform_(self.fc3.weight, nonlinearity="sigmoid")