我有一个由18260个输入字段和4个输出组成的大数据集。我正在使用Keras和Tensorflow建立一个神经网络,可以检测出可能的输出。
不过,我尝试了许多解决方案,但除非在所有模型层中使用sigmoid
激活函数,否则精度不会超过55%,第一个模型层除外,如下所示:
def baseline_model(optimizer= 'adam' , init= 'random_uniform'):
# create model
model = Sequential()
model.add(Dense(40, input_dim=18260, activation="relu", kernel_initializer=init))
model.add(Dense(40, activation="sigmoid", kernel_initializer=init))
model.add(Dense(40, activation="sigmoid", kernel_initializer=init))
model.add(Dense(10, activation="sigmoid", kernel_initializer=init))
model.add(Dense(4, activation="sigmoid", kernel_initializer=init))
model.summary()
# Compile model
model.compile(loss='sparse_categorical_crossentropy', optimizer=optimizer, metrics=['accuracy'])
return model
在所有层中使用sigmoid
激活是否正确?如上图所示,使用乙状结肠时,准确率达到99.9%。所以我想知道模型实现中是否有问题。
目前没有回答
相关问题 更多 >
编程相关推荐