GRU ağı
LSTM'lerin yanı sıra, bir diğer popüler yinelemeli sinir ağı varyantı da Gated Recurrent Unit, yani GRU'dur. Cazibesi sadeliğinden gelir: GRU hücreleri, LSTM hücrelerine göre daha az hesaplama gerektirir ve çoğu zaman benzer bir performans yakalar.
Sana verilen kod, daha önce yazdığın RNN model tanımıdır. Görevin, bunu GRU ağı üretecek şekilde uyarlamaktır. torch ve torch.nn as nn senin için zaten içe aktarıldı.
Bu egzersiz
PyTorch ile Orta Düzey Deep Learning
kursunun bir parçasıdırEgzersiz talimatları
- GRU ağı elde etmek için RNN model tanımını güncelle; GRU katmanını
self.grudeğişkenine ata.
Uygulamalı interaktif egzersiz
Bu örnek kodu tamamlayarak bu egzersizi bitirin.
class Net(nn.Module):
def __init__(self):
super().__init__()
# Define RNN layer
self.rnn = nn.RNN(
input_size=1,
hidden_size=32,
num_layers=2,
batch_first=True,
)
self.fc = nn.Linear(32, 1)
def forward(self, x):
h0 = torch.zeros(2, x.size(0), 32)
out, _ = self.rnn(x, h0)
out = self.fc(out[:, -1, :])
return out