主要内容

平均

计算多类问题中平均受试者工作特征(ROC)曲线的性能指标

    描述

    例子

    玻璃钢TPR阈值AUC] =平均水平(rocObj类型对象中存储的性能指标的平均值rocmetrics对象rocObj对于多类分类问题,使用中指定的平均方法类型.函数返回平均误报率(玻璃钢)及平均真阳性率(TPR)的每个阈值阈值.函数也会返回AUC, ROC曲线下面积由玻璃钢而且TPR

    例子

    全部折叠

    为一个多类分类问题计算性能度量rocmetrics对象,然后使用平均函数。的输出绘制平均ROC曲线平均

    加载fisheriris数据集。矩阵包含150种不同花朵的花朵尺寸。向量物种列出每种花的种类。物种包含三种不同的花名。

    负载fisheriris

    训练一个分类树,将观察结果分类为三个标签中的一个。使用10倍交叉验证交叉验证模型。

    rng (“默认”%的再现性Mdl = fitctree(量、物种,Crossval =“上”);

    计算验证倍数观察的分类分数。

    [~,分数]= kfoldPredict (Mdl);大小(分数)
    ans =1×2150年3

    输出分数矩阵的大小150——- - - - - -3..的列顺序分数按照类的顺序Mdl,存储在Mdl。一会

    创建一个rocmetrics对象的真实标签物种分类分数在分数.的列顺序分数使用Mdl。一会

    rocObj = rocmetrics(物种,分数,Mdl.ClassNames);

    rocmetrics计算不同阈值下的FPR和TPR,并得到每个类的AUC值。

    使用宏观平均法计算性能指标的平均值,包括不同阈值下的FPR和TPR以及AUC值。

    (玻璃钢,TPR、阈值、AUC) =平均(rocObj,“宏”);

    绘制平均ROC曲线,显示平均AUC值。包含(0,0)使曲线从原点开始(0,0)

    情节([0;玻璃钢],[0;TPR])包含(“假阳性”) ylabel (“真阳性率”)标题(“平均ROC曲线”)举行情节([0,1],[0,1],“k——”)传说(加入([“Macro-average (AUC = "AUC,“)”]),...位置=“东南”)轴持有

    图中包含一个axes对象。标题为Average ROC Curve的坐标轴对象包含两个类型为line的对象。该对象表示macro average (AUC = 0.97876)。

    方法也可以创建平均ROC曲线情节函数。指定AverageROCType = "宏"用宏观平均法计算平均ROC曲线的度量。

    情节(rocObj AverageROCType =“宏”,一会= [])

    图中包含一个axes对象。标题为ROC Curve的axis对象包含两个类型为roccurve、line的对象。该对象表示宏观平均(AUC = 0.9788)。

    输入参数

    全部折叠

    对象评估分类性能,指定为rocmetrics对象。

    平均方法,指定为“微观”“宏”,或“加权”

    • “微观”(micro-averaging) -平均通过处理所有指标找到平均性能指标one-versus-all二分类问题作为一个二分类问题。该函数计算组合二元分类问题的混淆矩阵分量,然后利用混淆矩阵的值计算平均FPR和TPR。

    • “宏”(macro-averaging) -平均计算FPR和TPR的平均值,通过对所有一对一对全二元分类问题的平均值。

    • “加权”(加权macro-averaging)平均利用宏观平均法和先验类概率计算FPR和TPR的加权平均值之前的属性rocObj)作为权重。

    算法类型决定输出参数的向量的长度(玻璃钢TPR,阈值).有关更多细节,请参见平均绩效指标

    数据类型:字符|字符串

    输出参数

    全部折叠

    平均假阳性率,作为数字向量返回。

    平均真阳性率,作为数字矢量返回。

    分类分数的阈值,函数在该阈值处找到每个平均性能度量值(玻璃钢而且TPR),作为一个向量返回。

    平均ROC曲线下面积组成的玻璃钢而且TPR,作为数值标量返回。

    更多关于

    全部折叠

    受试者工作特征(ROC)曲线

    ROC曲线显示不同分类评分阈值的真阳性率与假阳性率。

    真阳性率和假阳性率定义如下:

    • 真阳性率(TPR),又称召回率或灵敏度-TP / (TP + FN),其中TP为真阳性数,FN为假阴性数

    • 假阳性率(FPR),也称为沉降或1-特异性FP / (TN + FP),其中FP为假阳性数,TN为真阴性数

    ROC曲线上的每个点对应于一个特定阈值的一对TPR和FPR值。您可以通过改变阈值来找到不同的TPR和FPR值对,然后使用这些对创建一个ROC曲线。对于每个类,rocmetrics使用所有不同的调整分值作为阈值来创建ROC曲线。

    对于多类分类问题,rocmetrics制定了一套one-versus-all二值分类问题为每个类别有一个二值问题,并利用相应的二值问题为每个类别找到一个ROC曲线。每个二元问题都假设一类是正的,其余的都是负的。

    对于二进制分类问题,如果指定分类分数为矩阵,rocmetrics提出了两个一元对全二元分类问题。每一个问题都将一个类视为正类而另一个类视为负类rocmetrics发现两条ROC曲线。用其中一条曲线来评价二元分类问题。

    有关更多细节,请参见ROC曲线与绩效指标

    ROC曲线下面积

    ROC曲线下的面积(AUC)对应于ROC曲线(TPR值)相对于FPR的积分玻璃钢0玻璃钢1

    AUC提供了跨越所有可能阈值的综合性能度量。AUC值在此范围内01, AUC值越大,分类器性能越好。

    一对全(OVA)编码设计

    OVA编码设计将多类分类问题简化为一组二进制分类问题。在这种编码设计中,每个二进制分类将一个类视为正类,其余类视为负类。rocmetrics采用OVA编码设计进行多类分类,并采用类为正的二进制分类对每个类进行性能评估。

    例如,三个类的OVA编码设计制定了三个二进制分类:

    二进制1 二进制 2 二进制3 类1 1 1 1 二班 1 1 1 3班 1 1 1

    每一行对应一个类,每一列对应一个二进制分类问题。第一个二元分类假设类1是一个正类,其余的类是负类。rocmetrics利用第一个二元分类问题来评估第一个类的性能。

    算法

    全部折叠

    调整了多类分类问题的分数

    对于每个类,rocmetrics调整分类分数(输入参数分数rocmetrics)相对于其他课程的分数(如果你指定的话)分数作为一个矩阵。具体地说,给定观察值的班级的调整分数是班级的分数与其他班级分数最大值之间的差值。

    例如,如果你有年代1年代2年代3.在一排分数对于三个类别的分类问题,调整后的分值为年代1-马克斯年代2年代3.),年代2-马克斯年代1年代3.),年代3.-马克斯年代1年代2)]

    rocmetrics使用每个类的调整分值计算性能指标。

    对于二进制分类问题,您可以指定分数作为一个两列矩阵或列向量。使用两列矩阵是一个更简单的选择,因为预测函数将分类分数作为矩阵返回,您可以传递给该矩阵rocmetrics.如果你在一个两列矩阵中传递分数,rocmetrics按照调整多类分类分数的相同方式调整分数,并计算两个类的性能指标。您可以使用这两个类中的一个的度量值来评估二进制分类问题。返回的类的度量值rocmetrics传递一个两列矩阵时,它们等价于返回的度量值rocmetrics当将类的分类分数指定为列向量时。

    选择功能

    • 您可以使用情节函数创建平均ROC曲线。函数返回一个ROCCurve对象包含XDataYData阈值,AUC属性,这些属性对应于输出参数玻璃钢TPR阈值,AUC平均函数,分别。示例请参见绘制多类分类器的平均ROC曲线

    参考文献

    [1]塞巴斯蒂亚尼,法。“自动文本分类中的机器学习。”ACM计算调查34岁的没有。1(2002年3月):1 - 47。

    版本历史

    介绍了R2022a

    Baidu
    map