用Keras构建模型evaluate时候,输出loss和进度条最终的loss不一样?
来源:2-10 实战批归一化、激活函数、dropout
捡海星的小男孩
2019-09-25
如题,请问是什么原因?
写回答
1回答
-
我理解的是,在进度条上,训练集的loss就是每个batch的loss,所以如果后面你在全部训练集上求结果,那么就是不一样的。你可以试试在fit的时候加个测试集,测试集会一次全测完,所以evaluate也是一样的。
我们后面有自定义的训练流程,大概的伪代码就是:
for loop: train_x_batch, train_y_batch = get_data loss, accuracy = model(train_x_batch, train_y_batch) print(loss, accuracy) if end: val_loss, val_accuracy = model(full_eval_set) print(val_loss, val_accuracy)
10
相似问题