def modeling(self, l = [49, 30, 10, 3]):
"""
generate model
"""
self.c_name = 'conv'
n_cv_flt, n_cv_ln = self.n_cv_flt, self.n_cv_ln
cv_activation = self.cv_activation
model = Sequential()
# Direct: input_shape should be (l,0) not (l)
# if l, it assume a scalar for an input feature.
#model.add(Dense( l[1], input_shape=(l[0],)))
# Convolution
print( "n_cv_flt, n_cv_ln, cv_activation", n_cv_flt, n_cv_ln, cv_activation)
#model.add(Convolution1D( n_cv_flt, n_cv_ln, activation=cv_activation,
# border_mode='same', input_shape=(1, l[0]), name = 'conv'))
model.add(Convolution1D( n_cv_flt, n_cv_ln, activation=cv_activation,
border_mode='same', input_shape=(l[0],1), name = self.c_name))
model.add(Flatten())
model.add(Dense( l[1]))
model.add(Activation('relu'))
model.add(Dropout(0.2))
model.add(Dense( l[2]))
model.add(Activation('relu'))
model.add(Dropout(0.2))
model.add(Dense( l[3]))
model.add(Activation('softmax'))
self.layer_dict = dict([(layer.name, layer) for layer in model.layers])
return model
评论列表
文章目录