classification_report#
- sklearn.metrics.classification_report(y_true, y_pred, *, labels=None, target_names=None, sample_weight=None, digits=2, output_dict=False, zero_division='warn')#
构建一个文本报告,展示主要的分类指标。
更多信息请参阅 用户指南 。
- Parameters:
- y_true1d array-like, 或标签指示器数组 / 稀疏矩阵
真实目标值(正确的)。
- y_pred1d array-like, 或标签指示器数组 / 稀疏矩阵
分类器返回的估计目标值。
- labels形状为 (n_labels,) 的数组, 默认=None
可选的标签索引列表,包含在报告中。
- target_names形状为 (n_labels,) 的数组, 默认=None
与标签匹配的可选显示名称(顺序相同)。
- sample_weight形状为 (n_samples,) 的数组, 默认=None
样本权重。
- digitsint, 默认=2
格式化输出浮点值的位数。 当
output_dict
为True
时,这将被忽略,返回的值将不会被四舍五入。- output_dictbool, 默认=False
如果为 True,返回字典格式的输出。
Added in version 0.20.
- zero_division{“warn”, 0.0, 1.0, np.nan}, 默认=”warn”
设置在除零时返回的值。如果设置为 “warn”,这相当于 0,但也会引发警告。
Added in version 1.3:
np.nan
选项已添加。
- Returns:
- reportstr 或 dict
每个类别的精度、召回率、F1 分数的文本摘要。 如果 output_dict 为 True,则返回字典。字典的结构如下:
{'label 1': {'precision':0.5, 'recall':1.0, 'f1-score':0.67, 'support':1}, 'label 2': { ... }, ... }
报告的平均值包括宏平均(未加权平均每标签)、加权平均(支持加权平均每标签)和样本平均(仅适用于多标签分类)。 微平均(总真阳性、假阴性和假阳性的平均值)仅在多标签或多类且包含子集类时显示,因为它对应于准确性,否则所有指标都相同。 有关平均值的更多详细信息,请参阅
precision_recall_fscore_support
。请注意,在二分类中,正类的召回率也称为“敏感性”;负类的召回率是“特异性”。
See also
precision_recall_fscore_support
计算每个类别的精度、召回率、F 值和支持。
confusion_matrix
计算混淆矩阵以评估分类的准确性。
multilabel_confusion_matrix
为每个类别或样本计算混淆矩阵。
Examples
>>> from sklearn.metrics import classification_report >>> y_true = [0, 1, 2, 2, 2] >>> y_pred = [0, 0, 2, 2, 1] >>> target_names = ['class 0', 'class 1', 'class 2'] >>> print(classification_report(y_true, y_pred, target_names=target_names)) precision recall f1-score support class 0 0.50 1.00 0.67 1 class 1 0.00 0.00 0.00 1 class 2 1.00 0.67 0.80 3 accuracy 0.60 5 macro avg 0.50 0.56 0.49 5 weighted avg 0.70 0.60 0.61 5 >>> y_pred = [1, 1, 0] >>> y_true = [1, 1, 1] >>> print(classification_report(y_true, y_pred, labels=[1, 2, 3])) precision recall f1-score support 1 1.00 0.67 0.80 3 2 0.00 0.00 0.00 0 3 0.00 0.00 0.00 0 micro avg 1.00 0.67 0.80 3 macro avg 0.33 0.22 0.27 3 weighted avg 1.00 0.67 0.80 3
Gallery examples#
识别手写数字
使用特征脸和支持向量机进行人脸识别的示例
ANOVA SVM 管道
网格搜索与交叉验证的自定义重拟合策略
用于数字分类的受限玻尔兹曼机特征
具有异构数据源的列转换器
标签传播数字主动学习
标签传播数字:展示性能