Keras中predict()方法和predict_classes()方法和evaluate()方法

 predict()方法
        当使用predict()方法进行预测时,返回值是数值,表示样本属于每一个类别的概率,我们可以使用numpy.argmax()方法找到样本以最大概率所属的类别作为样本的预测标签。

# 预测样本属于每个类别的概率
print(model.predict(imgs))		# 打印概率
# [[3.3745366e-01 2.2980917e-02 2.0197949e-03 1.2046755e-02 1.9850987e-03
#   1.3152690e-04 4.0220530e-03 1.3779138e-03 5.9722424e-01 2.0758053e-02]
#  [5.0913623e-06 5.6117901e-08 9.7215974e-01 2.0343825e-05 2.3693956e-02
#   1.6027538e-03 7.3659585e-06 2.5106100e-03 5.8250910e-10 1.4506637e-09]
#  [7.1339104e-03 6.1033275e-06 2.1771197e-03 9.7346401e-01 2.2141664e-06
#   1.6861971e-02 8.6817810e-05 1.2291509e-04 4.7768017e-06 1.4035056e-04]]

predict_classes()方法
        当使用predict_classes()方法进行预测时,返回的是类别的索引,即该样本所属的类别标签

       同时只能用于序列模型来预测,不能用于函数式模型

# 预测样本类别
predictions = model.predict_classes(imgs)
print(predictions)
# [8 2 3]

evaluate()方法

输入数据(data)金标准(label),然后将预测结果与金标准相比较,得到两者误差并输出。输出损失精确度.

	# 评估模型,不输出预测结果
	loss,accuracy = model.evaluate(X_test,Y_test)
	print('\ntest loss',loss)
	print('accuracy',accuracy)

你可能感兴趣的:(深度学习代码错误解决,深度学习)