This shows you the differences between two versions of the page.
gp:laboratoare:07 [2025/03/30 21:09] maria_anca.balutoiu [Layers] |
gp:laboratoare:07 [2025/03/30 21:12] (current) maria_anca.balutoiu [Implementarea unui GAN în PyTorch] |
||
---|---|---|---|
Line 43: | Line 43: | ||
* **LeakyReLU** este adesea folosit ca funcție de activare în straturile ascunse ale Discriminatorului. | * **LeakyReLU** este adesea folosit ca funcție de activare în straturile ascunse ale Discriminatorului. | ||
* Stratul de ieșire utilizează de obicei funcția **Sigmoid** (sau uneori **Softmax**) pentru a genera o probabilitate între 0 și 1. Această probabilitate reprezintă probabilitatea ca intrarea să fie reală (aproape de 1) sau falsă (aproape de 0). | * Stratul de ieșire utilizează de obicei funcția **Sigmoid** (sau uneori **Softmax**) pentru a genera o probabilitate între 0 și 1. Această probabilitate reprezintă probabilitatea ca intrarea să fie reală (aproape de 1) sau falsă (aproape de 0). | ||
- | <hidden> | ||
- | </hidden> | + | ==== Implementarea unui GAN în PyTorch ==== |
+ | <code> | ||
+ | class Generator(nn.Module): | ||
+ | def __init__(self): | ||
+ | super(Generator, self).__init__() | ||
+ | self.model = nn.Sequential( | ||
+ | nn.Linear(100, 256), # First linear layer (input: 100 -> 256) | ||
+ | nn.ReLU(), # Activation function | ||
+ | nn.Linear(256, 512), # Second linear layer (256 -> 512) | ||
+ | nn.ReLU(), # Activation function | ||
+ | nn.Linear(512, 1024), # Third linear layer (512 -> 1024) | ||
+ | nn.ReLU(), # Activation function | ||
+ | nn.Linear(1024, 64*64), # Final layer (1024 -> 64x64 terrain) | ||
+ | nn.Tanh() # Activation function for output (-1 to 1) | ||
+ | ) | ||
+ | |||
+ | def forward(self, x): | ||
+ | return self.model(x).view(-1, 64, 64) | ||
+ | </code> | ||
==== Tasks ==== | ==== Tasks ==== |