主要内容

验证模型

验证信用记分卡模型的质量

描述

例子

统计数据= validatemodel (sc)验证数据的质量信用记分卡模型。

默认情况下,用于生成信用记分卡使用对象。您还可以提供应用验证的输入数据。

例子

统计数据= validatemodel (sc,数据)验证数据的质量信用记分卡使用可选参数指定的给定数据集的模型数据

例子

[统计数据,T) = validatemodel (sc,名称,值)验证数据的质量信用记分卡使用可选的名称-值对参数建模,并返回统计数据T输出。

例子

[统计数据,T,高频) = validatemodel (sc,名称,值)验证数据的质量信用记分卡使用可选的名称-值对参数建模,并返回图形句柄高频到CAP、ROC和KS图。

例子

全部折叠

创建一个信用记分卡使用CreditCardData.mat文件来加载数据(使用Refaat 2011的数据集)。

负载CreditCardDatasc=信用记分卡(数据,“IDVar”,“卡斯蒂德”)
sc = creditscorecard with properties: GoodLabel: 0 ResponseVar: 'status' WeightsVar: " VarNames: {1x11 cell} NumericPredictors: {1x6 cell} CategoricalPredictors: {'ResStatus' 'EmpStatus' 'OtherCC'} BinMissingData: 0 IDVar: 'CustID' PredictorVars: {1x9 cell} Data: [1200x11 table]

使用默认选项执行自动分类。默认情况下,autobinning使用单调算法。

sc = autobinning (sc);

合适的模型。

sc=fitmodel(sc);
1.加上CustIncome,偏差=1490.8527,Chi2Stat=32.588614,PValue=1.1387992e-08 2。添加TmWBank,偏差=1467.1415,Chi2Stat=23.711203,PValue=1.1192909e-06 3。添加AMBalance,偏差=1455.5715,Chi2Stat=11.569967,PValue=0.00067025601 4。添加EmpStatus,偏差=1447.3451,Chi2Stat=8.2264038,PValue=0.0041285257 5。加上保管费,偏差=1441.994,Chi2Stat=5.3511754,PValue=0.020708306。加上ResStatus,偏差=1437.8756,Chi2Stat=4.118404,PValue=0.042419078 7。加上其他Cc,偏差=1433.707,Chi2Stat=4.1686018,PValue=0.041179769广义线性回归模型:状态~[7个预测因子中包含8项的线性公式]分布=二项式估计系数:估计统计PValue uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu0.70239 0.064001 10.975 5.0538e-28保管0.60833 0.24932 2.44 0.014687 ResStatus 1.377 0.65272 2.1097 0.034888 EmpStatus 0.88565 0.293 3.0227 0.0025055保管收入0.70164 0.21844 3.2121 0.0013179 TmWBank 1.1074 0.23271 4.7589 1.9464e-06其他CC 1.0883 0.52912 2 2.0569 0.039696 AMBalance 1.040.2140.2432,1192误差自由度离散度:1 Chi^2-统计与常数模型:89.7,p值=1.4e-16

格式化未缩放的点。

sc = formatpoints (sc,“PointsOddsAndPDO”, 500, 2, 50);

得分数据。

成绩=分数(sc);

通过生成CAP、ROC和KS图来验证信用记分卡模型。

(统计、T) = validatemodel (sc,“阴谋”, {“帽子”,“中华民国”,“KS”});

图中包含一个轴对象。带有CAP (Cumulative precision Profile)曲线标题的轴对象包含patch、line、text类型的6个对象。

图中包含一个轴对象。以Receiver Operating Characteristic (ROC)曲线为标题的轴对象包含patch、line、text三种类型的对象。

图中包含一个轴对象。标题为K-S Plot的轴对象包含6个类型为line, text的对象。这些对象代表累积不良品,累积商品。

disp(统计)
测量值  ________________________ _______ {' 精度比0.32258”}{ROC曲线下面积的}0.66129{“KS统计”}0.2246 499.62{“k值”}
disp (T (1:15)):
PctObs ______ ___________ ________ _________ _________ __________ ___________ __________ __________ 369.54 0.75313 01 802 397 0 0.0012453 0.00083333 378.19 0.73016 1 1 802 396 0.0025189 0.0012453 0.0016667 380.28 0.72444 2 1 802 395 0.0050378 0.0012453 0.0025 391.490.69234 3 1 802 394 0.0075567 0.0012453 0.0033333 395.57 0.68017 4 1 802 393 0.010076 0.0012453 0.0041667 396.14 0.67846 801 393 0.010076 0.0024907 0.005 396.45 0.67752 5 801 392 0.012594 0.0024907 0.0058333 398.61 0.67094 801 391 0.015113 0.0024907 0.0066667 398.68 0.67072 801 390 0.017632 0.0024907 0.0075 401.33 0.66255 8 801 3890.020151 0.0024907 0.0083333 402.66 0.65842 83 800 389 0.020151 0.003736 0.0091667 404.25 0.65346 93 800 388 0.02267 0.003736 0.01 404.73 0.65193 94 799 388 0.02267 0.0049813 0.010833 405.53 0.64941 11 4 799 386 0.027708 0.0049813 0.0125 405.7 0.64887 11 5 798 386 0.027708 0.0062267 0.013333

使用CreditCardData.mat载入数据的文件(数据权重),其中包含列(RowWeights)权重(使用2011年Refaat的数据集)。

负载CreditCardData

创建一个信用记分卡对象的可选名称-值对参数“WeightsVar”

sc = creditscorecard (dataWeights,“IDVar”,“卡斯蒂德”,“WeightsVar”,“RowWeights”)
sc = creditscorecard with properties: GoodLabel: 0 ResponseVar: 'status' WeightsVar: 'RowWeights' VarNames: {1x12 cell} NumericPredictors: {1x6 cell} CategoricalPredictors: {'ResStatus' 'EmpStatus' 'OtherCC'} BinMissingData: 0 IDVar: 'CustID' PredictorVars: {1x9 cell} Data: [1200x12 table]

执行自动装箱。

sc = autobinning (sc)
sc = creditscorecard with properties: GoodLabel: 0 ResponseVar: 'status' WeightsVar: 'RowWeights' VarNames: {1x12 cell} NumericPredictors: {1x6 cell} CategoricalPredictors: {'ResStatus' 'EmpStatus' 'OtherCC'} BinMissingData: 0 IDVar: 'CustID' PredictorVars: {1x9 cell} Data: [1200x12 table]

合适的模型。

sc=fitmodel(sc);
1.加CustIncome, Deviance = 764.3187, Chi2Stat = 15.81927, PValue = 6.968927e-05添加TmWBank, Deviance = 751.0215, Chi2Stat = 13.29726, PValue = 0.0002657942广义线性回归模型:logit(status) ~ 1 + CustIncome + TmWBank + AMBalance Distribution = Binomial Estimated Coefficients:Estimate SE tStat pValue ________ ________ ______ __________ (Intercept) 0.70642 0.088702 7.964 1.6653e-15 CustIncome 1.0268 0.25758 3.9862 6.7132e-05 TmWBank 1.0973 0.31294 3.5063 0.0004543 AMBalance 1.0039 0.37576 2.6717 0.0075464 1200个观测值,1196个误差自由度36.4, p-value = 6.22e-08

格式化未缩放的点。

sc = formatpoints (sc,“PointsOddsAndPDO”, 500, 2, 50);

得分数据。

成绩=分数(sc);

通过生成CAP、ROC和KS图来验证信用记分卡模型。当可选的名称-值对参数“WeightsVar”用于指定观察(样本)权重,T表使用作为加权计数的统计信息、总和和累积总和。

(统计、T) = validatemodel (sc,“阴谋”, {“帽子”,“中华民国”,“KS”});

图中包含一个轴对象。带有CAP (Cumulative precision Profile)曲线标题的轴对象包含patch、line、text类型的6个对象。

图中包含一个轴对象。以Receiver Operating Characteristic (ROC)曲线为标题的轴对象包含patch、line、text三种类型的对象。

图中包含一个轴对象。标题为K-S Plot的轴对象包含6个类型为line, text的对象。这些对象代表累积不良品,累积商品。

统计数据
统计=4×2表测量值{uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu
T (1:10,:)
ans =10×9表PctObs ______ ___________ ________ _________ _________ __________ ___________ __________ _________ 401.34 0.66253 1.0788 0 411.95 201.95 0.0053135 0 0.0017542 407.59 0.64289 4.8363 1.2768 410.67 198.19 0.023821 0.0030995 0.0099405 413.79 0.62292 6.9469 4.6942 407.25196.08 0.034216 0.011395 0.018929 420.04 0.60236 18.459 9.3899 402.56 184.57 0.090918 0.022794 0.045285 437.27 0.544 18.459 10.514 401.43 184.57 0.090918 0.025523 0.047113 442.83 0.52481 18.973178.71 0.11981 0.034968 0.062978 449.73 0.50095 28.246 18.049 393.9 174.78 0.13912 0.043813 0.075279 452.44 0.49153 31.511 23.565 388.38

这个例子描述了丢失数据的赋值“BinMissingData”选项设置为真正的,以及相应的模型验证统计计算。

  • 训练集中有缺失数据的预测器有一个显式的容器< >失踪在最后的记分卡上有相应的分数。这些点数是根据证据权重(WOE)值计算的< >失踪bin和logistic模型系数。出于评分目的,将这些分数分配给缺失值和超出范围的值,并使用最终分数计算模型验证统计数据验证模型

  • 在训练集中没有缺失数据的预测因子没有< >失踪bin,因此无法从训练数据中估计WOE。默认情况下,缺失值和超出范围值的点设置为,这就导致了一系列的运行时分数.对于没有明确的预测器< >失踪Bin,使用name-value参数“失踪”格式点以指示如何处理缺失的数据进行评分。最后的分数用于计算模型验证统计验证模型

创建一个信用记分卡使用CreditCardData.mat文件来加载dataMissing缺少值。

负载CreditCardData.mat头部(数据缺失,5)
ans =5×11表CustID CustAge TmAtAddress ResStatus EmpStatus CustIncome TmWBank OtherCC AMBalance UtilRate地位  ______ _______ ___________ ___________ _________ __________ _______ _______ _________ ________ ______ 53 62 <定义>未知50000 55是的1055.9 - 0.22 0 2 61 22业主雇佣52000 25是的1161.6 - 0.24 0 3 47 30租户雇佣了37000 61877.23 0.29 0 4 NaN 75自雇业主53000 20是157.37 0.08 0 5 68 56自雇业主53000 14是561.84 0.11 0

使用信用记分卡使用name-value参数“BinMissingData”着手真正的将丢失的数字或类别数据装入单独的容器中。应用自动装箱。

sc = creditscorecard (dataMissing,“IDVar”,“卡斯蒂德”,“BinMissingData”,真正的);sc = autobinning (sc);disp (sc)
creditscorecard with properties: GoodLabel: 0 ResponseVar: 'status' WeightsVar: " VarNames: {1x11 cell} NumericPredictors: {1x6 cell} CategoricalPredictors: {'ResStatus' 'EmpStatus' 'OtherCC'} BinMissingData: 1 IDVar: 'CustID' PredictorVars: {1x9 cell} Data: [1200x11 table]

将的最小值设置为零CustAgeCustIncome.这样,任何负年龄或收入信息都将失效或“超出范围”。对于评分和默认计算的概率,超出范围的值与缺失值给出相同的分数。

sc = modifybins (sc,“CustAge”,“MinValue”,0); sc=修改箱(sc,“CustIncome”,“MinValue”, 0);

显示bin信息的数字数据“CustAge”这包括在一个单独的标签箱中丢失的数据< >失踪

bi = bininfo (sc,“CustAge”);disp (bi)
本好不好悲哀InfoValue几率  _____________ ____ ___ ______ ________ __________ {'[ 0, 33) 52} 69 1.3269 -0.42156 0.018993{[33岁,37)}63年45 1.4 -0.36795 0.012839{[37、40)}72年47 1.5319 -0.2779 0.0079824{'[40岁,46)}172 89 1.9326 -0.04556 0.0004549{'[46岁,48)}59 25 2.36 0.15424 0.0016199{[48,51)}99年41 2.4146 0.17713 0.0035449{'[51,58)'} 157 62 2.5323 0.22469 0.0088407 {'[58,Inf]'} 93 25 3.72 0.60931 0.032198 {''} 19 11 1.7273 -0.15787 0.00063885 {' total '} 803 397 2.0227 NaN 0.087112

显示的分类数据的bin信息“雷斯塔特斯”这包括在一个单独的标签箱中丢失的数据< >失踪

bi = bininfo (sc,“雷斯塔特斯”);disp (bi)
(UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUU27 13 2.0769 0.026469 2.3248e-05{‘总计}803 397 2.0227 NaN 0.0092627

“CustAge”“雷斯塔特斯”预测者,有缺失的数据(年代和<定义>),分箱过程估计出的WOE值为-0.157870.026469分别为这些预测器中的缺失数据,如上所示。

对于EMP状态CustIncome因为训练数据中没有这些预测器的缺失值,所以没有明确的缺失值存放。

bi = bininfo (sc,“EmpStatus”);disp (bi)
好运气坏运气坏信息价值(uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu
bi = bininfo (sc,“CustIncome”);disp (bi)
(2)UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUOUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUU843 0.00041042{'[35000400000'}193 98 1.9694-0.026696 0.00017359{'[4000042000'}68 34 2-0.011271 1.0819e-05{'[4200047000][164662.48480.205790.0078175{'[47000,Inf]}183563.26790.47972 0.041657{'Totals'}8033972.0227 NaN 0.12285

使用fitmodel利用证据权重(WOE)数据拟合逻辑回归模型。fitmodel在内部将所有预测变量转换为祸值,使用自动装箱过程中找到的箱子。fitmodel然后使用逐步方法(默认)拟合逻辑回归模型。对于缺少数据的预测器,有一个明确的< >失踪bin,并根据数据计算出相应的WOE值。当使用fitmodel,则在进行WOE转换时,应用 bin对应的WOE值。

(sc, mdl) = fitmodel (sc);
1.加上CustIncome, Deviance = 1490.8527, Chi2Stat = 32.588614, PValue = 1.1387992e-08添加TmWBank, Deviance = 1467.1415, Chi2Stat = 23.711203, PValue = 1.1192909e-06添加AMBalance, Deviance = 1455.5715, Chi2Stat = 11.569967, PValue = 0.00067025601增加EmpStatus, Deviance = 1447.3451, Chi2Stat = 8.2264038, PValue = 0.0041285257 5。加CustAge, Deviance = 1442.8477, Chi2Stat = 4.4974731, PValue = 0.033944979添加ResStatus, Deviance = 1438.9783, Chi2Stat = 3.86941, PValue = 0.049173805广义线性回归模型:status ~[7个预测因子中8项的线性公式]Distribution = Binomial Estimated Coefficients:Estimate SE tStat pValue ________ ________ ______ __________ (Intercept) 0.70229 0.063959 10.98 4.7498e-28 CustAge 0.57421 0.25708 2.2335 0.025513 ResStatus 1.3629 0.66952 2.0356 0.04179 EmpStatus 0.88373 0.2929 3.0172 0.002551 CustIncome 0.73535 0.2159 3.406 0.00065929 TmWBank 1.1065 0.23267 4.7556 1.9783e-06 OtherCC 1.0648 0.52826 2.0156 0.043841AMBalance 1.0446 0.32197 3.2443 0.0011775 1200 observations, 1192 error degrees of freedom Dispersion: 1 Chi^2-statistic vs. constant model: 88.5, p-value = 2.55e-16

通过“点数、赔率和点数加倍赔率(PDO)”方法,使用“PointsOddsAndPDO”的观点格式点.假设你想要获得500分的概率是2(好的概率是坏的概率的两倍),概率每50分翻一倍(所以550分的概率是4)。

显示显示在拟合模型中保留的预测器按比例缩放的点数的记分卡。

sc = formatpoints (sc,“PointsOddsAndPDO”, (500 2));PointsInfo = displaypoints (sc)
点信息=38×3表预测本点  _____________ ______________ ______ {' CustAge’}{[0,33)的54.062}{‘CustAge}{[33岁,37)的56.282}{‘CustAge}{[37、40)的60.012}{‘CustAge}{[40岁,46)的69.636}{‘CustAge}{[46岁,48)的77.912}{‘CustAge}{[48, 51)的78.86}{‘CustAge}{[51岁,58)的80.83}{‘CustAge}{[58岁的Inf]的}96.76{‘CustAge}{< >失踪的}64.984 {'EmpStatus'} {'EmpStatus'} {'Home Owner'} 73.248 {'ResStatus'} {'Other'} 90.828 {'ResStatus'} {''} 74.125 {'EmpStatus'} {'Unknown'} 58.807 {'EmpStatus'} {'Employed'} 86.937 {'EmpStatus'} {''}⋮

注意这个点< >失踪本为CustAgeResStatus显式显示(如下所示)64.983674.1250分别为)。这些点是根据< >失踪bin和logistic模型系数。

对于训练集中没有缺失数据的预测器,没有显式的< >失踪箱子默认情况下,这些点被设置为因为缺少数据,他们会导致运行时分数.对于没有明确的预测器< >失踪Bin,使用name-value参数“失踪”格式点以指示如何处理缺失的数据进行评分。

出于演示的目的,从原始数据中提取几行作为测试数据,并引入一些缺失的数据。还引入一些无效或超出范围的值。对于数字数据,低于允许的最小值(或高于允许的最大值)的值被认为是无效的,例如年龄的负值(回忆一下)“MinValue”之前设置为0CustAgeCustIncome).对于分类数据,无效值是没有显式地包含在记分卡中的类别,例如,以前没有映射到记分卡类别的居住状态,如“House”,或没有意义的字符串,如“abc123”。

这是一个非常小的验证数据集,仅用于说明缺少值和超出范围值的行的评分及其与模型验证的关系。

tdata = dataMissing (11:18 mdl.PredictorNames);%只保留模型中的预测器tdata。状态= dataMissing.status (11:18);%复制验证所需的响应变量值%设置一些缺失的值tdata.CustAge(1)=NaN;tdata.ResStatus(2)=' <定义> ';tdata.EmpStatus (3) =' <定义> ';tdata.CustIncome(4) =南;%设置一些无效值tdata.CustAge (5) = -100;tdata.ResStatus (6) =“房子”;tdata.EmpStatus (7) =“自由职业者”;tdata.CustIncome (8) = 1;disp (tdata)
CustAge ResStatus EmpStatus CustIncome TmWBank OtherCC AMBalance地位  _______ ___________ ___________ __________ _______ _______ _________ ______ 南租户未知34000 44是的119.8 - 1 48 <定义>未知44000 14是的403.62 0 65房主<定义> 48000年6没有其它未知南35 111.88 0 44 436.41 0 -100其他雇用了46000名16岁是的162.21 0 33 House Employed 36000 36 Yes 845.02 0 39 Tenant Freelancer 34000 40 Yes 756.26 1 24 Home Owner Employed -1 19 Yes 449.61 0

对新数据进行评分,并查看如何为缺失打分CustAgeResStatus,因为我们有一个显式的为< >失踪.然而,对于EMP状态CustIncome这个分数函数将点设置为

验证结果是不可靠的,分数保留值(请参阅验证表)价值连城下文),但尚不清楚这些影响是什么的值(ValStats).这是一个很小的验证数据集,但是在更大的数据集上,分数仍然可以影响验证结果。

(分数,分)=分数(sc tdata);disp(分数)
481.2231 520.8353 NaN NaN 551.7922 487.9588 NaN NaN
disp(分)
在美国,UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUNaN 96.922 96.76 73.248 NaN 96.969 51.132 50.914 89.922 69.636 90.828 58.807 NaN 61.858 50.914 89.922 64.984 90.828 86.937 82.439 61。061 75.622 89.922 56.282 74.125 86.937 70.107 61.858 75.622 63.028 60.012 62.138 NaN 67.893 61.858 75.622 63.028 54.062 73.248 86.937 NaN 61.061 75.622 89.922
[ValStats, ValTable] = validatemodel (sc tdata);disp (ValStats)
测量值  ________________________ _______ {' 精度比0.16667”}{ROC曲线下面积的}0.58333{“KS统计”}0.5 481.22{“k值”}
显示(值表)
词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词词NaN 0 1 5 2 0 0.16667 0.125 NaN 0 2 4 2 0 0.33333 0.25 NaN 1 2 4 1 0.5 0.33333 0.375 NaN 1 3 3 1 0.5 0.5 0.5 481.22 0.39345 2 3 0 1 0.5 0.625 487.96 0.3714 2 4 2 0 1 0.66667 0.75 520.84 0.2725 2 5 1 0 1 0.83333 0.875 551.79 0.19605 2 6 0 0 1 1 1

使用name-value参数“失踪”格式点选择如何为没有显式指示的预测器的缺失值分配点< >失踪箱子在本例中,使用“MinPoints”选择“失踪”论点。最低分数EMP状态在上面显示的记分卡中58.8072CustIncome最小值点是29.3753

验证结果不再受值,因为现在所有行都有一个分数。

sc = formatpoints (sc,“失踪”,“MinPoints”); [得分,得分]=得分(sc,tdata);显示(分数)
481.2231 520.8353 517.7532 451.3405 551.7922 487.9588 449.3577 470.2267
disp(分)
在美国,UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUU922.96.76 73.248 58.807 96.969 51.132 50.914 89.922 69.636 90.828 58.807 29.375 61.858 50.914 89.922 64.984 90.828 86.93782.439 61.061 75.622 89.922 56.282 74.125 86.937 70.107 61.858 75.622 63.028 60.012 62.138 58.807 67.893 61.858 75.622 63.028 54.062 73.248 86.937 29.375 61.061 75.622 89.922
[ValStats, ValTable] = validatemodel (sc tdata);disp (ValStats)
测量值  ________________________ _______ {' 精度比0.66667”}{ROC曲线下面积的}0.83333{“KS统计”}0.66667 481.22{“k值”}
显示(值表)
分数ProbDefault TrueBads FalseBads TrueGoods FalseGoods敏感性FalseAlarm PctObs  ______ ___________ ________ _________ _________ __________ ___________ __________ ______ 449.36 - 0.50223 0 1 0 6 1 0.5 0.125 451.34 0.49535 1 1 5 1 0.5 0.16667 0.25 470.23 0.43036 1 2 4 1 0.5 0.33333 0.375 481.22 0.39345 - 2 2 4 0 1 0.33333 0.5 487.96 0.3714 2 3 30 1 0.5 0.625 517.75 0.28105 2 4 2 0 1 0.66667 0.75 520.84 0.2725 2 5 1 0 1 0.83333 0.875 551.79 0.19605 2 6 0 0 1 1 1

输入参数

全部折叠

信用记分卡模型,指定为信用记分卡对象。要创建此对象,请使用信用记分卡

(可选)验证数据,指定为MATLAB®表,其中每个表行对应于单个观察。的数据必须包含信用记分卡模型中每个预测器的列。数据列可以是以下任意一种数据类型:

  • 数字

  • 合乎逻辑

  • 字符向量的单元格数组

  • 字符数组

  • 分类

  • 字符串数组

此外,该表必须包含一个二进制响应变量。

当观测权值使用可选定义时权重名称-值对参数信用记分卡对象中存储的权值权重列用于在训练数据上验证模型。如果使用可选的数据输入时,验证数据的观察权重必须包含在名称匹配的列中权重,否则验证数据使用单位权重。有关更多信息,请参见使用带有权重的validatmodel

数据类型:表格

名称值参数

指定可选的逗号分隔的字符对名称,值参数。的名字是参数名和价值为对应值。的名字必须出现在引号内。可以以任意顺序指定多个名称和值对参数Name1, Value1,…,的家

例子:sc = validatemodel (sc、数据“AnalysisLevel”,“十分位数”,“情节”,“帽子”)

分析级别的类型,指定为由逗号分隔的对组成“AnalysisLevel”和具有下列值之一的字符向量:

  • “分数”-返回统计数据(统计数据)在观察层面。分数从最危险到最安全排序,并删除重复项。

  • “十分位数”-返回统计数据(统计数据)在十分位水平。分数从最危险的到最安全的,并与相应的统计数据分成10个十分位数(10%,20%,…, 100%)。

数据类型:字符

图的类型,指定为逗号分隔对,由“阴谋”和具有下列值之一的字符向量:

  • “没有”—未显示任何图形。

  • “帽子”-累积精度剖面图。绘制得分为“s”的借款人比例与得分为“s”的违约者比例(“PctObs”“敏感”T可选输出参数)。有关详细信息,请参阅累积精度剖面(CAP)

  • “中华民国”-接收机工作特性。绘制得分为“s”的未违约者的比例与得分为“s”的违约者的比例(“FalseAlarm”“敏感”T可选输出参数)。有关详细信息,请参阅接收机工作特性(ROC)

  • “KS”——Kolmogorov-Smirnov。将每个分数“s”与得分为“s”的违约者的比例,以及得分为“s”的非违约者的比例(“分数”和两个“敏感”“FalseAlarm”可选输出参数的列T).有关详细信息,请参见Kolmogorov-Smirnov统计(KS)

    小费

    对于Kolmogorov-Smirnov统计选项,您可以输入“KS”“钴”

数据类型:字符|细胞

输出参数

全部折叠

验证措施,作为4——- - - - - -2表格第一列,“测量”,包含以下措施的名称:

  • 准确率(AR)

  • ROC曲线下面积(AUROC)

  • KS统计

  • KS得分

第二栏,“价值”,包含与这些度量值相对应的值。

验证统计数据,作为N——- - - - - -9验证统计数据表,按分数排序,从最危险到最安全。当AnalysisLevel被设置为“十分位数”,N等于10.否则,N等于唯一分数的总数,即没有重复的分数。

T按此顺序包含以下九列:

  • “分数”-分数从最危险到最安全。这一行的数据对应到这一行的所有观察结果,包括这一行的分数。

  • “ProbDefault”-这一行观测值的违约概率。对于十分位,报告给定十分位中所有观测值的平均违约概率。

  • “TrueBads”-累计的“坏”数达到并包括相应的分数。

  • “FalseBads”-“商品”的累计数量达到并包括相应的分数。

  • “TrueGoods”-超过相应分数的“货物”累计数量。

  • “假货”-高于相应分数的“不良”累积数。

  • “敏感”-违约者的分数(或累计“不良资产”数除以“不良资产”总数)。这是“不良”的分布,包括相应的分数。

  • “FalseAlarm”-非违约者的比例(或“货物”的累计数量除以“货物”的总数量)。这是“商品”的分配,包括相应的分数。

  • “PctObs”-借贷者的比例,或累计观察数除以观察总数,直到并包括相应的分数。

在创建信用记分卡对象与信用记分卡,如果可选的名称-值对参数权重用于指定观察(样本)权重,则T表使用作为加权计数的统计信息、总和和累积总和。

绘制度量值的图形句柄,作为图形句柄或句柄数组返回。当情节被设置为“没有”,高频为空数组。

更多关于

全部折叠

累积精度剖面(CAP)

CAP通常是一条凹曲线,也被称为基尼曲线、幂曲线或洛伦兹曲线。

给定的观察结果的分数按照风险从最高到最安全的顺序排列。对于一个给定的分数M(0%至100%)的借款人,CAP曲线的高度是分数小于或等于分数最大值的违约者的分数M,也称为“敏感度”

然后,将CAP曲线下的面积(称为AUCAP)与完美或“理想”模型下的面积进行比较,从而定义一个概括指数,称为准确率(应收账)或基尼系数:

A R = A R A P

在哪里ARCAP曲线和对角线之间的面积是多少AP是完美模型和对角线之间的区域。这代表了一个“随机”模型,其中分数是随机分配的,因此违约者和非违约者的比例与分数无关。完美模型是指所有违约者的得分最低的模型,因此,完美区分违约者和非违约者。因此,更接近团结应收账是,评分模型越好。

接收机工作特性(ROC)

为了找到受试者工作特征(ROC)曲线,计算违约者在给定分数“s”或“敏感度”下的比例。

这一比例被称为真实阳性率(TPR)。此外,还计算得分为“s”或“假警报率”的非违约者的比例。这个比例也被称为假阳性率(FPR)。ROC曲线是“敏感性”与“误报率”的曲线。计算ROC曲线类似于计算每个得分水平的混淆矩阵。

与CAP类似,ROC有一个汇总统计数据,称为ROC曲线下面积(AUROC)。越接近统一,得分模型就越好。准确度比(应收账)与曲线下面积的关系式如下:

A R = 2 ( A U R O C ) 1

Kolmogorov-Smirnov统计(KS)

Kolmogorov-Smirnov(KS)图,也称为鱼眼图,是一种常用的统计数据,用于衡量记分卡的预测能力。

KS图显示了违约者和非违约者在同一图上的分布。对于违约者的分布,每一个“s”都被绘制出来,与违约者在“s”或“敏感度”以下的比例。对于非违约者的分布,每一个“s”都被绘制在“s”或“错误警报”之前的非违约者的比例上。感兴趣的统计量称为KS统计量,它是这两个分布之间的最大差异(“灵敏度”减去“假警报”)。达到这个最大值的分数也是很有趣的。

使用验证模型配重

当用户提供观测权值时,模型验证统计包含观测权值。

在没有权重的情况下,验证统计是基于有多少好的和坏的观察值低于某一特定分数。另一方面,当提供观察值权重时,会为低于某一特定分数的好的和坏的观察值累计权重(而不是计数)。

当观测权值使用可选定义时权重名称-值对参数信用记分卡对象中存储的权值权重列用于在训练数据上验证模型。当使用可选的数据输入时,验证数据的观察权重必须包含在名称匹配的列中权重,否则验证数据集使用单位权重。

不仅验证统计数据,信用记分卡分数本身也取决于培训数据的观察权重。有关更多信息,请参阅使用带权重的fitmodel利用观测权建立信用记分卡模型

参考文献

[1]巴塞尔银行监管委员会:内部评级系统验证研究工作文件第14号,2005年2月。

[2] Refaat, M。信用风险记分卡:使用SAS开发和实施。lulu.com, 2011。

[3] 洛弗勒,G.和波什,P.N。基于Excel和VBA的信用风险建模。威利金融,2007。

介绍了R2015a