性能度量——Confusion Matrix混淆矩阵

本文详细介绍了在极度偏斜数据集中如何使用混淆矩阵来评估分类算法性能。混淆矩阵包含精准率和召回率,它们分别衡量预测正确性的不同方面。F1分数用于平衡精准率和召回率。此外,还讨论了ROC曲线及其在评估模型性能中的作用。

Confusion Matrix

当数据是极度偏斜的数据集(例如某些罕见疾病)的时候,单纯用分类准确率来评判算法的话就很没用(因为即使你说百分百都是健康的人准确率可能也有百分九十九),可以通过建立混淆矩阵进行分析。
在这里插入图片描述

Precision and Recall

在这里有两个名词Precision精准率Recall召回率
精准率就是我们所关注的那一类事物的预测效果(How many selected items are relevant?),可以理解为做了一百次分类为阳性的预测有多少次是成功的,如前面所说的罕见疾病,精准率在这里就是预测疾病的成功率;
而召回率就是当关注事件真正发生的时候预测到它的效果(How many relevant items are selected?),可以理解为对分类为阳性的样本做预测有多少次是成功的,比如对于所有罕见疾病患者诊断出他真的有病的概率(周志华把它翻译成查准率和查全率让我很懵),计算方法如下:
在这里插入图片描述在这里插入图片描述
用这两个作为指标会比之前简单用预测成功数/预测数得到的准确率更加具体。
举例:如果预测所有人都没罕见疾病而实际上有5个人,即预测全部都是Negative,此时准确率99.95%,

### 创建和解释分类混淆矩阵 #### 定义与作用 在机器学习领域,分类混淆矩阵是一种特定的表格布局,用于展示性能评估的结果。该表不仅显示了真实类别与预测类别的对比情况,而且能够帮助理解模型在哪种类型的错误上更频繁发生。 对于二元分类问题而言,混淆矩阵通常由四个部分组成:真正例(True Positive, TP),假正例(False Positive, FP),真反例(True Negative, TN),以及假反例(False Negative, FN)[^1]。 #### 如何创建 为了构建一个简单混淆矩阵图表,在Python环境中可以利用`sklearn.metrics.confusion_matrix`函数来计算实际值与预测值之间的关系,通过matplotlib库将其可视化: ```python from sklearn.metrics import confusion_matrix import matplotlib.pyplot as plt import seaborn as sns def plot_confusion_matrix(y_true, y_pred): cm = confusion_matrix(y_true, y_pred) ax= plt.subplot() sns.heatmap(cm, annot=True, fmt='g', ax=ax); #annot=True to annotate cells # labels, title and ticks ax.set_xlabel('Predicted Labels');ax.set_ylabel('True Labels') ax.set_title('Confusion Matrix') ax.xaxis.set_ticklabels(['Class_0', 'Class_1']); ax.yaxis.set_ticklabels(['Class_0', 'Class_1']) ``` 此代码片段定义了一个名为`plot_confusion_matrix`的功能,接受两个参数——真实的标签列表(`y_true`)和对应的预测标签列表(`y_pred`)。它会生成热力图形式的混淆矩阵图像[^2]。 #### 解读方法 当查看混淆矩阵时,应该关注以下几个方面: - **准确性(Accuracy)**: 正确预测的比例。 - **精确率(Precision)**: 预测为某个类别的实例中有多少是真的属于这个类别。 - **召回率(Recall)**: 实际上属于某类别的实例有多少被成功识别出来。 - **F1分数(F1 Score)**: 精确率和召回率之间的一种加权平均度量。 这些指标有助于全面了解模型的表现特性及其局限性[^3]。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值