【发布时间】:2021-05-09 21:04:15
【问题描述】:
我想在不同的数据集上训练一个 cnn,并比较预测准确度和 cnn 训练时间。对于每个数据集,我需要对 CNN 进行多次训练,并选择性能最好的那个。我的第一个问题是为什么我们需要训练几次 CNN ?一次训练后的模型是否保持之前训练的权重或任何信息,或者每次训练都是独立的?
我的第二个问题是,当我们比较 CNN 之间的训练时间时,我们是否也应该比较获得最佳模型之前所需的训练迭代次数?
下面是我训练 100 次模型 (cnn) 并打印最佳 MSE 的示例:
for i in range(100):
history = model.fit(training_data,label_data,
validation_split=0.2,
epochs= nb_epoch, verbose = False,
callbacks=callbacks)
pred= model.predict(test_data)
if(min_MSE > mean_squared_error(label_test, pred)):
model.save('XXX.h5')
min_MSE = mean_squared_error(label_test, pred)
print("The best: ",min_MSE)
提前感谢您的任何澄清!
【问题讨论】: