Skip to content
Snippets Groups Projects

autoencoders pretraining using RGB faces

Merged Olegs NIKISINS requested to merge autoencoder_pretrain into master
Files
16
 
#!/usr/bin/env python2
 
# -*- coding: utf-8 -*-
 
"""
 
@author: Olegs Nikisins
 
"""
 
#==============================================================================
 
# Import here:
 
 
from torch import nn
 
 
#==============================================================================
 
# Define the network:
 
 
class ConvAutoencoder(nn.Module):
 
 
def __init__(self):
 
super(ConvAutoencoder, self).__init__()
 
self.encoder = nn.Sequential(nn.Conv2d(3, 16, 5, padding=2),
 
nn.ReLU(True),
 
nn.MaxPool2d(2),
 
nn.Conv2d(16, 16, 5, padding=2),
 
nn.ReLU(True),
 
nn.MaxPool2d(2),
 
nn.Conv2d(16, 16, 3, padding=2),
 
nn.ReLU(True),
 
nn.MaxPool2d(2),
 
nn.Conv2d(16, 16, 3, padding=2),
 
nn.ReLU(True),
 
nn.MaxPool2d(2))
 
 
self.decoder = nn.Sequential(nn.ConvTranspose2d(16, 16, 3, stride=2, padding=1),
 
nn.ReLU(True),
 
nn.ConvTranspose2d(16, 16, 3, stride=2, padding=1),
 
nn.ReLU(True),
 
nn.ConvTranspose2d(16, 16, 5, stride=2, padding=2),
 
nn.ReLU(True),
 
nn.ConvTranspose2d(16, 3, 5, stride=2, padding=2),
 
nn.ReLU(True),
 
nn.ConvTranspose2d(3, 3, 2, stride=1, padding=1),
 
nn.Tanh())
 
 
def forward(self, x):
 
"""
 
The forward method.
 
"""
 
x = self.encoder(x)
 
x = self.decoder(x)
 
return x
 
Loading