def create_g4(self): depth = 32 + 32 + 32 + 32 dim = 8 channel = 3 momentum = 0.9 dropout = 0.3 alpha = 0.2 self.G.add(Dense(dim * dim * depth, input_dim=self.noise_size)) self.G.add(Reshape((dim, dim, depth))) MyDCGAN.add_cbl(self.G, depth, 5, 1, alpha=alpha) self.G.add(UpSampling2D()) MyDCGAN.add_dbr(self.G, int(depth), 4, 2) self.G.add(UpSampling2D()) MyDCGAN.add_dbr(self.G, int(depth / 2), 4, 2) self.G.add(Conv2D(channel, 7, strides=1, padding='same')) self.G.add(Activation('tanh')) self.G.summary()
def create_d5(self): depth = 64 dim = 4 channel = 3 momentum = 0.9 dropout = 0.4 alpha = 0.2 self.D.add( Conv2D(depth, 11, strides=4, input_shape=self.input_shape, padding='same')) self.D.add(LeakyReLU(alpha=alpha)) self.D.add(Dropout(dropout)) MyDCGAN.add_cbl(self.D, depth * 2, 11, 4, alpha) self.D.add(Dropout(dropout)) MyDCGAN.add_cbl(self.D, depth * 4, 11, 4, alpha) self.D.add(Dropout(dropout)) MyDCGAN.add_cbl(self.D, depth * 8, 5, 2, alpha) self.D.add(Flatten()) self.D.add(Dropout(dropout)) self.D.add(Dense(1)) self.D.add(Activation('sigmoid')) self.D.summary()
def create_d1(self): depth = 64 alpha = 0.2 channel = 3 self.D.add( Conv2D(depth * channel, 4, strides=2, input_shape=(256, 256, 3), padding='same')) self.D.add(LeakyReLU(alpha=alpha)) for i in range(1, 5): MyDCGAN.add_cbl(self.D, 64 * int(np.power(2, i)) * channel, 4, 2, alpha=0.2, bn=True) self.D.add(Flatten()) self.D.add(Dense(1)) self.D.add(Activation('sigmoid')) self.D.summary()
def create_g2(self): depth = 64 dim = 16 alpha = 0.2 channel = 3 self.G.add(Dense(depth * dim * dim, input_dim=self.noise_size)) self.G.add(Reshape((dim, dim, depth))) MyDCGAN.add_cbl(self.G, depth, 5, 1, 0.2) MyDCGAN.add_dbr(self.G, depth, 11, 4) MyDCGAN.add_cbl(self.G, int(depth / 2), 4, 1, 0.2) MyDCGAN.add_dbr(self.G, int(depth / 2), 7, 4) MyDCGAN.add_cbl(self.G, int(depth / 4), 5, 1, 0.2) self.G.add(Conv2D(channel, 7, strides=1, padding='same')) self.G.summary()
def create_d3(self): depth = 64 alpha = 0.2 channel = 3 dropout = 0.4 self.D.add( Conv2D(depth, 3, input_shape=self.input_shape, padding='same')) self.D.add(LeakyReLU(alpha=alpha)) MyDCGAN.add_cbl(self.D, depth * 2, 4, 2, 0.2) MyDCGAN.add_cbl(self.D, depth * 4, 4, 2, 0.2) MyDCGAN.add_cbl(self.D, depth * 8, 4, 2, 0.2) self.D.add(Flatten()) self.D.add(Dropout(dropout)) self.D.add(Dense(1)) self.D.add(Activation('sigmoid')) self.D.summary()