Red GRU
Junto a las LSTM, otra variante popular de red neuronal recurrente es la unidad recurrente cerrada, o GRU. Su atractivo radica en su simplicidad: las celdas GRU requieren menos cálculo que las celdas LSTM, aunque a menudo las igualan en rendimiento.
El código que se te proporciona es la definición del modelo RNN que codificaste anteriormente. Tu tarea consiste en adaptarlo para que produzca en su lugar una red GRU. torch
y torch.nn as nn
ya se han importado para ti.
Este ejercicio forma parte del curso
Aprendizaje profundo intermedio con PyTorch
Instrucciones de ejercicio
- Actualiza la definición del modelo RNN para obtener una red GRU; asigna la capa GRU a
self.gru
.
Ejercicio interactivo práctico
Pruebe este ejercicio completando este código de muestra.
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