主要内容

modelDiscriminationPlot

绘制ROC曲线

描述

例子

modeldiscriminationplot(lgdModel数据生成接收者工作特性(ROC)曲线。modelDiscriminationPlot金宝app支持对参考模型进行分割和比较。

例子

modeldiscriminationplot(___名称,值除了前面语法中的输入参数外,还使用一个或多个名称-值对参数指定选项。

例子

h= modelDiscriminationPlot (斧头___名称,值除了前面语法中的输入参数外,还使用一个或多个名称-值对参数指定选项,并返回图形句柄h

例子

全部折叠

这个例子展示了如何使用fitLGDModel将数据与回归模型,然后使用modelDiscriminationPlot绘制ROC曲线。

加载数据

加载丢失的缺省数据。

负载LGDData.mat头(数据)
ans =8×4表LTV年龄型LGD _______ _______ ___________ _________ 0.89101 0.39716 residential 0.032659 0.70176 2.0939 residential 0.43564 0.72078 2.7948 residential 0.0064766 0.37013 1.237 residential 0.007947 0.36492 2.5818 residential 0.0.796 1.5957 residential 0.14572 0.60203 1.1599 residential 0.025688 0.92005 0.50253 investment 0.063182

对数据进行分区

将数据分解为培训和测试分区。

RNG('默认');%的再现性NumObs =身高(数据);c = cvpartition (NumObs“坚持”,0.4);培训=培训(c);testind =测试(c);

创建一个回归LGD模型

使用fitLGDModel创建一个回归使用训练数据建立模型。

lgdModel = fitLGDModel(数据(TrainingInd,:),“回归”);disp (lgdModel)
带有属性的回归:ResponseTransform: "logit" BoundaryTolerance: 1.0000e-05 ModelID: "Regression" Description: "" UnderlyingModel: [1x1 classregr .regr. "CompactLinearModel] PredictorVars:[“LTV”“年龄”“类型”]ResponseVar:“LGD”

显示底层模型。

DISP(LGDMODEL.underlyingModel)
linear regression model: LGD_logit ~ 1 + LTV + Age + Type Estimated Coefficients: Estimate SE tStat pValue ________ ________ _______ __________ (Intercept) -4.7549 0.36041 -13.193 3.0997e-38 LTV 2.8565 0.41777 6.8377 1.0531e-11 Age -1.5397 0.085716 -17.963 3.3172e-67 Type_investment 1.4358 0.2475 5.8012 7.587e-092093,误差自由度:2089均方根误差:4.24 r平方:0.206,调整r平方:0.205 F-statistic vs. constant model: 181, p-value = 2.42e-104

绘制ROC数据

使用modelDiscriminationPlot绘制测试数据集的ROC曲线。

modelDiscriminationPlot (lgdModel、数据(TestInd:))

图中包含一个轴对象。标题为ROC Regression, AUROC = 0.67897的轴对象包含一个类型为line的对象。这个对象表示回归。

这个例子展示了如何使用fitLGDModel将数据与托比特书模型,然后使用modelDiscriminationPlot绘制ROC曲线。

加载数据

加载丢失的缺省数据。

负载LGDData.mat头(数据)
ans =8×4表LTV年龄型LGD _______ _______ ___________ _________ 0.89101 0.39716 residential 0.032659 0.70176 2.0939 residential 0.43564 0.72078 2.7948 residential 0.0064766 0.37013 1.237 residential 0.007947 0.36492 2.5818 residential 0.0.796 1.5957 residential 0.14572 0.60203 1.1599 residential 0.025688 0.92005 0.50253 investment 0.063182

对数据进行分区

将数据分解为培训和测试分区。

RNG('默认');%的再现性NumObs =身高(数据);c = cvpartition (NumObs“坚持”,0.4);培训=培训(c);testind =测试(c);

创建一个Tobit LGD模型

使用fitLGDModel创建一个托比特书使用训练数据建立模型。

lgdModel = fitLGDModel(数据(TrainingInd,:),'tobit');disp (lgdModel)
Tobit with properties: CensoringSide: "both" LeftLimit: 0 RightLimit: 1 ModelID: "Tobit" Description: "" UnderlyingModel: [1x1 risk.internal.credit.TobitModel] PredictorVars: ["LTV" "Age" "Type"] ResponseVar: "LGD"

显示底层模型。

DISP(LGDMODEL.underlyingModel)
Tobit回归模型:LGD = max(0,min(Y*,1)) Y* ~ 1 + LTV +年龄+类型Estimate SE tStat pValue _________ _________ _______ __________ (Intercept) 0.058257 0.02728 2.1355 0.032833 LTV 0.20126 0.031403 6.4088 1.8072e-10 Age -0.095407 0.0072288 -13.178 0 Type_investment 0.10208 0.018048 5.6561 1.761e-08 (Sigma) 0.29288 0.0057086 51.304 0观测数:2093左截序观测数:547未删失观测数:1521右删失观测数:25对数似然数:-698.383

绘制ROC数据

使用modelDiscriminationPlot绘制测试数据集的ROC曲线。

modelDiscriminationPlot (lgdModel、数据(TestInd:),“SegmentBy”“类型”“DiscretizeBy”“中值”

图中包含一个轴对象。标题为ROC被类型分割的轴对象包含2个类型为line的对象。这些对象代表Tobit,住宅,AUROC = 0.70101, Tobit,投资,AUROC = 0.73252。

输入参数

全部折叠

损失给定的默认模型,指定为先前创建的回归或者托比特书对象使用fitLGDModel

数据类型:对象

数据,指定为anumrows.——- - - - - -NumCols表与预测器和响应值。变量名称和数据类型必须与底层模型一致。

数据类型:表格

(可选)有效的轴对象,指定为斧头使用.绘图将在可选参数指定的轴线上创建斧头参数而不是当前轴(gca)。可选参数斧头必须先于任何输入参数组合。

数据类型:对象

名称-值参数

指定可选的逗号分隔的对名称,值参数。的名字参数名和价值是相应的价值。的名字必须出现在引号内。可以以任意顺序指定多个名称和值对参数name1,value1,...,namen,valuen

例子:modelDiscriminationPlot (lgdModel、数据(TestInd:),‘DataID’,‘测试’,‘DiscretizeBy’,‘中等’)

数据集标识符,指定为逗号分隔的对,由“DataID”和一个字符向量或字符串。的dataid.列在输出中以供报告之用。

数据类型:字符|字符串

LGD的离散化方法数据,指定为逗号分隔的对,由“DiscretizeBy”和一个字符向量或字符串。

  • '意思'-离散响应为1如果观察到的低级别瘤变大于或等于平均低级别瘤变,0否则。

  • “中值”-离散响应为1如果观察到的LGD大于或等于中位数LGD,0否则。

  • '积极的'-离散响应为1如果LGD呈阳性,0否则(完全康复)。

  • “总”-离散响应为1如果观察到LGD大于或等于1(总体损耗),0否则。

数据类型:字符|字符串

中列的名称数据输入,不一定是模型变量,用于分割数据集,指定为逗号分隔对组成'segmentby'和一个字符向量或字符串。每个段报告一个AUROC,每个段对应的ROC数据在可选输出中返回。

数据类型:字符|字符串

LGD值预测数据通过参考模型,指定为逗号分隔对组成'referencelgd'A.numrows.——- - - - - -1数值向量。我们绘制了两组的ROC曲线lgdModel对象和引用模型。

数据类型:

引用模型的标识符,指定为逗号分隔的对,由“ReferenceID”和一个字符向量或字符串。“ReferenceID”用于绘图以报告目的。

数据类型:字符|字符串

输出参数

全部折叠

线条对象的图形句柄,返回为句柄对象。

更多关于

全部折叠

模型歧视情节

modelDiscriminationPlot函数绘制receiver operator characteristic (ROC)曲线。

modelDiscriminationPlot函数还显示了receiver operator characteristic (AUROC)曲线下的面积,有时简单地称为曲线下的面积(AUC)。该度量值介于0和1之间,较高的值表示更好的辨别能力。

需要一个数值预测和一个二进制响应来绘制ROC和计算AUROC。对于LGD模型,直接使用预测的LGD作为预测。然而,观测到的LGD必须离散成一个二进制变量。默认情况下,观测到的LGD值大于或等于观测到的LGD平均值赋值为1,平均值以下赋值为0。这种离散反应被解释为“高低低密度”vs.“低低密度”。ROC曲线和AUROC曲线测量预测低低密度脂蛋白d将“高低密度脂蛋白d”和“低低密度脂蛋白d”观测结果分离的程度。离散化准则可以随DiscretizeBy的名称-值对参数modelDiscriminationPlot

ROC曲线是一个参数曲线,绘制的比例

  • 高低级别密度的情况下,预测的低级别密度大于或等于一个参数t,或真阳性率(TPR)

  • 低LGD情况下,预测的LGD大于或等于相同的参数t,或假阳性率(FPR)

参数t扫描给定数据的所有观测到的预测LGD值。如果以编程方式需要AUROC值或ROC曲线数据,则使用modelDiscrimination函数。有关ROC曲线的更多信息,请参见性能曲线

参考

[1]贝森斯,巴特,丹尼尔·罗施,哈拉尔德·舍勒。信用风险分析:测量技术,应用,和例子在SAS。威利,2016年。

[2]贝里尼,Tiziano。IFRS 9和CECL信用风险建模和验证:在R和SAS中工作的实例的实用指南。圣地亚哥,加利福尼亚州:2019年elestvier。

介绍了R2021a