本博客采取的例子为垃圾邮件预测。预测结果(标签)为0或1.
1.classification_report()函数:
其官方说明文档如下:
其中文翻译如下:
y_true:1d类数组,或标签指示器数组/稀疏矩阵
真实值(正确)目标值。
y_pred:1d类似数组,或标签指示器数组/稀疏矩阵
分类器返回的预测值。
labels:数组形状(n_标签),默认值=无
要包含在报告中的标签索引的可选列表。
其返回值为根据这组样本的真实值与预测值计算出的‘precision’、‘recall’、‘fi-score’、‘support’值。
- support:真实值每个标签(类别)出现的次数
- precision精度:某个标签的预测值等于真实值个数 除以 预测值中共有多少个该标签(预测为0实际值也为0的个数 除以 预测值为0的个数)
- recall召回率:某个标签的预测值等于真实值个数 除以 真实值中共有多少个该标签(预测为0实际值也为0的个数 除以 真实值为0的个数)
- f-1值是精确度和召回率的调和平均值
- 精确度和召回率都高时, F1值也会高. F1值在1时达到最佳值(完美的精确度和召回率),最差为0.在二元分类中, F1值是测试准确度的量度
2.confusion_matrix()函数,其官方说明文档如下:
其主要参数意义同上,这里就不再重复赘述了,其生成的结果为一个混淆矩阵。以垃圾邮件系统为例,其生成的矩阵类型形如。
真实值为x | 真实值为y | |
预测值为x | data1 | data2 |
预测值为y | data3 | data4 |
直接上演示!