我有一个只有FC层(密集)的keras模型。我得到了训练图像大小227*227
和100
班级,每个班级都有1张火车图像,我想过拟合并获得100%的训练精度。
问题: 我试过照顾模型超参数,但它并没有收敛到100%的训练精度。虽然,甚至只是FC层。
这是我的代码:
X_train, y_train = ...
# Create a Keras Model
model = Sequential()
model.add(Dense(100, input_dim=input_dim, activation='softmax',
kernel_regularizer=regularizers.l2(0.01),
activity_regularizer=regularizers.l1(0.01)))
model.compile(optimizer='rmsprop',
loss='categorical_crossentropy',
metrics=['accuracy'])
model.summary()
# Callback and training
csv_logger = CSVLogger('training_log_v1.csv')
model.fit(x_train, y_train, epochs=10000, batch_size=100, callbacks=[csv_logger])
下面是上面代码的图。
我用10K到20K时期进行了不同的超参数实验。在某些时期之后的损失没有减少,并且列车的准确性也没有改善。
我尝试使用Different Optimizers(&hyper-params)和正则化。除了优化程序和规则化程序,没有什么超级参数可以使用,对吧?
如果有人可以帮助我整合模型,那就太好了!谢谢!
答案 0 :(得分:0)
我有能力适应。超参数,我曾经过度拟合该实验。
Class: 100
Samples_per_class: 1
kernel_regularizer=regularizers.l2(0.01)
activity_regularizer=regularizers.l1(0.01)
Op: Adam
lr: 0.00001
Epochs set to: 50000
batch_size: 256
在大约12K时,我获得了99%的训练精度,并且持续降低损耗,直到大约25K时。