当我们不指定validation_split或validation set时,keras如何计算准确性和损失?

时间:2018-07-22 11:29:48

标签: python machine-learning keras

当我们执行这样的操作时:

model.compile(Adam(lr=0.0001),loss='sparse_categorical_crossentropy',metrics=['accuracy'])

model.fit(train_sample, label, batch_size=10, nb_epoch=25, verbose=2)

关于哪些数据的损失和准确性 (output like loss: 0.6971 - acc: 0.4965)的计算依据是? 它是隐式生成验证集,还是仅根据训练数据给我们提供错误?

2 个答案:

答案 0 :(得分:0)

如果为验证拆分添加浮点数,则它将在单独的拆分验证集上输出验证损失。如果您不提供默认的验证数据(如您的情况),则将返回训练损失的运行平均值。

fit函数的详细信息在https://keras.io/models/model/#fit中进行描述。

答案 1 :(得分:0)

平原损失和准确性始终是训练集上的电脑,因为这是学习的指导。计算验证损失时,将其打印为“ val_loss”,其准确性与“ val_accuracy”相同。因此,如果名称中没有“ val”,则意味着它必须在训练集中进行评估。