我有两个问题:
1 / model.evaluate()和model.predict()有什么区别?
2 / Keras如何计算每一个?
答案 0 :(得分:3)
model.evaluate
预测值并计算给定数据集上的模型的损失和所有附加指标。它返回一个包含一个值中的损失和指标的列表。
model.predict
仅根据数据集的输入预测模型的输出。 model.predict
的内部工作在model.evaluate
中使用,但两者的输出都不同,因为它们不会计算相同的内容。
答案 1 :(得分:2)
在model.predict
内部执行model.predict
的过程中,我将首先使用model.evaluate
。 model.predict仅根据模型指示,基于测试集预测输出矩阵。
但是,model.evaluate
在内部执行model.predict
操作,并在模型编译时根据提供的参数计算误差和准确性。例如
model.compile(optimizer=OPTIMIZER, loss='categorical_crossentropy', metrics=['mse','mae','accuracy'])
在这里,我要求模型提供输出mse
,mae
和accuracy
。但是,如果我们执行model.predict
,除了输出矩阵之外,它什么都不会提供,然后关于输出,我们需要计算误差或准确性。另一方面,model.evaluate
是紧凑版本,它将一起计算mse
,mae
和accuracy
,并提供类似
[0.2498760256045422,0.015400263790238618,,0.9456890699253224]
类似于[mse, mae, accuracy]
电话是您的,您可以接听的任何东西。