def cuda_cnn(self):
model = Sequential()
model.add(Conv2D(32, (5, 5),
border_mode='same',
activation='relu',
input_shape=self.ip_shape[1:]))
model.add(MaxPooling2D(pool_size=(2, 2)))
# model.add(contrast normalization)
model.add(Conv2D(32, (5, 5), border_mode='valid', activation='relu'))
model.add(AveragePooling2D(border_mode='same'))
# model.add(contrast normalization)
model.add(Conv2D(64, (5, 5), border_mode='valid', activation='relu'))
model.add(AveragePooling2D(border_mode='same'))
model.add(Flatten())
model.add(Dense(16, activation='relu'))
model.add(Dropout(0.5))
model.add(Dense(10, activation='softmax'))
adam = keras.optimizers.Adam(lr=self.learning_rate, beta_1=0.9, beta_2=0.999, epsilon=1e-08, decay=0.0)
model.compile(loss='categorical_crossentropy', optimizer=adam, metrics=["accuracy"])
return model
评论列表
文章目录