我想仅以FC层来融合keras模型

时间:2019-03-15 20:04:05

标签: machine-learning keras neural-network deep-learning

我有一个只有FC层(密集)的keras模型。我得到了训练图像大小227*227100班级,每个班级都有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])

下面是上面代码的图。

enter image description here

我用10K到20K时期进行了不同的超参数实验。在某些时期之后的损失没有减少,并且列车的准确性也没有改善。

我尝试使用Different Optimizers(&hyper-params)和正则化。除了优化程序和规则化程序,没有什么超级参数可以使用,对吧?

如果有人可以帮助我整合模型,那就太好了!谢谢!

1 个答案:

答案 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时。