




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、2.1问题和数据探索2.2建模问题和数据难点2.3生成和解释决策树错误!未定义书签表2.1SAMPSIO.HMEQ数据集合的变量2.1问题和数据探索内容:问题和数据初步数据探索问题和数据a.预测建模问题一家金融服务公司为其客户提供房屋净值信贷额度。该公司曾把该项贷款扩展给了数千客户,其中的许多接收者(大约20%)有贷款欺诈行为。该公司希望使用地理信息、人口信息、和经济状况信息变量建立一个模型预测一个申请人将来会不会欺诈。b.输入数据源在对数据进行了分析之后,该公司选择了12个预测变量来建立每一个申请人是否欺诈的模型。输出变量(或目标)变量(BAD)表示申请人在房屋净值信贷中是否有欺诈活动。这些
2、变量及其模型角色、测量水平、变量描述列表如下。YOJInputIntervalYearsatpresentjobIntervalDebt-to-incomeratioInputNameModelRoleMeasurementLevelDescriptionBADTargetBinaryl=defaultedonloan,0=paidbackloanREASONInputBinaryHomeImp=homeimprovement,DebtCon=debtconsolidationJOBInputNominalSixoccupationalcategoriesLOANInputIntervalAm
3、ountofloanrequestMORTDUEInputIntervalAmountdueonexistingmortgageVALUEInputIntervalValueofcurrentpropertyDEBTINCDEROGInputIntervalNumberofmajorderogatoryreportsCLNOInputIntervalNumberoftradelinesDELINQInputIntervalNumberofdelinquenttradelinesCLAGEInputIntervalAgeofoldesttradelineinmonthsNINQInputInte
4、rvalNumberofrecentcreditinquiries需要的结果信用评分模型该信用评分模型给每一个贷款申请人计算还贷欺诈的概率。在此要设定一个阈值,欺诈概率超过阈值的那些申请人将建议不批准。建立项目和数据初步探索建造简单的过程流(Flow)假定MyProject项目的Projectl框图是开着的,通过从工具条上(或Tools标签)拖动InputDataSource节点到diagram工作区把节点加到Project1框图中。把Multiplot节点工作区InputDataSource节点的右边.你的框图看起来如下图InputDataMuitiplotSource连接工作区的两个节点:
5、最后开始时醫二=任InputDataMuitiplotSourcennInputDataMuitiplotSource调用输入数据这个例子使用SAMPSIO文件夹的HMEQ数据集合.1.要指定数据集合,双击InputDataSource节点,或右击该节点并选择Open,Data标签处于激活状态你的窗口如下:2点击Select来选择数据集合.或者把数据集合的名称键入进来。3.SASUSER文件夹是缺省文件夹.要浏览SAMPSIO文件夹的数据集合,点击專并从这些文件夹里选择SAMPSIO4.从SAMPSIO文件夹的数据集合里选择HMEQ然后选OK.下面的对话框打开:5.可以看到该数据集合里有5,9
6、60个观测(行)和13个变量(列).SAMPSIO.HMEQ是源数据.注意在右下角指示的是metadata(元数据)样本大小为2,000.所有分析包必须决定在分析中如何使用变量.EM使用元数据对如何使用每一个变量作一个初步的评估。按缺省方式,它从感兴趣的数据集合里随机抽取2,000个观测记录,并使用这里的信息为每一个变量确定其模型中的作用和变量类型。要抽取一个较大的样本,你得选择对话框右下角Change按钮.1点击Variables标签可看到所有的变量及其相关的指定.2.点击第一列的标头,Name,这些变量就按名称的顺序排列。把窗口拉大你会看到所有的变量。下表显示了13个变量的部分信息.注意有
7、两列显灰色。这些列代表这个节点里不能改变的SAS数据集合的信息。Type或者是字符型(char)或者是数值型(num),它对一个变量如何被使用有影响。2,000元数据样本的Type的值和不重复数值个数用于确定模型以及测量水平.第一个变量BAD是目标变量尽管BAD是数据集合里的一个数值变量,EM把它认作binary(二元变量)因为在元数据样本里它只有两个不同的非缺失值。所有二元变量的模型角色的缺省设置都是输入变量(input)。在做分析之前你需要把BAD的模型角色改为目标变量。Thenextfivevariables(CLAGEthroughDEROG)havethemeasurementlev
8、elintervalbecausetheyarenumericvariablesintheSASdatasetandhavemorethan10distinctlevelsinthemetadatasample.Themodelroleforallintervalvariablesissettoinputbydefault.ThevariablesJOBandREASONarebothcharactervariablesinthedataset,buttheyhavedifferentmeasurementlevels.REASONisbinarybecauseithasonlytwodist
9、inctnonmissinglevelsinthemetadatasample.ThemodelroleforJOB,however,isnominalbecauseitisacharactervariablewithmorethantwolevels.Forthepurposeofthisanalysis,treattheremainingvariablesasintervalvariables./Attimes,variablessuchasDEROGandDELINQwillbeassignedthemodelroleofordinal.Avariableislistedasordina
10、lwhenitisanumericvariablewithmorethantwobutnomorethantendistinctnonmissinglevelsinthemetadatasample.Thisoftenoccurswithcountingvariables,suchasavariableforthenumberofchildren.Becausethisassignmentdependsonthemetadatasample,themeasurementlevelofDEROGorDELINQforyouranalysismightbesettoordinal.Allordin
11、alvariablesaresettohavetheinputmodelrole;however,youtreatthesevariablesasintervalinputsforthepurposeofthisanalysis.确定目标变量BAD是这个分析的反应变量,因此要把BAD的模型作用改为target.要改变模型作用信息,方法如下:把光标头指向BAD行的ModelRole一栏并右击。从弹出菜单选择SetModelRole。target.检查分布你可以检查元数据样本里每一个变量的数值分布。要查看BAD的分布:把光标头指向BAD变量Name栏.右击鼠标,你可以按名称给变量排序、找变量、或者
12、查看BAD的分布.选择ViewDistributionofBAD查看BAD的分布Percentage01BADfromthetoolbarattheToobtainadditionalinformation,selectthetheViewInfotool,topofthewindowandclickononeofthebars.EnterpriseMinerdisplaysthelevelandtheproportionofobservationsrepresentedbythebar.Theseplotsprovideaninitialoverviewofthedata.Forthisex
13、ample,approximately20%oftheobservationswereloanswheretheclientdefaulted.Becausetheplotsarebasedonthemetadatasample,theymayvaryslightlyduetothedifferencesinthesampledobservations,butthebarforBAD=1shouldrepresentapproximately20%ofthedata.ClosetheVariableHistogramwindowwhenyouarefinishedinspectingthepl
14、ot.Youcanevaluatethedistributionofothervariablesasdesired.修改变量信息保证余下变量的模型作用和测量水平信息是正确的。如果必要,可以把DEROG的测量水平改为interval.要修改测量水平信息:把光标头指向DEROG行的测量(Measurement)栏,并右击鼠标从弹出菜单选择SetMeasurementinterval查看描述统计量元数据可用来计算描述统计量。选择IntervalVariables标签你可以查看连续变量的最小值、最大值、均值、标准差、缺失记录的百分数、偏度和峰度。根据数据的商务知识,查看最小值和最大值指的是有没有异常值
15、。注意DEBTINC变量的缺失值百分数很高(21%).选择类别变量ClassVariables标签查看数据的水平级数、缺失值百分数、以及变量的排序方式。注意BAD变量是降序,而其它变量是升序。这是因为它是二元目标变量。通常对于二元变量当事件发生时编码为1否则为0。降序排序使得1成为第一个水平,是二元变量的目标变量。在回归模型里把其它类似编码的二元变量按降序排列对于解释参数估计也是有用的。关闭InputDataSource节点,并存储这些改变。其它的数据探索EM的其它工具可让你进一步探索数据。工具之一是Multiplot(多图)节点.Multiplot节点建立一系列的直方图和条形图可使你检查输入
16、变量和二元目标变量的关系。右击Multiplot节点并选择Run.在出现的弹出框里选Yes浏览结果.通过使用键盘上的PageDown,你可以浏览关于该数据的直方图。从这个直方图你可以知道许多的欺诈贷款是由债务收入比高或者债务收入比未知的购房者造成的。2.2数据划分了解DataPartition(数据划分)节点查看数据划分节点的缺省设置把DataPartition节点放到框图里.把DataPartition节点和CRSSAMP.HMEQ节点连起来.Notes1DataUariablesPartitiont,-Method:Simp1eRandomStratifiedUserDefinedRand
17、omSeed:GenerateNeuSeedI45Percentages:Train:|40Ualidation:|30Test:|30Total:100iFi匕為tifiOutput3.打开DataPartition节点,或者通过双击节点或者右击鼠标并选择Open.Inlxl建DataPartition选择标签左上部的划分方法.按缺省方式,EM在输入数据中抽取简单随机样本并划分为训练数据、验证数据和测试数据.如要进行分层抽样,选择Stratified圆钮并使用Stratified标签中的选择项建立各个层次.如要进行用户自定义的抽样,选择UserDefined圆钮并使用UserDefined标
18、签中的选择项挑选出数据集合中的某个变量,该变量确定划分.在启动抽样过程前你可以在标签的左下部分指定一个随机种子。计算机程序的随机化过程经常始于某种种子。如果你在不同的挖掘流程使用相同的数据集合和相同的种子,你会得到相同的数据划分。注意对数据的重新排序会导致数据的不同的顺序,因此导致不同的数据划分,这有可能会产生不同的挖掘结果.该标签的右边你可以指定数据划分到训练数据、验证数据和测试数据的百分数.划分HMEQ数据集合用于建模.根据现有的数据创建训练数据和验证数据集合,忽略测试数据.分布设置Train,Validation,和Test为67,33,和0.关闭DataPartition节点,选择Ye
19、s把所做的改动存起来.2.3生成和解释决策树目标:学习EM可用的决策树模型类型生成决策树模型检查模型结果和解释这些结果理论和实证角度选择决策阈值要完成第一个框图的第一阶段,需把一个Tree节点和一个Assessment节点加到工作区并连接如下:检查决策树的缺省设置.1.双击打开Tree节点.2.查看Variables标签以确保所有的变量具有适当的状态、模型作用以及测量水平.如果变量的模型角色或者测量水平信息不正确,在这个节点里是不能修改的。你必须返回到输入数据源(inputdatasource)节点去修正.3.选择Basic.以前讨论的生成决策树的选择项均在此标签中.可用的裂分标准依赖于目标变
20、量的测量水平。对于二元或者名义目标变量,缺省的裂分标准是chi-square检验,显著性水平为0.2.如果不用缺省设置,你可以用entropy减少或者Gini(基尼数)减少的方法作为裂分标准。对于有序目标变量,只有entropy或者基尼数方法。对于连续型目标变量,你有两个裂分标准供选择:缺省F检验或者方差减少。这一标签的其它选择项影响树的生长和大小。按照缺省,只有二元裂分可用,树的最大深度是6个层次,树叶中最小的观测记录数是1.然而,还有一个节点裂分所需要的观测记录数的设置。这个数值的缺省值是训练数据里所有的记录数除以100.4.关闭Tree节点.从Tree节点运行框图。右击Tree节点并选择
21、Run.选择弹出框的Yes查看结果.当查看树节点的结果时,All标签处于活动状态,界面展示了后面几个子标签的总结从右下角的图形我们知道训练数据集合最初生成的是18个树叶的树,然后根据验证数据集合被修剪成有8个树叶的树。左下角的表告诉我们这个8个树叶的树在验证数据上的精度是89.02%.7.通过选择菜单条ViewTree查看树.以下是树的一部分.尽管这棵树应该有8个树叶,但这些树叶并不都能看到。根据缺省,决策树浏览器只显示3层.要修改可浏览的层数,操作如下:选择ViewOTreeOptions在Treedepthdown区域键入6.选择OK.检查一下所有8个树叶是否都能看到.Thecolorsi
22、nthetreeringdiagramandthedecisiontreeitselfindicatenodepuritybydefault.Ifthenodecontainsallonesorallzeros,thenodeiscoloredred.Ifthenodecontainsanequalmixofonesandzeros,itiscoloredyellow.Youcanchangethecoloringschemeasfollows:1.SelectToolsODefineColors.ColorPalette-TreeCo1ortreeringby:厂Targetva1uesPr
23、oportionofatargetva1ue$Assessmentva1ues厂InputvartablesCo1orGroups:D8Bound:|MINT|0.50.51570.5470.57830.60360.64090.67220.7035匸匸匸0.7348OKIApp1yI2.SelecttheProportionofatargetvalueradiobutton.Select0intheSelectatargetvaluetable.Selectingzeroasthetargetvaluemakestheleaveswithallzerosgreenandthosewithnoz
24、eros(thatis,allones)red.Inotherwords,leavesthatincludeonlyindividualswhowilldefaultontheirloanwillbered.SelectOK.Inspectthetreediagramtoidentifytheterminalnodeswithahighpercentageofbadloans(coloredred)andthosewithahighpercentageofgoodloans(coloredgreen).你还可以改变树节点统计量的显示.1.选择ViewOStatistics2.要关闭Countp
25、erclass(每类别的数量),右击Countperclass行的Select列。在弹出菜单里选择SetSelectONo.3.同样方法关闭Ninnode,PredictedValue,TrainingData,以及NodeID行,你的屏幕上可以看到更多的树叶.4.选择OK.注意第一次裂分发生在DEBTINC变量上。以下步骤可用来决定哪一个分枝包含缺失值:把光标头指在树图根节点下的变量名DEBTINC上.右击并选择ViewcompetingsplitsCompetingSplits(可选择裂分)窗口打开。该表列出了按worth的测量值排列的前5个可考虑用于裂分的变量.选择DEBTINC.选择B
26、rowseruleModifyIntervalVariableSplittingRule(修正连续变量裂分法则)窗口打开.该表给出了每一个分枝的变量数值范围以及包含缺失值的分枝号。在目前情况下,包含45.1848的变量值的分枝包含缺失值.关闭ModifyIntervalVariableSplittingRule窗口,CompetingSplits窗口,以及树图.使用树选择项你可以调整缺省树算法以便生成不同的树。这些改变并不一定改进树的分类性能,但可以改进其可解释性.Tree节点按缺省裂分为二分为两个节点(被称为binaryspl)t理论上使用多方向裂分的树并不比使用binarysplits的树
27、更灵活或者更有效果。其主要目的是加强最终结果的可解释性.考虑生成一个可允许4方向裂分的树.1.点击框图上的树名称,把它改为DefaultTree.在工作区加入另一个树节点.连接DataPartition节点和这个Tree节点.4.打开这个新的Tree节点.选择Basic标签.在Maximumnumberofbranchesfromanode(一节点最多分叉数)处输入4.这个选项允许2,3,4个分叉.Maximumnumberofbranchesfromanode:4关闭这个Tree节点,并在弹出框中同意存储改动.在弹出框中输入DT4way作为模型的名称。看到它你会想到你指定的是4-方向裂分树.
28、选择OK.从这个树节点运行挖掘流并浏览结果.这棵树树叶的数量从8增加到33.这棵树是否比二分树更容易为人理解只是个人的偏好而已。增加的树叶数量可以增加模型较低层次的解释力。在验证数据上的分类精度只增加了0.25%虽然模型的复杂度增加了许多.如果你看树图,你会发现许多节点只包括几个申请人。你可以使用其它的生成选择去限制这一现象.12.关闭Results窗口.限制树的生长各种停止或者阻止法则(也被成为预剪枝)可以用来限制决策树的生长。例如,人们通常会认为一个节点的记录2*(Minimumnumberofobservationsinaleaf).Inthisexample,theobservatio
29、nsrequiredforasplitsearchmustbegreaterthan2*25=50.Anodewithfewerthan50observationscannotbesplitintotwonodeswitheachhavingatleast25observations.Ifyouspecifynumbersthatviolatethisrequirement,youwillnotbeabletoclosethewindow.5.关闭Tree节点并存储所做的改动./在关闭时如果Tree节点没有弹出对话框让你存储改动,这说明原有的设置没有被修改,这是你要重新打开这个节点并重新修改设
30、置.6.重新运行Tree节点并浏览结果.这个最佳树有8个树叶。在验证数据上的精度略有下降,为88.56%.7.选择View。Tree看树图.119.8/220.25?080.2/279.8K1791398032021569Total39931967134.4/522.刚16.75?6.9/5196.4/596.3/5I162.15?61.9/5065.GX77.85?093.35?93.IX03.GX3.7037.95?38.IX11121207104153261520266021A0286213970210317164Total329Total30691501Total5527Total83
31、7430注意在DEBTINC上的第一个裂分下面有4个分枝.8.浏览后关闭树图及节点窗口.比较模型Assessment节点用于比较模型.要从Assessment节点运行框图,右击Assessment节点并选择Run.在弹出的对话框中选Yes查看结果.3.在AssessmentTool窗口,点击并拖拽鼠标把两个模型都选上.4.选择Tools。LftChart.右击ToolName框内空白处,选择format,选择modelname缺省给出的是一个Cumulative%Response(累积因变量)图。根据缺省,人群按预测的因变量概率划分为10个等分组,然后画出实际的因变量百分数(即Y轴)要看实际值
32、,点击ViewInfo工具然后点击模型对应的折线。点击靠近图形左上角的Tree-2线,得到%Response为82.06,含义是什么呢?要解释Cumulative%Response图,需知道它是如何生成的.就这个例子而言,响应人(responder)被定义为一个欺诈贷款的人(BAD=1).对每一个人,拟和的模型(在此是一个决策树)给出了此人将来会欺诈贷款的概率预测。把所有的记录按响应的预测概率从大到小排序.把人分成有序组,每一组包含大约10%的数据记录.Cumulative%ResponseCumulativeLiftValue使用目标变量BAD,计算每一组实际响应人的百分数c.如果模型有用,
33、响应者(欺诈者)的比例在响应预测概率高的组将会相对高。前面给出的累积响应曲线显示了前10%,20%,30%等实际响应者的百分数。在前10%的组里,80%多的人是贷款欺诈者;在前10%的组里,欺诈者的比例下降到只有72%.水平线代表的是用于比较的基准比率(大约20%),这个比率是你随机抽样时预期的欺诈者百分数的估计.上图给出的累积百分数,但你还可以选择图形左边Non-Cumulative旁边的圆钮查看每一个组里响应者的比例.选择Non-Cumulative旁边的圆钮并查看图形.Cumulative%ResponseNon-Cumulative%ResponseNon-Cumulative图形表明
34、一旦预测概率的值在前20%以外,欺诈率要比你选一个随机样本所期望的欺诈率要低.选择Cumulative然后选LiftValue提升图描画的在不同标度上的相同信息。记得总体的响应率大约为20%。提升图可通过把每一个小组的响应率除以总体响应率得到。因此提升图描绘的是基于基础线的相对改进.LiftValue5103050709020406080100PercentileTooINameI|BaselineOTreeI|Tree-2我们知道在按预测概率排序的前10%的组里欺诈者比例为82.06%.82.06%除以20%(baselinerate)得到略大于4的数,这表明你在这个组里会得到比相同人数的简
35、单随机样本里4倍多的欺诈者.你可能会提出这样的问题:每一个组里响应者占全部响应者的百分数是多少?。这个百分数是用%CapturedResponse计算的。要查看计算结果,选择CapturedResponse旁边的圆钮。用ViewInfo工具评价模型的性能。你可以看到如果你拒绝申请者的百分数为20%,你可能挑出了大约70%将会欺诈的人(提升比例是3.5!).40%,你可能挑出了大约80%将会欺诈的人(提升比例大于2!).关闭LiftChart和AssessmentTool窗口.Inordertochoosetheappropriatethresholdtoclassifyobservations
36、positivelyornegatively,thecostofmisclassificationmustbeconsidered.Inthehomeequitylineofcreditexample,youaremodelingtheprobabilityofadefault,whichiscodedasa1.Therefore,EnterpriseMinersetsuptheprofitmatrixasshownabove.ExampleRecallthehomeequitylineofcreditscoringexample.Presumethateverytwodollarsloane
37、deventuallyreturnsthreedollarsiftheloanispaidoffinfull.Assumethateverytwodollarsloanedreturnsthreedollarsiftheborrowerdoesnotdefault.Rejectingagoodloanfortwodollarsforgoestheexpecteddollarprofit.Acceptingabadloanfortwodollarsforgoesthetwo-dollarloanitself(assumingthatthedefaultisearlyintherepaymentp
38、eriod).Thecostsofmisclassificationareshowninthetable.Onewaytodeterminetheappropriatethresholdisatheoreticalapproach.ThisapproachusesthepluginBayesrule.Usingsimpledecisiontheory,theoptimalthresholdisgivenby0.Usingthecoststructuredefinedforthehomeequityexample,theoptimalthresholdis1/(1+(2/1)=1/3.Thati
39、s,rejectallapplicationswhosepredictedprobabilityofdefaultexceeds0.33.YoucanobtainthesameresultusingtheAssessmentnodeinEnterpriseMinerbyusingtheprofitmatrixtospecifytheprofitassociatedwiththeleveloftheresponsebeingmodeled(inthiscase,aloandefaultora1).Asabonus,youcanestimatethefractionofloanapplicatio
40、nsyoumustrejectwhenusingtheselectedthreshold.选择决策阈值首先考虑从理论上决定的决策阈值返回到项目Projectl流程图,打开DefaultTree节点,并选择打分(Score)标签选择Training,Validation,andTest旁的选箱,这样预测值被加到数据集合。关闭树节点,并保存改动。在DefaultTree节点后加入一个Insight节点。打开Insight.6点击Data标签,选择Select查看前面用过的数据集合。7.从这个DefaultTree节点选择验证数据集合。8.选择OK.在InsightSettings窗口的Data标签
41、中,选择EntireDataSet,因此Insight将使用验证数据集合的所有记录。关闭节点,保存所做的改动。运行Insight节点并浏览运行结果。该数据集合的新变量之一是P_BAD1,它是预测的贷款人目标变量=1(贷款欺诈)的概率。如果想按这个变量给数据集合排序:12.点击该数据表左上角的三角形,并选择Sort.19B22|1IntiIntIIntiNonInt1NomIIIntIIIntIFindNext3AD01BADUBADFBADRBAD1RBhD0|11734J10.17341734B幫EMDATA.SVALOECWMovetoFirstMovetoLastSort.35290.3529-.3529NewObservationsNewVariables氐fineVariables.FillValues.Extract337500109375-.9375337500i09375-.
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论