def __init__(self, input_dim=1, output_dim=1, input_size=32): super(discriminator, self).__init__() self.input_dim = input_dim self.output_dim = output_dim self.input_size = input_size self.conv = nn.Sequential( nn.Conv2d(self.input_dim, 64, 4, 2, 1), nn.ReLU(), ) self.code = nn.Sequential( nn.Linear( 64 * (self.input_size // 2) * (self.input_size // 2), 32 ), # bn and relu are excluded since code is used in pullaway_loss ) self.fc = nn.Sequential( nn.Linear(32, 64 * (self.input_size // 2) * (self.input_size // 2)), nn.BatchNorm1d(64 * (self.input_size // 2) * (self.input_size // 2)), nn.ReLU(), ) self.deconv = nn.Sequential( nn.ConvTranspose2d(64, self.output_dim, 4, 2, 1), # nn.Sigmoid(), ) utilis.initialize_weights(self)
def __init__(self, input_dim=1, output_dim=1, input_size=32): super(discriminator, self).__init__() self.input_dim = input_dim self.output_dim = output_dim self.input_size = input_size self.fc = nn.Sequential( nn.Linear(500, 32), nn.Linear(32, 500), ) utilis.initialize_weights(self)
def __init__(self, input_dim=100, output_dim=1, input_size=32): super(generator, self).__init__() self.input_dim = input_dim self.output_dim = output_dim self.input_size = input_size self.fc = nn.Sequential( nn.Linear(self.input_dim, 1024), nn.BatchNorm1d(1024), nn.ReLU(), nn.Linear(1024, 2), ) utilis.initialize_weights(self)
def __init__(self, input_dim=1, output_dim=1, input_size=32): super(discriminator, self).__init__() self.input_dim = input_dim self.output_dim = output_dim self.input_size = input_size self.fc = nn.Sequential( utils.spectral_norm(nn.Linear(2, 128)), nn.ReLU(), utils.spectral_norm(nn.Linear(128, 128)), nn.ReLU(), utils.spectral_norm(nn.Linear(128, self.output_dim)), nn.Sigmoid(), ) utilis.initialize_weights(self)
def __init__(self, input_dim=100, output_dim=1, input_size=32): super(generator, self).__init__() self.input_dim = input_dim self.output_dim = output_dim self.input_size = input_size self.fc = nn.Sequential( nn.Linear(self.input_dim, 128), nn.Tanh(), nn.Linear(128, 128), nn.Tanh(), nn.Linear(128, 2), ) utilis.initialize_weights(self)
def __init__(self, input_dim=100, output_dim=1, input_size=32): super(generator, self).__init__() self.input_dim = input_dim self.output_dim = output_dim self.inputsize = input_size d = 128 self.deconv = nn.Sequential( nn.ConvTranspose2d(self.input_dim, d * 8, 4, 1, 0), nn.BatchNorm2d(d * 8), nn.ReLU(), nn.ConvTranspose2d(d * 8, d * 4, 4, 2, 1), nn.BatchNorm2d(d * 4), nn.ReLU(), nn.ConvTranspose2d(d * 4, d * 2, 4, 2, 1), nn.BatchNorm2d(d * 2), nn.ReLU(), nn.ConvTranspose2d(d * 2, d, 4, 2, 1), nn.BatchNorm2d(d), nn.ReLU(), nn.ConvTranspose2d(d, self.output_dim, 4, 2, 1), nn.Tanh()) utilis.initialize_weights(self)
def __init__(self, input_dim=100, output_dim=1, input_size=32): super(generator, self).__init__() self.input_dim = input_dim self.output_dim = output_dim self.input_size = input_size self.fc = nn.Sequential( nn.Linear(self.input_dim, 1024), nn.BatchNorm1d(1024), nn.ReLU(), nn.Linear(1024, 128 * (self.input_size // 4) * (self.input_size // 4)), nn.BatchNorm1d(128 * (self.input_size // 4) * (self.input_size // 4)), nn.ReLU(), ) self.deconv = nn.Sequential( nn.ConvTranspose2d(128, 64, 4, 2, 1), nn.BatchNorm2d(64), nn.ReLU(), nn.ConvTranspose2d(64, self.output_dim, 4, 2, 1), nn.Tanh()) utilis.initialize_weights(self)
def __init__(self, input_dim=1, output_dim=1, input_size=32): super(discriminator, self).__init__() self.input_dim = input_dim self.output_dim = output_dim self.input_size = input_size self.conv = nn.Sequential( nn.Conv2d(self.input_dim, 64, 4, 2, 1), nn.LeakyReLU(0.2), nn.Conv2d(64, 128, 4, 2, 1), nn.BatchNorm2d(128), nn.LeakyReLU(0.2), ) self.fc = nn.Sequential( nn.Linear(128 * (self.input_size // 4) * (self.input_size // 4), 1024), nn.BatchNorm1d(1024), nn.LeakyReLU(0.2), nn.Linear(1024, self.output_dim), ) utilis.initialize_weights(self)
def __init__(self, input_dim=1, output_dim=1, input_size=32): super(discriminator, self).__init__() self.input_dim = input_dim self.output_dim = output_dim self.input_size = input_size d = 128 self.conv = nn.Sequential( nn.Conv2d(self.input_dim, d, 4, 2, padding=1), #1 nn.LeakyReLU(0.2), nn.Conv2d(d, d * 2, 4, 2, 1), #2 nn.BatchNorm2d(d * 2), nn.LeakyReLU(0.2), nn.Conv2d(d * 2, d * 4, 4, 2, 1), #3 nn.BatchNorm2d(d * 4), nn.LeakyReLU(0.2), nn.Conv2d(d * 4, d * 8, 4, 2, 1), #4 nn.BatchNorm2d(d * 8), nn.LeakyReLU(0.2), nn.Conv2d(d * 8, 1, 4, 1, 0), #5 nn.Sigmoid()) utilis.initialize_weights(self)