ComenzarEmpieza gratis

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

Ver curso

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
Editar y ejecutar código