EmpezarEmpieza gratis

Crear un generador y un discriminador

En PyBooks, te han encargado trabajar en un generador de texto automático para ayudar a los escritores a superar el bloqueo creativo. Crees que, usando GANs (Generative Adversarial Networks), puedes crear un sistema donde una red, el generador, cree texto nuevo mientras que la otra red, el discriminador, evalúe su autenticidad. Para ello, necesitas inicializar tanto la red generadora como la discriminadora. Luego, estas redes se entrenarán una contra la otra para producir texto nuevo y verosímil.

Ya tienes importado lo siguiente: torch, torch.nn como nn.

Este ejercicio forma parte del curso

Deep Learning para texto con PyTorch

Ver curso

Instrucciones del ejercicio

  • Define la clase Generator con una capa lineal para datos secuenciales y una función de activación sigmoide.
  • Pasa la entrada por el modelo definido en el método forward() de la clase Generator.
  • Define una clase Discriminator con las mismas capas y función de activación, prestando atención al definir las dimensiones.

ejercicio interactivo práctico

Prueba este ejercicio completando este código de ejemplo.

# Define the generator class
class Generator(nn.Module):
    def __init__(self):
        super().__init__()
        self.model = nn.____(nn.____(____), nn.____())
    def forward(self, x):
        return self.____(x)

# Define the discriminator networks
class Discriminator(nn.Module):
    def __init__(self):
        super().__init__()
        self.model = nn.____(nn.____(____), nn.____())
    def forward(self, x):
        return self.model(x)
Editar y ejecutar código