我针对回归问题训练了Keras(2.3.1版)顺序模型,并取得了很好的结果。训练后,我立即对测试集进行预测,然后将模型以及权重保存在单独的文件中。
要检查模型的速度,我最近将它们加载并在单个测试输入数组上进行了预测,但结果相差甚远,这应该意味着训练结束时的权重与已加载。
.username {
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
.title{
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
.wrap {
display: grid;
width: 150px;
grid-template-columns: auto minmax(20%,100%);
}
和loaded model
进行预测。他们两个的结果是一致的。因此,至少,它在两个文件中都保存了相同的权重,无论它们有错。我的问题是,该建议以及其他一些建议(例如设置固定的种子)应该在培训之前 落实到位。训练我的模型需要4到5天!如何解决这个问题而不必重新训练模型?
这是我拟合模型的方式:
loaded weights
然后我保存模型和权重:
hist = model.fit(
X_train, y_train,
batch_size=batch_size,
verbose=1,
epochs=epochs,
validation_split=0.2
)
最终,我像这样加载模型并从中进行预测:
model.save("path to .h5 file")
model.save_weights("path to .hdf5 file")