深度学习理论-—Python导入库和函数、两个评价指标(Top-5错误率与Top-1错误率)、ROC曲线与AUC概念

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


一、 关于导入库和导入函数

import 模块:导入一个模块,注:相当于导入的是一个文件夹,每次使用模块中的函数都要确定引用

from…import XX:导入的是一个模块中的一个函数;注:相当于导入的是一个文件夹中的文件,是绝对路径

from…import * :是把一个模块中所有的函数都导入进来, 注:相当于导入的是一个文件夹中的所有文件,所有函数都是绝对路径

二、有关两个评价指标(Top-5错误率与Top-1错误率)

1.Top-5错误率
即对一个图片,如果概率前五中包含正确答案,即认为正确。

2.Top-1错误率
即对一个图片,如果概率最大的是正确答案,才认为正确。
ImageNet 举办一年一度的软件竞赛,叫做(ImageNet Large Scale Visual Recognition Challenge,ILSVRC)。主要内容是通过算法程序实现正确分类和探测识别物体与场景,评价标准就是Top-5 错误率。

三、confusion matrix 混淆矩阵、ROC曲线、AUC

1.confusion matrix 混淆矩阵

混淆矩阵就是分别统计分类模型归错类,归对类的观测值个数,然后把结果放在一个表里展示出来。

真实值是positive,模型认为是positive的数量(True Positive=TP)

真实值是positive,模型认为是negative的数量(False Negative=FN):这就是统计学上的第二类错误(Type II Error)

真实值是negative,模型认为是positive的数量(False Positive=FP):这就是统计学上的第一类错误(Type I Error)

真实值是negative,模型认为是negative的数量(True Negative=TN)

在这里插入图片描述

2.ROC曲线

受试者工作特征曲线ROC就是以假阳性概率(False positive rate)为横轴,真阳性(True positive rate)为纵轴所组成的坐标图。
真正例率(True Positive Rate,简称TPR):表示当前预测为正样本的数据中,真实的正样本占所有正样本的比例

          TPR = TP / (TP + FN)

假正例率(False Positive Rate,简称FPR):表示当前被分到正样本的数据中,真实的负样本占所有负样本的比例。

          FPR = FP / (TN + FP)

据模型的预测结果对样本进行排序,按顺序逐个把样本作为正样本进行预测,每次计算出TPR和FPT,分别以FPR为横坐标、以TPR为纵坐标作图,就得到了ROC曲线。ROC曲线示意图如下:
在这里插入图片描述

3.AUC

AUC (Area under Curve):ROC 曲线下的面积,介于 0.1 和 1 之间,作为数值可以直观的评价分类器的好坏,值越大越好。
AUC 值作为评价标准,被定义为 ROC 曲线下的面积,取值范围一般在 0.5 和 1 之间。使用AUC 值作为评价标准是因为很多时候ROC曲线并不能清晰的说明哪个分类器的效果更好,而作为一个数值,对应 AUC 更大的分类器效果更好。
AUC 的常用计算方法有:
(1) 梯形法则:早期由于测试样本有限,我们得到的 AUC 曲线呈阶梯状。曲线上的每个点向 X 轴做垂线,得到若干梯形,这些梯形面积之和也就是 AUC;
(2) Mann-Whitney 统计量: 统计正负样本对中,有多少个组中的正样本的概率大于负样本的概率。这种估计随着样本规模的扩大而逐渐逼近真实值。

AUC = 1,是完美分类器,采用这个预测模型时,存在至少一个阈值能得出完美预测。绝大多数预测的场合,不存在完美分类器。
0.5 < AUC < 1,优于随机猜测。这个分类器(模型)妥善设定阈值的话,能有预测价值。AUC = 0.5,跟随机猜测一样(例:丢铜板),模型没有预测价值。
AUC < 0.5,比随机猜测还差;但只要总是反预测而行,就优于随机猜测。
居中的图片: 在这里插入图片描述

总结

本文深度学习的一些零碎知识点进行了部分整理,在后续学习中还会不断完善和补充。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,关于绘制ROC曲线的问题,首先需要了解ROC曲线的含义和作用。 ROC曲线是一种绘制真正率(TPR)和假正率(FPR)的二维曲线图,通常用于评估一个二元分类器的性能。其中TPR是指被正确预测为正类/真实为正类的样本占真实正类样本的比率;FPR是指被错误预测为正类/真实为负类的样本占真实负类样本的比率。ROC曲线的图像越接近左上角,说明模型性能越好。 下面详细介绍绘制ROC曲线的步骤: 1. 首先导入必要的,包括numpy、matplotlib和sklearn.metrics。 ``` import numpy as np from sklearn.metrics import roc_curve, auc import matplotlib.pyplot as plt ``` 2. 假设我们有一个二元分类器,其预测值和真实值分别为y_pred和y_true,对它们进行ROC曲线绘制。 ``` fpr, tpr, thresholds = roc_curve(y_true, y_pred) roc_auc = auc(fpr, tpr) ``` 其中,roc_curve函数可以计算各种阈值下的真正率和假正率,而auc函数则可以计算ROC曲线下的面积。 3. 将计算得到的真正率和假正率传入matplotlib.pyplot的plot函数中,绘制ROC曲线。 ``` plt.plot(fpr, tpr, lw=1, alpha=0.8, label='ROC curve (AUC = %0.2f)' % (roc_auc)) ``` 其中lw参数控制曲线的线宽度,alpha参数控制曲线的透明度,label参数控制曲线的标签。 4. 绘制参考线,包括直线y=x和曲线AUC=0.5的参考线。 ``` plt.plot([0, 1], [0, 1], color='navy', lw=1, linestyle='--') plt.plot([0, 1], [0, 1], color='gray', lw=1, linestyle='--') ``` 其中,color参数控制线的颜色,linestyle参数控制线的线型。 5. 添加图例和标签等,使绘图更加美观。 ``` plt.xlabel('False Positive Rate') plt.ylabel('True Positive Rate') plt.title('Receiver Operating Characteristic (ROC) Curve') plt.legend(loc="lower right") plt.show() ``` 其中,xlabel和ylabel函数分别控制x轴和y轴的标签,title函数控制图像的标题,legend函数控制图例的位置。 绘制完毕后,我们就可以通过ROC曲线来评估分类器的性能,并根据需要调整分类器的参数来改进性能。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值