model.evaluate和model.predict
model.evaluate
输⼊数据和标签,输出损失和精确度.
智能交通网违章查询#评估模型,不输出预测结果
loss,accuracy = model.evaluate(X_test,Y_test)
print('\ntest loss',loss)
print('accuracy',accuracy)
model.predict
输⼊测试数据,输出预测结果
兰博基尼 毒药
(通常⽤在需要得到预测结果的时候)
#模型预测,输⼊测试集,输出预测结果
索兰托柴油版
y_pred = model.predict(X_test,batch_size =1)
两者差异
1、输⼊输出不同
model.evaluate输⼊数据(data)和⾦标准(label),然后将预测结果与⾦标准相⽐较,得到两者误差并输出.
model.predict输⼊数据(data),输出预测结果
2、是否需要真实标签(⾦标准)
volvo卡车model.evaluate需要,因为需要⽐较预测结果与真实标签的误差
model.predict不需要,只是单纯输出预测结果,全程不需要⾦标准的参与.
predict(
x, batch_size=None, verbose=0, steps=None, callbacks=None, max_queue_size=10,
workers=1, use_multiprocessing=False)
参数: x:输⼊样本,格式可以是
汽车品牌价值- Numpy数组(或类似array的数组)或数组列表(如果模型具有多个输⼊)。
- TensorFlow张量或张量列表(如果模型具有多个输⼊)。
- tf.data数据集。
-⽣成器或keras.utils.Sequence实例
batch_size:每个梯度更新的样本数。如果未指定,batch_size将默认为32 verbose:模型 steps:宣布预测回合完成之前的步骤总数(样本批次)。忽略默认值None callbacks:预测期间应⽤的回调函数列表
max_queue_size=10:仅⽤于generator或keras.utils.Sequence输⼊。⽣成器队列的最⼤⼤⼩。如果未指定,max_queue_size将默认为10
workers=1:仅⽤于generator或keras.utils.Sequence输⼊。使⽤基于进程的线程时,要启动的最⼤进程数。如果未指定,worker将默认为1。如果为0,将在主线程上执⾏⽣成器
哈同高速公路
use_multiprocessing=False:仅⽤于generator或keras.utils.Sequence输⼊。如果为True,则使⽤基于进程的线程。如果未指定,则use_multiprocessing将默认为False。