我有一个分类问题,目标包含5个类,15个特征(全部连续) 并有100万用于培训数据,50万用于验证数据。 例如
shape of X_train = (1000000,15)
shape of X_validation = (500000,15)
首先,我使用了随机森林,该平均森林的平均得分为88%。准确性。
之后,我尝试了许多神经网络体系结构,最好的获得了平均80%的平均水平。训练和验证数据的准确性均低于随机森林。 (我对设计神经网络架构了解不多)
以下是我的NN架构中最好的之一。 (平均准确度约为80%)
model = Sequential()
model.add(Dense(1000, input_dim=15, activation='relu'))
model.add(Dropout(0.1))
model.add(Dense(900, activation='relu'))
model.add(Dropout(0.1))
model.add(Dense(800, activation='relu'))
model.add(Dropout(0.1))
model.add(Dense(700, activation='relu'))
model.add(Dropout(0.1))
model.add(Dense(600, activation='relu'))
model.add(Dense(5, activation='softmax'))#output layer
adadelta = Adadelta()
model.compile(loss='categorical_crossentropy', optimizer=adadelta, metrics=['accuracy'])
批量大小= 128,纪元= 100
我已阅读此question。答案指出,NN需要大量数据和一些调整。我认为我的数据大小足够好,并且我还尝试了更高的辍学率和L2调整,但仍然无法正常工作。 可能是什么问题?