Construirea unui generator și a unui discriminator
La PyBooks, ai sarcina de a lucra la un generator automat de text care să îi ajute pe scriitori să depășească blocajul creator. Folosind GAN-uri (Generative Adversarial Networks – Rețele Generative Adversariale), crezi că poți construi un sistem în care o rețea, generatorul, creează text nou, iar cealaltă rețea, discriminatorul, îi evaluează autenticitatea. Pentru aceasta, trebuie să inițializezi atât rețeaua generator, cât și rețeaua discriminator. Aceste rețele vor fi apoi antrenate una împotriva celeilalte pentru a genera text nou și credibil.
Următoarele au fost deja importate pentru tine: torch, torch.nn ca nn.
Acest exercițiu face parte din cursul
Deep Learning pentru text cu PyTorch
Instrucțiuni pentru exercițiu
- Definește clasa
Generatorcu un strat liniar pentru date secvențiale și o funcție de activare sigmoid. - Transmite intrarea prin modelul definit în metoda
forward()a claseiGenerator. - Definește o clasă
Discriminatorcu aceleași straturi și funcție de activare, acordând atenție la definirea dimensiunilor.
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
# 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)