ComenzarEmpieza gratis

red GRU

Junto a las LSTM, otra variante popular de las redes neuronales recurrentes es la unidad recurrente con puerta (GRU, por sus siglas en inglés). Su atractivo reside en su sencillez: Las células GRU requieren menos computación que las células LSTM, aunque a menudo igualan su rendimiento.

El código que se te proporciona es la definición del modelo RNN que has codificado anteriormente. Tu tarea consiste en adaptarlo para que genere una red GRU. Ya se han importado torch y torch.nn as nn.

Este ejercicio forma parte del curso

Aprendizaje profundo intermedio con PyTorch

Ver curso

Instrucciones del ejercicio

  • Actualiza la definición del modelo RNN para obtener una red GRU; asigna la capa GRU a un self.gru.

Ejercicio interactivo práctico

Prueba este ejercicio y completa el 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