我正在尝试训练希格斯玻色子挑战卡格尔的数据模型.我决定做的第一件事就是创建一个简单的keras模型.我尝试了不同数量和宽度的层,不同的成本函数,不同的优化器在神经元中的不同功能,但训练集的准确度始终在0.65-0.7范围之间.我真的不明白为什么.这是我的一个模型的例子,它非常奇怪:
from keras.layers import Dense, merge, Activation, Dropout
from keras.models import Model
from keras.models import Sequential
from keras.optimizers import SGD
model = Sequential()
model.add(Dense(600, input_shape=(30,),activation="relu"))
model.add(Dropout(0.5))
model.add(Dense(400, activation='relu'))
model.add(Dropout(0.5))
model.add(Dense(100, activation='relu'))
model.add(Dropout(0.5))
model.add(Dense(1, activation='sigmoid'))
sgd = SGD(lr=0.01, decay=1e-6)
model.compile(optimizer='rmsprop',loss='binary_crossentropy',metrics=['accuracy'])
model.fit(train,labels,nb_epoch=1,batch_size=1)
Run Code Online (Sandbox Code Playgroud)
我也试过更大的模型,也得到了这样的准确性.请告诉我我做错了什么.
编辑
我尝试用100个时期训练这个模型,批量大小为0到100,并且损失等于4.9528,准确度再次为0.6924.每个例子总是输出零.