【小白从小学Python、C、Java】
【Python全国计算机等级考试】
【Python数据分析考试必会题】
● 标题与摘要
Python数据分析
混淆矩阵

● 选择题
以下关于混淆矩阵说法错误的是:
A TP是被正确分类的正例个数
B FN是被错误分类的正例个数
C 主对角元素是不同类别样例被正确分类的个数
D 可以用来评定监督学习算法的性能

​● 问题解析
1.混淆矩阵是用来呈现一个算法分类结果的矩阵。对于k元分类,其实它就是一个k行乘k列的表格,用来记录不同类别的样例被正确分类和错误分类的个数;
2.对于一个二分类的混淆矩阵来说,若规定标签为0的样例为正例,标签为1的样例为负例(举例理解:实际生活中根据用户特征数据,判断是否会出现办理信用卡后欺诈银行的案例:标签1表示该用户会出现诈骗,标签0是该用户不会出现诈骗),则:
2.1.TP是指被正确分类的正例个数,即:真实标签为0,预测的标签也为0的样例个数;
2.2.NP是指被错误分类的正例个数,即:真实标签为0,预测的标签为1的样例个数;
2.3.TN是指被正确分类的负例个数,即:真实标签为1,预测的标签也为1的样例个数;
2.4.FN是指被错误分类的负例个数,即:真实标签为1,预测的标签为0的样例个数;
3.在混淆矩阵中,主对角线元素表示的是不同类别样例被正确分类的个数,如附图1所示,主对角线第一个元素表示真实标签为0,预测结果也为0的样例个数,主对角线第二个元素表示真实标签为1,预测结果也为1的样例个数;
4.混淆矩阵一般用于有监督学习的分类算法中,通过混淆矩阵可以看出不同类别的样例被正确分类和错误分类的个数,一般认为被错误分类的样例个数越少,算法的性能就越优。

​● 附图
图1 sklearn.metrics模块实现绘制混淆矩阵

● 附图代码
from sklearn.metrics import confusion_matrix
from sklearn.metrics import ConfusionMatrixDisplay
y_true = [1, 1, 0, 0, 0, 1, 0, 0, 1, 0, 1, 1, 1, 0, 1, 1, 0, 1]
y_prediction = [1, 1, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 1, 1, 0, 1]
cm = confusion_matrix(y_true, y_prediction)
cm_display = ConfusionMatrixDisplay(cm).plot()

● 正确答案
B

● 温馨期待
期待大家提出宝贵建议,互相交流,收获更大,助教:qmy

欢迎大家转发,一起传播知识和正能量,帮助到更多人。期待大家提出宝贵改进建议,互相交流,收获更大。辛苦大家转发时注明出处(也是咱们公益编程交流群的入口网址),刘经纬老师共享知识相关文件下载地址为:http://liujingwei.cn

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐