情节
情节接受者操作特征(ROC)曲线和其他性能曲线
描述
图(
创建一个接受者操作特征(ROC)曲线,这是一个阴谋的真阳性率(TPR)和假阳性(玻璃钢),为每个类的rocObj
)一会
财产的rocmetrics
对象rocObj
。该函数是模型操作点对于每一个曲线,并显示的价值ROC曲线下的面积(AUC)和曲线的类名的传奇。
图(___,
使用一个或多个名称参数指定附加选项除了任何输入参数组合在前面的语法。例如,名称=值
)AverageROCType = "宏",一会= []
使用macro-averaging方法计算的平均性能指标和情节的平均ROC曲线。
(
也返回图形对象模型的操作点和对角线。curveObj
,graphicsObjs
)=情节(___)
例子
绘制ROC曲线
负荷预测的样本分类分数和真正的标签分类问题。
负载(“flowersDataResponses.mat”)
trueLabels
是真正的图像分类问题和标签吗分数
是将softmax预测分数。分数
是一个N×K阵列N是观测的数量和K是类的数量。
trueLabels = flowersData.trueLabels;成绩= flowersData.scores;
加载类的名字。列的顺序分数
遵循类的顺序存储在classNames
。
一会= flowersData.classNames;
创建一个rocmetrics
对象通过使用真正的标签trueLabels
和分类评分分数
。指定的列顺序分数
使用一会
。
rocObj = rocmetrics (trueLabels、分数、类名);
rocObj
是一个rocmetrics
对象存储AUC值和每个类的性能指标AUC
和指标
属性。显示AUC
财产。
rocObj.AUC
ans =1 x5单一的行向量0.9781 0.9889 0.9728 0.9809 0.9732
为每个类绘制ROC曲线。
情节(rocObj)
标记的实心圆表示模型的操作点。传说显示类名和AUC值曲线。
画出宏观平均ROC曲线。
情节(rocObj AverageROCType = [“宏”=[]],类名)
情节Precision-Recall曲线和检测错误的权衡(检波器)图
创建一个rocmetrics
对象和情节曲线通过性能情节
函数。指定XAxisMetric
和YAxisMetric
名称-值的参数情节
函数绘制不同类型的性能曲线以外的ROC曲线。如果你当你调用指定新的指标情节
函数,该函数计算新的指标,然后使用它们来绘制曲线。
加载一个样本的标签和分类问题的预测成绩。对于这个示例,有五类:雏菊、蒲公英、玫瑰、向日葵和郁金香。存储在类名一会
。使用生成的分数将softmax预测分数预测
函数。分数
是一个N×K阵列N是观测的数量和K是类的数量。列的顺序分数
遵循类的顺序存储在classNames
。
负载(“flowersDataResponses.mat”)成绩= flowersData.scores;trueLabels = flowersData.trueLabels;一会= flowersData.classNames;
创建一个rocmetrics
对象。的rocmetrics
在不同的阈值函数计算玻璃钢和TPR。
rocObj = rocmetrics (trueLabels、分数、类名);
情节precision-recall曲线第一课。指定y设在度量精度(或阳性预测值)和x设在度量回忆(或真阳性率)。的情节
函数计算新的度量值和情节曲线。计算precision-recall曲线下的面积使用的梯形法trapz
功能,并显示传说中的值。
curveObj =情节(rocObj,一会=类名(1),…YAxisMetric =“PositivePredictiveValue”XAxisMetric =“TruePositiveRate”);xyData = rmmissing ([curveObj。XData curveObj.YData]);auc = trapz (xyData (: 1), xyData (:, 2));传奇(加入([字符串(类名(1))”(AUC = "字符串(auc)“)”),”“),…位置=“西南”)标题(“Precision-Recall曲线”)
情节检测错误的权衡(检波器)为第类图。指定y假阴性率和设在度量x设在度量的误判率。使用一个日志规模x设在和y设在。
f =图;情节(rocObj一会=类名(1),…YAxisMetric =“FalseNegativeRate”XAxisMetric =“FalsePositiveRate”)f.CurrentAxes。XScale =“日志”;f.CurrentAxes。YScale =“日志”;标题(“图”)
情节的置信区间
计算置信区间为玻璃钢和TPR固定阈值通过使用引导样品,和情节TPR的置信区间由使用ROC曲线情节
函数。这个例子需要统计和机器学习的工具箱™。
加载一个样本的标签和分类问题的预测成绩。对于这个示例,有五类:雏菊、蒲公英、玫瑰、向日葵和郁金香。存储在类名一会
。使用生成的分数将softmax预测分数预测
函数。分数
是一个N×K阵列N是观测的数量和K是类的数量。列的顺序分数
遵循类的顺序存储在classNames
。
负载(“flowersDataResponses.mat”)成绩= flowersData.scores;trueLabels = flowersData.trueLabels;一会= flowersData.classNames;
创建一个rocmetrics
对象通过使用真正的标签trueLabels
和分类评分分数
。指定的列顺序分数
使用一会
。指定NumBootstraps
在100年使用100引导样品计算置信区间。
rocObj = rocmetrics (trueLabels,分数,一会,NumBootstraps = 100);
绘制ROC曲线和TPR的置信区间。指定ShowConfidenceIntervals = true
的置信区间。
情节(rocObj ShowConfidenceIntervals = true)
每个曲线周围的阴影区域表示置信区间。rocmetrics
使用分数计算ROC曲线。代表了置信区间估计的不确定性的曲线。
指定一个类来使用一会
名称-值参数。
情节(rocObj ShowConfidenceIntervals = true,一会=“黛西”)
输入参数
rocObj
- - - - - -对象评估分类性能
rocmetrics
对象
对象评估分类性能,指定为一个rocmetrics
对象。
名称-值参数
指定可选的双参数作为Name1 = Value1,…,以=家
,在那里的名字
参数名称和吗价值
相应的价值。名称-值参数必须出现在其他参数,但对的顺序无关紧要。
例子:YAxisMetric = " PositivePredictiveValue " XAxisMetric =“TruePositiveRate”
情节的精度(阳性预测值)与召回(真阳性),代表precision-recall曲线。
AverageROCType
- - - - - -平均ROC曲线的方法
“没有”
(默认)|“微观”
|“宏”
|“加权”
|字符串数组|单元阵列的特征向量
平均ROC曲线的方法,指定为“没有”
,“微观”
,“宏”
,“加权”
、方法名称的字符串数组或单元阵列的方法名称。
如果您指定
“没有”
(默认)情节
函数不创建平均ROC曲线。的AverageROCType
值必须是“没有”
如果情节
创建性能曲线ROC曲线。如果你指定多个方法作为字符串数组或单元阵列的特征向量,然后
情节
功能块多个平均ROC曲线使用指定的方法。如果指定一个或多个平均方法和指定
一会= []
,那么情节
功能块只有平均ROC曲线。
情节
计算平均性能指标的多类分类问题,和情节ROC曲线平均使用这些方法:
“微观”
(micro-averaging) -情节
发现治疗的平均性能指标one-versus-all二元分类问题是一个二元分类问题。函数计算的混淆矩阵组件结合二元分类问题,然后计算平均玻璃钢和TPR使用混淆矩阵的值。“宏”
(macro-averaging) -情节
计算平均值为玻璃钢和TPR平均所有one-versus-all二进制的值分类问题。“加权”
(加权macro-averaging)情节
计算加权平均值为玻璃钢和TPR使用macro-averaging方法和使用类概率(之前之前
的属性rocObj
)作为权重。
算法类型决定的向量的长度XData
,YData
,阈值
的属性ROCCurve
返回的对象,情节
平均ROC曲线。更多细节,请参阅的平均性能指标。
例子:AverageROCType = "宏"
例子:AverageROCType =(“微”、“宏观”)
数据类型:字符
|字符串
一会
- - - - - -类标签的情节
rocObj.ClassNames
(默认)|分类数组|字符数组|字符串数组|逻辑向量|数值向量|单元阵列的特征向量
类标签的阴谋,指定分类,字符,或字符串数组,逻辑或数值向量,或单元阵列的特征向量。和数据类型的值一会
必须匹配的类名的一会
的属性rocObj
。(软件对字符或字符串数组作为细胞阵列特征向量)。
如果你指定多个类标签,
情节
为每个类功能块ROC曲线。如果您指定
一会= []
并指定一个或多个平均方法使用AverageROCType
,那么情节
功能块只有平均ROC曲线。
例子:一会=(“红”、“蓝色”)
数据类型:单
|双
|逻辑
|字符
|字符串
|细胞
|分类
ShowConfidenceIntervals
- - - - - -国旗的置信区间y设在规
假
或0
(默认)|真正的
或1
国旗的置信区间y设在指标(YAxisMetric
),指定为逻辑0
(假
)或1
(真正的
)。
的ShowConfidenceIntervals
值可以是真正的
只有在指标
的属性rocObj
包含的置信区间y设在指标。
例子:ShowConfidenceIntervals = true
使用置信区间需要统计和机器学习的工具箱™。
数据类型:逻辑
ShowDiagonalLine
- - - - - -国旗显示对角线
真正的
或1
|假
或0
国旗显示扩展的对角线(0,0)
来[1]
,指定为逻辑1
(真正的
)或0
(假
)。
默认值是真正的
如果你绘制ROC曲线或平均ROC曲线假
否则。
ROC曲线绘制,对角线代表了一个随机标识符,和通过(0,0)
,[0,1]
,[1]
代表了一个完美的标识符。
例子:ShowDiagonalLine = false
数据类型:逻辑
ShowModelOperatingPoint
- - - - - -国旗显示模型操作点
真正的
或1
|假
或0
标志显示模型操作点,指定为逻辑1
(真正的
)或0
(假
)。
默认值是真正的
ROC曲线,假
平均ROC曲线。的ShowModelOperatingPoint
值必须为中华民国以外的性能曲线是假的。
例子:ShowModelOperatingPoint = false
数据类型:逻辑
XAxisMetric
- - - - - -衡量标准x设在
“FalsePositiveRate”
(默认)|的性能指标|函数处理
规的x设在,指定为一个特征向量或字符串标量的内置指标名称或一个自定义指标名称,或一个函数处理(@metricName
)。
内置的指标——指定下列内置指标名称之一通过使用一个特征向量或字符串标量。
的名字 描述 “TruePositives”
或“tp”
真正的阳性(TP)数量 “FalseNegatives”
或“fn”
假阴性(FN) “FalsePositives”
或“外交政策”
假阳性的数量(FP) “TrueNegatives”
或“tn”
真正的底片(TN)数量 “SumOfTrueAndFalsePositives”
或“tp + fp”
TP和FP的和 “RateOfPositivePredictions”
或“齿”
阳性预测率(RPP), (TP + FP) / (TP + FN + FP + TN)
“RateOfNegativePredictions”
或“rnp”
率的负面预测(RNP), (TN + FN) / (TP + FN + FP + TN)
“准确性”
或“所以”
的准确性, (TP + TN) / (TP + FN + FP + TN)
“TruePositiveRate”
或“tpr”
真阳性率(TPR),也被称为召回或敏感性, TP / (TP + FN)
“FalseNegativeRate”
,“fnr”
,或“小姐”
假阴性率(FNR),或错过率, FN / (TP + FN)
“FalsePositiveRate”
或“玻璃钢”
假阳性率(玻璃钢),也被称为影响或1-specificity, FP / (TN + FP)
“TrueNegativeRate”
,“tnr”
,或“规范”
真阴性率(TNR)或特异性, TN / (TN + FP)
“PositivePredictiveValue”
,“ppv”
,或”前的“
阳性预测值(PPV),或精度, TP / (TP + FP)
“NegativePredictiveValue”
或“净现值”
阴性预测值(NPV), TN / (TN + FN)
“ExpectedCost”
或“ecost”
预期成本,
(TP *成本(P | P) + FN *成本(N | P) + FP *成本(P | N) + TN *成本(N | N)) / (TP + FN + FP + TN)
,在那里成本
是一个2×2的误分类代价矩阵包含吗[0,成本(N | P);成本(P | N), 0]
。成本(N | P)
分类的成本类(是积极的P
)是一种消极类(N
),成本(P | N)
分类的成本是负类作为正类。软件转换
K
——- - - - - -K
指定的矩阵成本
名称-值参数rocmetrics
每个one-versus-all二进制的2×2矩阵问题。有关详细信息,请参见误分类代价矩阵。自定义度量存储在
指标
属性——指定自定义指标的名称存储在指标
输入对象的属性rocObj
。的rocmetrics
函数名一个定制的指标“CustomMetricN”
,在那里N
是指的是自定义的数量指标。例如,指定XAxisMetric = " CustomMetric1 "
使用的第一个自定义指标指标
的指标x设在。自定义指标——指定一个新的自定义指标通过使用一个函数处理。一个自定义函数,它返回一个性能指标必须有这种形式:
度量= customMetric (C、规模、成本)
输出参数
度规
是一个标量值。一个自定义的度量是一个函数的混淆矩阵(
C
)、尺度向量(规模
),和成本矩阵(成本
)。每个one-versus-all二进制软件发现这些输入值的问题。有关详细信息,请参见性能指标。C
是一个2
——- - - - - -2
混淆矩阵组成的(TP, FN; FP, TN)
。规模
是一个2
——- - - - - -1
尺度向量。成本
是一个2
——- - - - - -2
误分类代价矩阵。
的
情节
函数名一个定制的指标“自定义指标”
为axis标签。这个软件不支持自定义指标的交叉验证。金宝app相反,您可以指定使用当你创建一个引导
rocmetrics
对象。
如果你指定一个新的度量而不是一个指标
输入对象的属性rocObj
,情节
函数计算和情节度量值。如果你当你创建计算置信区间rocObj
,情节
功能也为新度量计算置信区间。
的情节
函数忽略了南
在性能指标的值。注意,阳性预测值(PPV)南
为拒绝所有阈值TP
=《外交政策》
=0
和阴性预测值(NPV)南
接受所有的阈值TN
=FN
=0
。更多细节,请参阅阈值、固定指标,和固定的度量值。
例子:XAxisMetric = " FalseNegativeRate "
数据类型:字符
|字符串
|function_handle
YAxisMetric
- - - - - -衡量标准y设在
“TruePositiveRate”
(默认)|的性能指标|函数处理
规的y设在,指定为一个特征向量或字符串标量的内置的指标名称或自定义指标名称,或一个函数处理(@metricName
)。有关详细信息,请参见XAxisMetric
。
例子:YAxisMetric = " FalseNegativeRate "
数据类型:字符
|字符串
|function_handle
输出参数
curveObj
——对象的性能曲线
ROCCurve
对象数组|ROCCurve
对象
对象的性能曲线,作为一个返回ROCCurve
对象或数组ROCCurve
对象。情节
返回一个ROCCurve
对象为每个性能曲线。
使用curveObj
查询和修改属性的情节在创建它。一个属性列表,看到ROCCurve属性。
graphicsObjs
——图形对象
图形阵列
图形对象模型的操作点和对角线,作为一个图形阵列包含返回散射
和行
对象。
graphicsObjs
包含一个散射
为每个模型对象(如果操作点
)和一个ShowModelOperatingPoint
= true行
对角线(如果对象
)。使用ShowDiagonalLine
= truegraphicsObjs
查询和修改属性模型的操作点和对角线在创建了阴谋。一个属性列表,看到散射特性和行属性。
更多关于
接受者操作特征(ROC)曲线
ROC曲线显示了真阳性率与假阳性率不同阈值的分类的分数。
真正的阳性率和假阳性率定义如下:
真阳性率(TPR),也被称为召回或灵敏度
TP / (TP + FN)
TP是真阳性的数量和FN的假阴性假阳性率(玻璃钢),也被称为影响或1-specificity -
FP / (TN + FP)
FP是假阳性的数量和TN的数量是正确的否定
ROC曲线上每一点都对应一对TPR和玻璃钢值为一个特定的阈值。你可以找到不同的对TPR和玻璃钢值通过改变阈值,然后创建一个使用双ROC曲线。对于每个类,rocmetrics
使用所有不同的调整分值作为阈值来创建一个ROC曲线。
多类分类问题,rocmetrics
制定一套one-versus-all二元分类问题有一个二进制的问题对于每一个类,并找到ROC曲线为每个使用对应的二进制类问题。每个二进制问题假设类一样积极和其他负面的。
二元分类问题,如果指定分类得分矩阵,rocmetrics
制定两个one-versus-all二元分类问题。这些问题对一个类作为正类和其他类作为一个负类,和rocmetrics
发现两个ROC曲线。使用一个曲线评价二元分类问题。
更多细节,请参阅ROC曲线和性能指标。
ROC曲线下面积(AUC)
ROC曲线下面积(AUC)对应于ROC曲线的积分(TPR值)对玻璃钢玻璃钢
=0
来玻璃钢
=1
。
AUC总性能测量提供了一个在所有可能的阈值。AUC值的范围0
来1
和更大的AUC值表明更好的分类性能。
One-Versus-All(卵子)编码设计
one-versus-all(卵子)编码的设计减少了多类分类问题的一组二进制分类问题。在这种编码设计,每个二进制分类对待一个类一样积极和其他类负面的。rocmetrics
使用多级分类的卵子编码设计和评估每个类上的性能通过使用二进制分类类是正的。
例如,三个类的卵子编码设计制定三个二进制分类:
每一行对应一个类,每一列对应一个二分类问题。第一二进制分类假设类1是一个积极的类和其他类是负面的。rocmetrics
评估第一节课上的性能通过使用第一个二元分类问题。
算法
调整分数多类分类问题
对于每个类,rocmetrics
调整分类评分(输入参数分数
的rocmetrics
)相对于其他类的分数如果指定分数
作为一个矩阵。具体来说,调整分了类之间的区别是给定一个观察类的分数和分数的最大值的类。
例如,如果你有(年代1,年代2,年代3]在一排分数
三个类的分类问题,调整分数值(年代1- - - - - -马克斯
(年代2,年代3),年代2- - - - - -马克斯
(年代1,年代3),年代3- - - - - -马克斯
(年代1,年代2)]。
rocmetrics
计算使用调整后的性能指标得分值为每个类。
二元分类问题,您可以指定分数
作为一个两列矩阵或一个列向量。使用一个两列矩阵是一个更简单的选择,因为预测
函数分类对象返回分类得分矩阵,可以通过rocmetrics
。如果你在一个两列的矩阵,通过分数rocmetrics
调整分数以相同的方式调整分数的多级分类,并计算性能指标两类。您可以使用度量值的两类评价二元分类问题。返回一个类的度量值rocmetrics
当你通过一个两列矩阵相当于返回的度量值rocmetrics
当你指定类作为分类的分数列向量。
引用
[1]塞巴斯蒂亚尼,法。在自动文本分类“机器学习。”ACM计算调查34岁的没有。1(2002年3月):1-47。
版本历史
介绍了R2022b
Abrir比如
这种版本modificada德埃斯特比如。害怕Desea abrir埃斯特比如con sus modificaciones吗?
第一de MATLAB
Ha事实clic en联合国围绕此时一个埃斯特第一de MATLAB:
Ejecute el第一introduciendolo en la ventana de第一de MATLAB。洛杉矶navegadores网络没有admiten第一de MATLAB。
你也可以从下面的列表中选择一个网站:
表现最好的网站怎么走吗
选择中国网站(中文或英文)最佳站点的性能。其他MathWorks国家网站不优化的访问你的位置。