Python keras.layers.Dropout() Examples
The following are 30
code examples of keras.layers.Dropout().
You can vote up the ones you like or vote down the ones you don't like,
and go to the original project or source file by following the links above each example.
You may also want to check out all available functions/classes of the module
keras.layers
, or try the search function
.
Example #1
Source File: model.py From Image-Caption-Generator with MIT License | 11 votes |
def RNNModel(vocab_size, max_len, rnnConfig, model_type): embedding_size = rnnConfig['embedding_size'] if model_type == 'inceptionv3': # InceptionV3 outputs a 2048 dimensional vector for each image, which we'll feed to RNN Model image_input = Input(shape=(2048,)) elif model_type == 'vgg16': # VGG16 outputs a 4096 dimensional vector for each image, which we'll feed to RNN Model image_input = Input(shape=(4096,)) image_model_1 = Dropout(rnnConfig['dropout'])(image_input) image_model = Dense(embedding_size, activation='relu')(image_model_1) caption_input = Input(shape=(max_len,)) # mask_zero: We zero pad inputs to the same length, the zero mask ignores those inputs. E.g. it is an efficiency. caption_model_1 = Embedding(vocab_size, embedding_size, mask_zero=True)(caption_input) caption_model_2 = Dropout(rnnConfig['dropout'])(caption_model_1) caption_model = LSTM(rnnConfig['LSTM_units'])(caption_model_2) # Merging the models and creating a softmax classifier final_model_1 = concatenate([image_model, caption_model]) final_model_2 = Dense(rnnConfig['dense_units'], activation='relu')(final_model_1) final_model = Dense(vocab_size, activation='softmax')(final_model_2) model = Model(inputs=[image_input, caption_input], outputs=final_model) model.compile(loss='categorical_crossentropy', optimizer='adam') return model
Example #2
Source File: train_ann.py From subsync with Apache License 2.0 | 8 votes |
def ann_model(input_shape): inp = Input(shape=input_shape, name='mfcc_in') model = inp model = Conv1D(filters=12, kernel_size=(3), activation='relu')(model) model = Conv1D(filters=12, kernel_size=(3), activation='relu')(model) model = Flatten()(model) model = Dense(56)(model) model = Activation('relu')(model) model = BatchNormalization()(model) model = Dropout(0.2)(model) model = Dense(28)(model) model = Activation('relu')(model) model = BatchNormalization()(model) model = Dense(1)(model) model = Activation('sigmoid')(model) model = Model(inp, model) return model
Example #3
Source File: imagenet.py From vergeml with MIT License | 7 votes |
def _makenet(x, num_layers, dropout, random_seed): from keras.layers import Dense, Dropout dropout_seeder = random.Random(random_seed) for i in range(num_layers - 1): # add intermediate layers if dropout: x = Dropout(dropout, seed=dropout_seeder.randint(0, 10000))(x) x = Dense(1024, activation="relu", name='dense_layer_{}'.format(i))(x) if dropout: # add the final dropout layer x = Dropout(dropout, seed=dropout_seeder.randint(0, 10000))(x) return x
Example #4
Source File: models.py From tartarus with MIT License | 6 votes |
def get_model_41(params): embedding_weights = pickle.load(open("../data/datasets/train_data/embedding_weights_w2v-google_MSD-AG.pk","rb")) # main sequential model model = Sequential() model.add(Embedding(len(embedding_weights[0]), params['embedding_dim'], input_length=params['sequence_length'], weights=embedding_weights)) #model.add(Dropout(params['dropout_prob'][0], input_shape=(params['sequence_length'], params['embedding_dim']))) model.add(LSTM(2048)) #model.add(Dropout(params['dropout_prob'][1])) model.add(Dense(output_dim=params["n_out"], init="uniform")) model.add(Activation(params['final_activation'])) logging.debug("Output CNN: %s" % str(model.output_shape)) if params['final_activation'] == 'linear': model.add(Lambda(lambda x :K.l2_normalize(x, axis=1))) return model # CRNN Arch for audio
Example #5
Source File: localizer.py From cnn-levelset with MIT License | 6 votes |
def __init__(self, model_path=None): if model_path is not None: self.model = self.load_model(model_path) else: # VGG16 last conv features inputs = Input(shape=(7, 7, 512)) x = Convolution2D(128, 1, 1)(inputs) x = Flatten()(x) # Cls head h_cls = Dense(256, activation='relu', W_regularizer=l2(l=0.01))(x) h_cls = Dropout(p=0.5)(h_cls) cls_head = Dense(20, activation='softmax', name='cls')(h_cls) # Reg head h_reg = Dense(256, activation='relu', W_regularizer=l2(l=0.01))(x) h_reg = Dropout(p=0.5)(h_reg) reg_head = Dense(4, activation='linear', name='reg')(h_reg) # Joint model self.model = Model(input=inputs, output=[cls_head, reg_head])
Example #6
Source File: bigan.py From Keras-GAN with MIT License | 6 votes |
def build_discriminator(self): z = Input(shape=(self.latent_dim, )) img = Input(shape=self.img_shape) d_in = concatenate([z, Flatten()(img)]) model = Dense(1024)(d_in) model = LeakyReLU(alpha=0.2)(model) model = Dropout(0.5)(model) model = Dense(1024)(model) model = LeakyReLU(alpha=0.2)(model) model = Dropout(0.5)(model) model = Dense(1024)(model) model = LeakyReLU(alpha=0.2)(model) model = Dropout(0.5)(model) validity = Dense(1, activation="sigmoid")(model) return Model([z, img], validity)
Example #7
Source File: mnist.py From blackbox-attacks with MIT License | 6 votes |
def modelA(): model = Sequential() model.add(Conv2D(64, (5, 5), padding='valid')) model.add(Activation('relu')) model.add(Conv2D(64, (5, 5))) model.add(Activation('relu')) model.add(Dropout(0.25)) model.add(Flatten()) model.add(Dense(128)) model.add(Activation('relu')) model.add(Dropout(0.5)) model.add(Dense(FLAGS.NUM_CLASSES)) return model
Example #8
Source File: dualgan.py From Keras-GAN with MIT License | 6 votes |
def build_generator(self): X = Input(shape=(self.img_dim,)) model = Sequential() model.add(Dense(256, input_dim=self.img_dim)) model.add(LeakyReLU(alpha=0.2)) model.add(BatchNormalization(momentum=0.8)) model.add(Dropout(0.4)) model.add(Dense(512)) model.add(LeakyReLU(alpha=0.2)) model.add(BatchNormalization(momentum=0.8)) model.add(Dropout(0.4)) model.add(Dense(1024)) model.add(LeakyReLU(alpha=0.2)) model.add(BatchNormalization(momentum=0.8)) model.add(Dropout(0.4)) model.add(Dense(self.img_dim, activation='tanh')) X_translated = model(X) return Model(X, X_translated)
Example #9
Source File: cnn_rnn_crf.py From Jtyoui with MIT License | 6 votes |
def create_model(): inputs = Input(shape=(length,), dtype='int32', name='inputs') embedding_1 = Embedding(len(vocab), EMBED_DIM, input_length=length, mask_zero=True)(inputs) bilstm = Bidirectional(LSTM(EMBED_DIM // 2, return_sequences=True))(embedding_1) bilstm_dropout = Dropout(DROPOUT_RATE)(bilstm) embedding_2 = Embedding(len(vocab), EMBED_DIM, input_length=length)(inputs) con = Conv1D(filters=FILTERS, kernel_size=2 * HALF_WIN_SIZE + 1, padding='same')(embedding_2) con_d = Dropout(DROPOUT_RATE)(con) dense_con = TimeDistributed(Dense(DENSE_DIM))(con_d) rnn_cnn = concatenate([bilstm_dropout, dense_con], axis=2) dense = TimeDistributed(Dense(len(chunk_tags)))(rnn_cnn) crf = CRF(len(chunk_tags), sparse_target=True) crf_output = crf(dense) model = Model(input=[inputs], output=[crf_output]) model.compile(loss=crf.loss_function, optimizer=Adam(), metrics=[crf.accuracy]) return model
Example #10
Source File: model.py From n2n-watermark-remove with MIT License | 6 votes |
def get_unet_model(input_channel_num=3, out_ch=3, start_ch=64, depth=4, inc_rate=2., activation='relu', dropout=0.5, batchnorm=False, maxpool=True, upconv=True, residual=False): def _conv_block(m, dim, acti, bn, res, do=0): n = Conv2D(dim, 3, activation=acti, padding='same')(m) n = BatchNormalization()(n) if bn else n n = Dropout(do)(n) if do else n n = Conv2D(dim, 3, activation=acti, padding='same')(n) n = BatchNormalization()(n) if bn else n return Concatenate()([m, n]) if res else n def _level_block(m, dim, depth, inc, acti, do, bn, mp, up, res): if depth > 0: n = _conv_block(m, dim, acti, bn, res) m = MaxPooling2D()(n) if mp else Conv2D(dim, 3, strides=2, padding='same')(n) m = _level_block(m, int(inc * dim), depth - 1, inc, acti, do, bn, mp, up, res) if up: m = UpSampling2D()(m) m = Conv2D(dim, 2, activation=acti, padding='same')(m) else: m = Conv2DTranspose(dim, 3, strides=2, activation=acti, padding='same')(m) n = Concatenate()([n, m]) m = _conv_block(n, dim, acti, bn, res) else: m = _conv_block(m, dim, acti, bn, res, do) return m i = Input(shape=(None, None, input_channel_num)) o = _level_block(i, start_ch, depth, inc_rate, activation, dropout, batchnorm, maxpool, upconv, residual) o = Conv2D(out_ch, 1)(o) model = Model(inputs=i, outputs=o) return model
Example #11
Source File: mnist.py From blackbox-attacks with MIT License | 6 votes |
def modelB(): model = Sequential() model.add(Dropout(0.2, input_shape=(FLAGS.IMAGE_ROWS, FLAGS.IMAGE_COLS, FLAGS.NUM_CHANNELS))) model.add(Convolution2D(64, 8, 8, subsample=(2, 2), border_mode='same')) model.add(Activation('relu')) model.add(Convolution2D(128, 6, 6, subsample=(2, 2), border_mode='valid')) model.add(Activation('relu')) model.add(Convolution2D(128, 5, 5, subsample=(1, 1))) model.add(Activation('relu')) model.add(Dropout(0.5)) model.add(Flatten()) model.add(Dense(FLAGS.NUM_CLASSES)) return model
Example #12
Source File: mnist.py From blackbox-attacks with MIT License | 6 votes |
def modelC(): model = Sequential() model.add(Convolution2D(128, 3, 3, border_mode='valid', input_shape=(FLAGS.IMAGE_ROWS, FLAGS.IMAGE_COLS, FLAGS.NUM_CHANNELS))) model.add(Activation('relu')) model.add(Convolution2D(64, 3, 3)) model.add(Activation('relu')) model.add(Dropout(0.25)) model.add(Flatten()) model.add(Dense(128)) model.add(Activation('relu')) model.add(Dropout(0.5)) model.add(Dense(FLAGS.NUM_CLASSES)) return model
Example #13
Source File: mnist.py From blackbox-attacks with MIT License | 6 votes |
def modelD(): model = Sequential() model.add(Flatten(input_shape=(FLAGS.IMAGE_ROWS, FLAGS.IMAGE_COLS, FLAGS.NUM_CHANNELS))) model.add(Dense(300, init='he_normal', activation='relu')) model.add(Dropout(0.5)) model.add(Dense(300, init='he_normal', activation='relu')) model.add(Dropout(0.5)) model.add(Dense(300, init='he_normal', activation='relu')) model.add(Dropout(0.5)) model.add(Dense(300, init='he_normal', activation='relu')) model.add(Dropout(0.5)) model.add(Dense(FLAGS.NUM_CLASSES)) return model
Example #14
Source File: cnn_main.py From Convolutional-Networks-for-Stock-Predicting with MIT License | 6 votes |
def create_model(): model = Sequential() model.add(Convolution2D(32, 3, 3, border_mode='valid', input_shape=(100, 100, 3))) model.add(Activation('relu')) model.add(Convolution2D(32, 3, 3)) model.add(Activation('relu')) model.add(MaxPooling2D(pool_size=(2, 2))) model.add(Dropout(0.25)) model.add(Convolution2D(64, 3, 3, border_mode='valid')) model.add(Activation('relu')) model.add(Convolution2D(64, 3, 3)) model.add(Activation('relu')) model.add(MaxPooling2D(pool_size=(2, 2))) model.add(Dropout(0.25)) model.add(Flatten()) model.add(Dense(256)) model.add(Activation('relu')) model.add(Dropout(0.5)) model.add(Dense(2)) model.add(Activation('softmax')) return model
Example #15
Source File: BuildModel.py From HDLTex with MIT License | 6 votes |
def buildModel_DNN(Shape, nClasses, nLayers=3,Number_Node=100, dropout=0.5): ''' buildModel_DNN(nFeatures, nClasses, nLayers=3,Numberof_NOde=100, dropout=0.5) Build Deep neural networks (Multi-layer perceptron) Model for text classification Shape is input feature space nClasses is number of classes nLayers is number of hidden Layer Number_Node is number of unit in each hidden layer dropout is dropout value for solving overfitting problem ''' model = Sequential() model.add(Dense(Number_Node, input_dim=Shape)) model.add(Dropout(dropout)) for i in range(0,nLayers): model.add(Dense(Number_Node, activation='relu')) model.add(Dropout(dropout)) model.add(Dense(nClasses, activation='softmax')) model.compile(loss='sparse_categorical_crossentropy', optimizer='RMSprop', metrics=['accuracy']) return model
Example #16
Source File: train_basic_models.py From face_landmark_dnn with MIT License | 5 votes |
def facial_landmark_cnn(input_shape=INPUT_SHAPE, output_size=OUTPUT_SIZE): # Stage 1 # img_input = Input(shape=input_shape) ## Block 1 ## x = Conv2D(32, (3,3), strides=(1,1), name='S1_conv1')(img_input) x = BatchNormalization()(x) x = Activation('relu', name='S1_relu_conv1')(x) x = MaxPooling2D(pool_size=(2,2), strides=(2,2), name='S1_pool1')(x) ## Block 2 ## x = Conv2D(64, (3,3), strides=(1,1), name='S1_conv2')(x) x = BatchNormalization()(x) x = Activation('relu', name='S1_relu_conv2')(x) x = Conv2D(64, (3,3), strides=(1,1), name='S1_conv3')(x) x = BatchNormalization()(x) x = Activation('relu', name='S1_relu_conv3')(x) x = MaxPooling2D(pool_size=(2,2), strides=(2,2), name='S1_pool2')(x) ## Block 3 ## x = Conv2D(64, (3,3), strides=(1,1), name='S1_conv4')(x) x = BatchNormalization()(x) x = Activation('relu', name='S1_relu_conv4')(x) x = Conv2D(64, (3,3), strides=(1,1), name='S1_conv5')(x) x = BatchNormalization()(x) x = Activation('relu', name='S1_relu_conv5')(x) x = MaxPooling2D(pool_size=(2,2), strides=(2,2), name='S1_pool3')(x) ## Block 4 ## x = Conv2D(256, (3,3), strides=(1,1), name='S1_conv8')(x) x = BatchNormalization()(x) x = Activation('relu', name='S1_relu_conv8')(x) x = Dropout(0.2)(x) ## Block 5 ## x = Flatten(name='S1_flatten')(x) x = Dense(2048, activation='relu', name='S1_fc1')(x) x = Dense(output_size, activation=None, name='S1_predictions')(x) model = Model([img_input], x, name='facial_landmark_model') return model
Example #17
Source File: keras-CNN-mnist-2.0.py From keras-mnist-workshop with Apache License 2.0 | 5 votes |
def deeper_cnn_model(): model = Sequential() # A Convolution2D sera a nossa camada de entrada. Podemos observar que ela possui # 30 mapas de features com tamanho de 5 × 5 e 'relu' como funcao de ativacao. model.add(Conv2D(30, (5, 5), input_shape=(1, 28, 28), activation='relu')) # A camada MaxPooling2D sera nossa segunda camada onde teremos um amostragem de # dimensoes 2 × 2. model.add(MaxPooling2D(pool_size=(2, 2))) # Uma nova camada convolucional com 15 mapas de features com dimensoes de 3 × 3 # e 'relu' como funcao de ativacao. model.add(Conv2D(15, (3, 3), activation='relu')) # Uma nova subamostragem com um pooling de dimensoes 2 x 2. model.add(MaxPooling2D(pool_size=(2, 2))) # Dropout com probabilidade de 20% model.add(Dropout(0.2)) # Flatten preparando os dados para a camada fully connected. model.add(Flatten()) # Camada fully connected de 128 neuronios. model.add(Dense(128, activation='relu')) # Seguida de uma nova camada fully connected de 64 neuronios model.add(Dense(64, activation='relu')) # A camada de saida possui o numero de neuronios compativel com o # numero de classes a serem classificadas, com uma funcao de ativacao # do tipo 'softmax'. model.add(Dense(num_classes, activation='softmax', name='preds')) model.compile(loss='categorical_crossentropy', optimizer='adam', metrics=['accuracy']) return model
Example #18
Source File: keras.py From stagesepx with MIT License | 5 votes |
def create_model(self) -> Sequential: """ model structure. you can overwrite this method to build your own model """ logger.info(f"creating keras sequential model") if K.image_data_format() == "channels_first": input_shape = (1, *self.data_size) else: input_shape = (*self.data_size, 1) model = Sequential() model.add(Conv2D(32, (3, 3), input_shape=input_shape)) model.add(Activation("relu")) model.add(MaxPooling2D(pool_size=(2, 2))) model.add(Conv2D(32, (3, 3))) model.add(Activation("relu")) model.add(MaxPooling2D(pool_size=(2, 2))) model.add(Conv2D(64, (3, 3))) model.add(Activation("relu")) model.add(MaxPooling2D(pool_size=(2, 2))) model.add(Flatten()) model.add(Dense(64)) model.add(Activation("relu")) model.add(Dropout(0.5)) model.add(Dense(6)) model.add(Activation("softmax")) model.compile( loss="sparse_categorical_crossentropy", optimizer="rmsprop", metrics=["accuracy"], ) logger.info("model created") return model
Example #19
Source File: keras-mnist-4.0.py From keras-mnist-workshop with Apache License 2.0 | 5 votes |
def base_model(): model = Sequential() model.add(Dense(num_pixels, input_dim=num_pixels, kernel_initializer='normal', activation='relu')) model.add(Dropout(0.2)) model.add(Dense(second_layer, input_dim=num_pixels, kernel_initializer='normal', activation='relu')) model.add(Dense(third_layer, input_dim=second_layer, kernel_initializer='normal', activation='relu')) model.add(Dense(num_classes, kernel_initializer='normal', activation='softmax', name='preds')) adam = keras.optimizers.Adam(lr=0.01, decay=1e-6) model.compile(loss='categorical_crossentropy', optimizer=adam, metrics=['accuracy']) return model
Example #20
Source File: sakaguchi.py From PyShortTextCategorization with MIT License | 5 votes |
def train(self, text, nb_epoch=100, dropout_rate=0.01, optimizer='rmsprop'): """ Train the scRNN model. :param text: training corpus :param nb_epoch: number of epochs (Default: 100) :param dropout_rate: dropout rate (Default: 0.01) :param optimizer: optimizer (Default: "rmsprop") :type text: str :type nb_epoch: int :type dropout_rate: float :type optimizer: str """ self.dictionary = Dictionary([nospace_tokenize(text), default_specialsignals.values()]) self.onehotencoder.fit(np.arange(len(self.dictionary)).reshape((len(self.dictionary), 1))) xylist = [(xvec.transpose(), yvec.transpose()) for xvec, yvec in self.preprocess_text_train(text)] xtrain = np.array([item[0] for item in xylist]) ytrain = np.array([item[1] for item in xylist]) # neural network here model = Sequential() model.add(LSTM(self.nb_hiddenunits, return_sequences=True, batch_input_shape=(None, self.batchsize, len(self.concatcharvec_encoder)*3))) model.add(Dropout(dropout_rate)) model.add(TimeDistributed(Dense(len(self.dictionary)))) model.add(Activation('softmax')) # compile... more arguments model.compile(loss='categorical_crossentropy', optimizer=optimizer) # training model.fit(xtrain, ytrain, epochs=nb_epoch) self.model = model self.trained = True
Example #21
Source File: train_multi_v2.py From DeepFashion with Apache License 2.0 | 5 votes |
def create_model(input_shape, optimizer='Adagrad', learn_rate=None, decay=0.0, momentum=0.0, activation='relu', dropout_rate=0.5): logging.debug('input_shape {}'.format(input_shape)) logging.debug('input_shape {}'.format(type(input_shape))) # input_shape = (7, 7, 512) # Optimizer optimizer, learn_rate = get_optimizer(optimizer, learn_rate, decay, momentum) # Model model = Sequential() model.add(Flatten(input_shape=input_shape)) model.add(Dense(256, activation=activation)) model.add(Dropout(dropout_rate)) model.add(Dense(len(class_names), activation='softmax')) # Binary to Multi classification changes # model.add(Dense(1, activation='sigmoid')) logging.debug('model summary {}'.format(model.summary())) # Compile model.compile(optimizer=optimizer, loss='sparse_categorical_crossentropy', metrics=['accuracy']) # Binary to Multi classification changes logging.info('optimizer:{} learn_rate:{} decay:{} momentum:{} activation:{} dropout_rate:{}'.format( optimizer, learn_rate, decay, momentum, activation, dropout_rate)) return model
Example #22
Source File: mlearn_for_image.py From 12306 with MIT License | 5 votes |
def learn(): (train_x, train_y, sample_weight), (test_x, test_y) = load_data() datagen = ImageDataGenerator(horizontal_flip=True, vertical_flip=True) train_generator = datagen.flow(train_x, train_y, sample_weight=sample_weight) base = VGG16(weights='imagenet', include_top=False, input_shape=(None, None, 3)) for layer in base.layers[:-4]: layer.trainable = False model = models.Sequential([ base, layers.BatchNormalization(), layers.Conv2D(64, (3, 3), activation='relu', padding='same'), layers.GlobalAveragePooling2D(), layers.BatchNormalization(), layers.Dense(64, activation='relu'), layers.BatchNormalization(), layers.Dropout(0.20), layers.Dense(80, activation='softmax') ]) model.compile(optimizer=optimizers.RMSprop(lr=1e-5), loss='sparse_categorical_crossentropy', metrics=['accuracy']) model.summary() reduce_lr = ReduceLROnPlateau(verbose=1) model.fit_generator(train_generator, epochs=400, steps_per_epoch=100, validation_data=(test_x[:800], test_y[:800]), callbacks=[reduce_lr]) result = model.evaluate(test_x, test_y) print(result) model.save('12306.image.model.h5', include_optimizer=False)
Example #23
Source File: seriesnet.py From seriesnet with MIT License | 5 votes |
def DC_CNN_Model(length): input = Input(shape=(length,1)) l1a, l1b = DC_CNN_Block(32,2,1,0.001)(input) l2a, l2b = DC_CNN_Block(32,2,2,0.001)(l1a) l3a, l3b = DC_CNN_Block(32,2,4,0.001)(l2a) l4a, l4b = DC_CNN_Block(32,2,8,0.001)(l3a) l5a, l5b = DC_CNN_Block(32,2,16,0.001)(l4a) l6a, l6b = DC_CNN_Block(32,2,32,0.001)(l5a) l6b = Dropout(0.8)(l6b) #dropout used to limit influence of earlier data l7a, l7b = DC_CNN_Block(32,2,64,0.001)(l6a) l7b = Dropout(0.8)(l7b) #dropout used to limit influence of earlier data l8 = Add()([l1b, l2b, l3b, l4b, l5b, l6b, l7b]) l9 = Activation('relu')(l8) l21 = Conv1D(1,1, activation='linear', use_bias=False, kernel_initializer=TruncatedNormal(mean=0.0, stddev=0.05, seed=42), kernel_regularizer=l2(0.001))(l9) model = Model(input=input, output=l21) adam = optimizers.Adam(lr=0.00075, beta_1=0.9, beta_2=0.999, epsilon=None, decay=0.0, amsgrad=False) model.compile(loss='mae', optimizer=adam, metrics=['mse']) return model
Example #24
Source File: train_agent_kerasrl.py From gym-malware with MIT License | 5 votes |
def generate_dense_model(input_shape, layers, nb_actions): model = Sequential() model.add(Flatten(input_shape=input_shape)) model.add(Dropout(0.1)) # drop out the input to make model less sensitive to any 1 feature for layer in layers: model.add(Dense(layer)) model.add(BatchNormalization()) model.add(ELU(alpha=1.0)) model.add(Dense(nb_actions)) model.add(Activation('linear')) print(model.summary()) return model
Example #25
Source File: sgan.py From Keras-GAN with MIT License | 5 votes |
def build_discriminator(self): model = Sequential() model.add(Conv2D(32, kernel_size=3, strides=2, input_shape=self.img_shape, padding="same")) model.add(LeakyReLU(alpha=0.2)) model.add(Dropout(0.25)) model.add(Conv2D(64, kernel_size=3, strides=2, padding="same")) model.add(ZeroPadding2D(padding=((0,1),(0,1)))) model.add(LeakyReLU(alpha=0.2)) model.add(Dropout(0.25)) model.add(BatchNormalization(momentum=0.8)) model.add(Conv2D(128, kernel_size=3, strides=2, padding="same")) model.add(LeakyReLU(alpha=0.2)) model.add(Dropout(0.25)) model.add(BatchNormalization(momentum=0.8)) model.add(Conv2D(256, kernel_size=3, strides=1, padding="same")) model.add(LeakyReLU(alpha=0.2)) model.add(Dropout(0.25)) model.add(Flatten()) model.summary() img = Input(shape=self.img_shape) features = model(img) valid = Dense(1, activation="sigmoid")(features) label = Dense(self.num_classes+1, activation="softmax")(features) return Model(img, [valid, label])
Example #26
Source File: context_encoder.py From Keras-GAN with MIT License | 5 votes |
def build_generator(self): model = Sequential() # Encoder model.add(Conv2D(32, kernel_size=3, strides=2, input_shape=self.img_shape, padding="same")) model.add(LeakyReLU(alpha=0.2)) model.add(BatchNormalization(momentum=0.8)) model.add(Conv2D(64, kernel_size=3, strides=2, padding="same")) model.add(LeakyReLU(alpha=0.2)) model.add(BatchNormalization(momentum=0.8)) model.add(Conv2D(128, kernel_size=3, strides=2, padding="same")) model.add(LeakyReLU(alpha=0.2)) model.add(BatchNormalization(momentum=0.8)) model.add(Conv2D(512, kernel_size=1, strides=2, padding="same")) model.add(LeakyReLU(alpha=0.2)) model.add(Dropout(0.5)) # Decoder model.add(UpSampling2D()) model.add(Conv2D(128, kernel_size=3, padding="same")) model.add(Activation('relu')) model.add(BatchNormalization(momentum=0.8)) model.add(UpSampling2D()) model.add(Conv2D(64, kernel_size=3, padding="same")) model.add(Activation('relu')) model.add(BatchNormalization(momentum=0.8)) model.add(Conv2D(self.channels, kernel_size=3, padding="same")) model.add(Activation('tanh')) model.summary() masked_img = Input(shape=self.img_shape) gen_missing = model(masked_img) return Model(masked_img, gen_missing)
Example #27
Source File: ccgan.py From Keras-GAN with MIT License | 5 votes |
def build_generator(self): """U-Net Generator""" def conv2d(layer_input, filters, f_size=4, bn=True): """Layers used during downsampling""" d = Conv2D(filters, kernel_size=f_size, strides=2, padding='same')(layer_input) d = LeakyReLU(alpha=0.2)(d) if bn: d = BatchNormalization(momentum=0.8)(d) return d def deconv2d(layer_input, skip_input, filters, f_size=4, dropout_rate=0): """Layers used during upsampling""" u = UpSampling2D(size=2)(layer_input) u = Conv2D(filters, kernel_size=f_size, strides=1, padding='same', activation='relu')(u) if dropout_rate: u = Dropout(dropout_rate)(u) u = BatchNormalization(momentum=0.8)(u) u = Concatenate()([u, skip_input]) return u img = Input(shape=self.img_shape) # Downsampling d1 = conv2d(img, self.gf, bn=False) d2 = conv2d(d1, self.gf*2) d3 = conv2d(d2, self.gf*4) d4 = conv2d(d3, self.gf*8) # Upsampling u1 = deconv2d(d4, d3, self.gf*4) u2 = deconv2d(u1, d2, self.gf*2) u3 = deconv2d(u2, d1, self.gf) u4 = UpSampling2D(size=2)(u3) output_img = Conv2D(self.channels, kernel_size=4, strides=1, padding='same', activation='tanh')(u4) return Model(img, output_img)
Example #28
Source File: classifiers.py From MesoNet with Apache License 2.0 | 5 votes |
def init_model(self): x = Input(shape = (IMGWIDTH, IMGWIDTH, 3)) x1 = self.InceptionLayer(1, 4, 4, 2)(x) x1 = BatchNormalization()(x1) x1 = MaxPooling2D(pool_size=(2, 2), padding='same')(x1) x2 = self.InceptionLayer(2, 4, 4, 2)(x1) x2 = BatchNormalization()(x2) x2 = MaxPooling2D(pool_size=(2, 2), padding='same')(x2) x3 = Conv2D(16, (5, 5), padding='same', activation = 'relu')(x2) x3 = BatchNormalization()(x3) x3 = MaxPooling2D(pool_size=(2, 2), padding='same')(x3) x4 = Conv2D(16, (5, 5), padding='same', activation = 'relu')(x3) x4 = BatchNormalization()(x4) x4 = MaxPooling2D(pool_size=(4, 4), padding='same')(x4) y = Flatten()(x4) y = Dropout(0.5)(y) y = Dense(16)(y) y = LeakyReLU(alpha=0.1)(y) y = Dropout(0.5)(y) y = Dense(1, activation = 'sigmoid')(y) return KerasModel(inputs = x, outputs = y)
Example #29
Source File: classifiers.py From MesoNet with Apache License 2.0 | 5 votes |
def init_model(self): x = Input(shape = (IMGWIDTH, IMGWIDTH, 3)) x1 = Conv2D(8, (3, 3), padding='same', activation = 'relu')(x) x1 = BatchNormalization()(x1) x1 = MaxPooling2D(pool_size=(2, 2), padding='same')(x1) x2 = Conv2D(8, (5, 5), padding='same', activation = 'relu')(x1) x2 = BatchNormalization()(x2) x2 = MaxPooling2D(pool_size=(2, 2), padding='same')(x2) x3 = Conv2D(16, (5, 5), padding='same', activation = 'relu')(x2) x3 = BatchNormalization()(x3) x3 = MaxPooling2D(pool_size=(2, 2), padding='same')(x3) x4 = Conv2D(16, (5, 5), padding='same', activation = 'relu')(x3) x4 = BatchNormalization()(x4) x4 = MaxPooling2D(pool_size=(4, 4), padding='same')(x4) y = Flatten()(x4) y = Dropout(0.5)(y) y = Dense(16)(y) y = LeakyReLU(alpha=0.1)(y) y = Dropout(0.5)(y) y = Dense(1, activation = 'sigmoid')(y) return KerasModel(inputs = x, outputs = y)
Example #30
Source File: train_multi.py From DeepFashion with Apache License 2.0 | 5 votes |
def create_model(input_shape, optimizer='Adagrad', learn_rate=None, decay=0.0, momentum=0.0, activation='relu', dropout_rate=0.5): logging.debug('input_shape {}'.format(input_shape)) logging.debug('input_shape {}'.format(type(input_shape))) # input_shape = (7, 7, 512) # Optimizer optimizer, learn_rate = get_optimizer(optimizer, learn_rate, decay, momentum) # Model model = Sequential() model.add(Flatten(input_shape=input_shape)) model.add(Dense(256, activation=activation)) model.add(Dropout(dropout_rate)) model.add(Dense(len(class_names), activation='softmax')) # Binary to Multi classification changes # model.add(Dense(1, activation='sigmoid')) logging.debug('model summary {}'.format(model.summary())) # Compile model.compile(optimizer=optimizer, loss='sparse_categorical_crossentropy', metrics=['accuracy']) # Binary to Multi classification changes logging.info('optimizer:{} learn_rate:{} decay:{} momentum:{} activation:{} dropout_rate:{}'.format( optimizer, learn_rate, decay, momentum, activation, dropout_rate)) return model