• 信用风险评分卡研究-第7章笔记


    引言
    LOGISTIC回归在信用评分卡开发中起到核心作用。由于其特点,以及对自变量进行了证据权重转换(WOE),LOGISTIC回归的结果可以直接转换为一个汇总表,即所谓的标准评分卡格式。
    通常,LOGISTIC回归可以用一个名义或顺序因变量的建模。然而,本书仅限于介绍二元因变量的情况,因为这是大多评分卡申请的情况。

    本章将介绍LOGISTIC回归的基本公式,用于建立模型的PROC LOGISTIC的主要选项,以及进行模型评价的常用指标。证据权重转换将在第8章介绍,LOGISTIC回归模型中变量选择的方法在第9章介绍。

    基本公式
    首先,假设有N个包含违约状态变量y的观测值。违约状态变量Y有两种情况:0表示正常事件,1表示违约事件。同时,假设收集到R个预测变量,或自变量,也被称为协变量,x1,...,xr,第i个观测值的自变量和因变量的取值分别表示为xi1,...,xir和yi,基符号详见表7.1.

    P是违约的概率,而(1-p)是正常的概率。
    比例P/(1-P)被称为比率,即违约事件概率与正常事件概率的比值。因此,logit函数仅仅是比率的自然对数。而logistic回归模型是用比率的对数作为因变量的线性模型。

    logit函数并不是唯一可用于logistic回归模型的转换式。概括该过程,应用概率p的函数形式被称为联系函数。SAS/STAT中的PROC LOGISTIC 支持几个这样的联系函数。当因变量是二元变量时,PROC LOGISTICS默认的联系函数是logit函数。因为在标准信用评分卡的情况下,只用到logit函数,所以不需要深入探讨这些函数。

    在进一步介绍logistic回归的公式和属性之前,通过一个简单的案例探讨其基本特征。该例将介绍PROC LOGISTIC的核心说明。

    例7.1 第6章介绍的样本数据集CreditCard中包含了1200个信用卡客户的数据。该数据既包含申请字段,也包含了行为字段。字段Status代表账户状态,其中正常用0表示,违约用1表示。输入数据需要的SAS代码在文件夹CC_DataSet.sas中。列表7.1是用于分析字段Status的代码,用PROC FREQ计算出违约率是33%。

    PROC FREQ DATA=CREDITCARD;
    TABLE STATUS;
    RUN;
    建立第一个模型将使用部分申请字段。列表7.2 表示使用logistic 回归建立一个包含变量CustAge、TmAtddress、CustIncome和TmWBank的模型。

    列表7.2 使用PROC LOGISTIC申请字段的第一个模型
    PROC LOGISTIC DATA=CREDITCARD;
    MODEL STATUS(EVENT='1')=CustAge TmAtAddress CustIncome TmWBnak;
    RUN;

    该模型的参数估计详见表7.2

    似然方程
    用给定数据拟合LOGISTIC回归模型,首先从似然函数和似然方程开始。最大似然法则(ML)通过构建一个代表从建议的模型得到数据的似然值而发生作用。然后,如果给定的参数数据最大化了似然函数的值,则该法认为得到了最优模型。
    因此,实施最大似然法则包含三个步骤:
    1、假设数据遵循一种待定的模型形式。在这种情况下,模型遵循公式7.4给定的形式,包含的未知参数B0,B1,...,Br。
    2、如果数据遵循这咱特定模型形式,可以构建一个函数来计算给定数据的似然值。
    3、估计模型参数以实现似然函数的最大化。
    如前所述,有n个观测值,每个都包含自变量x1,...,xr,这些变量包含在向x中,第i个观测值将用符号xi1,...,xir,或向量xi表示。对于每个观测值,可以知道二元因变量y的值取为0或1.因此,这些观测值可以成对地表示(xi,yi),i=1,...,n。并且,假设这些观测值是独立的。信用评分卡的案例中,这意味着客户的违约行为相互之间独立的。
    现在,拟合公式7.4中LOGISTIC回归模型,并找出相应的参数向B。将数据点xi,i=1,...,n的值代入模型,可以得到事件(yi=1)的估计概率。将这些估计概率表示为ni,i=1,...,n。显示,这些概率是自变量值的函数。因此,可以用n(xi)代替ni。这两个符号将交替使用。
    根据最大似然法则,当期望值ni,i=1,...,n等于相对应的实际结果yi,i=1,...,n时,要求似然函数能够实现最大值。因为实际结果yi的取值只能是0和1,该函数的一种可行选择是期望值的联合概率。观测值相互独立的假设将似然函数简化为单个观测值估计概率的结果。似然函数这种选择的数学表达式如下:

    可以证明,只要满足以下两个条件,信息矩阵总是正定的,即具有可逆的且行列式为正的子矩阵:
    1、自变量间不存在共线性。如果一个或多个变量可以表示为其他变量的线性组合,就可以说该组变量间存在共线性。例如,一个信用卡账户支付的总利息等于息率乘以未偿还余额。共线性结果存在奇异信息矩阵中。
    2、数据是非线性可分的。当自变量的线性组合可以将数据完全分类时,就发生了数据的线性可分。其数学表达为,对于所有给定的观测值,可以找到一个或多个系列的非零的常量a1,...,ar,例如:

    上述两种情况下,似然函数的二阶层数都不是正定的,而且数据不允许对有效的最大似然模型进行拟合。
    在默认情况下,PROC LOGISTIC将检验自变量的共张线性。被证明是其他变量线性组合的自变量将自动从模型中移除,并被标识为一个空模参数。

    PROC LOGISTIC 还将检查线性可分性。当角在8次或更少次数的迭代中收敛,该算法就将其看成是不可分的证据。对可分性的检验可以通过选项NOCHECK禁用,但并不推荐如此。
    当数据是线性可分时,LOGISTIC模型面临两个基本问题:
    1、似然函数是无限的,即没有最大值。
    2、模型的参数估计将是无限的。PROC LOGISTIC中使用的数值算法得到的参数估计的值非常大。

    好消息是,当PROC LOGISTIC 发现疑似线性可分时,会发出一个警示并在输出结果中打印出一个建议作息,说明该解是可疑的。
    实践当中,当模型拟合使用的数据集只有当量的观测值且包含大量二元自变量时,线可分更容易发生。这些二元变量可能是映射名义变量和连续变量分段的结果或来自实际的二元预测变量。

    PROC LOGISTIC 提供了两种求解似然函数,并估计模型参数的方法。

    估计参数的标准误较小的自变量被认为要比标准误较大的自变量更应该纳入模型。然而,考虑到参数值本身之间比较,沃尔德卡方统计量被定义为估计参数与其估计标准误之比的平方。
    沃尔德卡方统计服从自由度为1的卡方分布。因此,可以计算相当于该统计量的P值。该P值可以解释为该变量不应被纳入模型的概率。

    在默认情况下,PROC LOGISTIC输出一个表,其中包含模型参数、标准误、沃德尔卡方统计量及其对应的P值。该表被命名为“最大似然估计分析表”。

    列PR>CHISQ是变量不应该纳入模型的显著性检验,是基于沃尔德卡统计量的值,简称为参数估计的P值。例如,变量TmAtAddress的P值是0.922,这意味着该变量不应该纳入模型的概率是92.2%,建议将该变量从模型中移除。当然,移除该变量将生成新的模型参数以及沃尔德卡统计量的值,并且不能保证留下来的所有变量都有可以被接受的P值。
    接下来考虑参数估计的置信区间。沃尔德置信区间,也被称为正态置信区间,基于参数会计是渐进正态分布的事实。因此,可以计算第i个参数,bi的100(1-a)沃尔德置信区间如下:

    如果model语句中使用CLPARM=WALD选项,PROC LOGISTIC可以计算沃尔德参数置信区间。

    LOGISTIC回归模型的评估可以分几个阶段进行。首先,是考虑检查似然函数的统计量。通过与仅包含截距项的模型进行比较,这些统计量可以评估将自变量引入模型的效应。
    第一个统计量是似然函数包含和不包含变量时自身的对数。需要记住的是,n0和n1分别是y=0和y=1的观测值的数量。这样,只包含截距项的L1的值给定如下:

    为了惩罚包含大量自变量的模型,制定了两个标准:(1)赤池信息准备(AIC);(2)舒尔茨准则(SC)。舒尔茨准则也被称为贝叶斯信息准则。

    在这两种情况下,只包含截距项和包含模型变量时准则值之间的差异越大,模型就越好。比较两个模型时,AIC和SC值较小的模型较好。需要注意的是AIC引入了一个对模型复杂性的惩罚机制,表现为模型参数数量r的形式,r是样本规模对数的比例。因些,AIC比SC更倾向于接受复杂的模型。
    最后,在LOGISTIC回归模型的情况下,广义决定系数被定义为包含或不含有自变量的似然函数的值。

    Hosmer-Lemeshow 检验的基本原理是将建模数据分成一定数据的段并比较每一段中实际和估计的违约数量,其显著性通过卡方分布进行评估。

    该检验将建模数据分成G段,按照估计的违约概率的升序排列。然后,计算每一段平分的估计概率,以及实际的违约数量。

    通过找出自由度为g-m的卡方分布的p值可以计算出x2m的显示性,其中m是用户定义的数值。默认的m值是2.

    PROC LOGISTIC 将Hosmer-Lemeshow检验归类为拟合不足经验。因此,当MODEL语句中的选项LACKFIT<m>被激活时,它将被计算并输出显示在主程序结果中。语句LACKFIT后面的可选值默认是2,在典型的评分卡应用中这通常是一个很好的值。PROC LOGISTIC 不允许用户控制分段的数量,即公式7.40中的G.SAS/STAT文件中解释了根据观测值的数量和数据模式确定分组数量的方法。但同时也指出g的值近似等于10.

    列表7.8是使用数据集CREDITCARD的一个LOGISTIC回归模型的代码,以及用明确定义的值m=2计算Hosmer-Lemeshow统计量

    PROC LOGISTIC DATA=CREDITCARD;
    MODEL STATUS(EVENT='1')
    =CustAge TmAtAddress CustIncome TmWBank /LACKFIT(2);
    RUN;

    列表7.9是对极大似然估值以及Hosmer-Lemeshow检验结果的分析,其中包括两个部分。第一部分是数据区,和观测到的以及预期的反映数量值。第二部分列出来的x2m统计量的卡方显著性检验的结果。

    显著性检验表明,模型严重拟合不足。由于变量TmAtAddress的显著性较低,所以这种结果并不令人感到意外。

    全局零假设的检验
    接下来,对模型质量进行的评估是对所有参数都实际为零,即B=0的假设进行检验,该假设也称为全局零假设。该假设的目的是检验当前的模型是否由于抽样结果而偶然得到,而不是由真实的基础模型生成的数据得到。通霄这,样本量越大,自变量和违约变量之间的关联性指标就越强;得到一个所有参数都是零的模型的可能性就越低。因而,该检验是用于判断模型真实成立而不是产物的一个标准工具。
    用于检验零假设的统计量有三个:
    1、似然比统计量G;
    2、分数统计量;
    3、沃尔德统计;

    G统计量服从自由度为R的卡方分布。在SAS中,通过调用函数PROBCHI(.,0)可以得到G统计的P值,该函数取两个参数的最小值,第一个是G的值,第二个是自由度,即模型中自变量的个数,返回值是(1-p)。然而,并不真的需要人工执行该操作,因为PROC LOGISTIC将计算似然统计量的值以及其P值,并在输出结果中命名为全局零假设检验:BETA=0。

    如果LOGISTIC回归模型中包含一个二元变量,G将和第4.5章定义的统计量相同。实际上,第4.4节中定义的似然比统计量也表示了为G,是当前这个G一般形式。下面用一个例子说明二者之间的关系。

    列表7.10中的代码证明了用PROC FREQ 计算的和拟合LOGISTIC回归模型过程中计算的一般似然比检验统计量之间的关系。该代码首先用数据集CREDITCARD拟合LOGITIC回归模型,其中OTHERCC是唯一的预测变量。然后,该代码用违约变量Status与OtherCC生成一个频率表以及有关的关联性检验。列表7.11是输出结果中证实似然比检验统计量的值是否相等的相关部分。

    列表7.10 LOGISTIC回归似然比和一般似然比统计量
    PROC LOGISTIC DATA=CREDITCARD;
    MODEL STATUS(EVENT='1')=OTHERCC;
    RUN;

    PROC FREQ DATA=CREDITCARD;
    TABLE STATUS*OTHERCC/CHISQ;
    RUN;

    分数统计量服从自由度为r的卡方分布
    沃尔德统计量也服从自由度为R的卡方分布
    分数统计量和沃尔德统计量都默认在输出结果全局零假设:BETA=0中输出。

    概率比的置信区间
    由于概率比仅仅是模型参数的指数化,因此可以用与模型参数相同的置信区间计算它们的置信区间。模型参数的置信区间在第7.5节中已经计算出来。现在需要做的是就是计算它们的指数。
    因为概率比的对数等于模型参数的值,概率比无论从哪个方向远离1.0的变量,都是比概率比接近单位值的变量更好的预测变量。因此,检验概率比置信区间的值应该专注于这些值是否覆盖值1.0.如果这样,意味着无法确认在给定的置信水平内,考察的变量是否能够提高模型值。PROC LOGISTIC能够计算出概率比并在输出结果中以ODDS RATIO ESTIMATS的名字输出。

    列表7.13 是例7.15输出结果中的ODDS RATIO ESTIMATES部分。其中列出了概率比及其置信区间。
    需要注意的是,概率比恰好为1.0表明,变量CUSTINCOME对于模型贡献很低。同时,变量TmAtAddress的置信区间覆盖单位值。这意味着在置信区间内(95%),无法确定该变量能事提高模型值。
    尽管有上述关于概率比的推论,还是应该考虑到这些变量的规模。例如,相对于变量TmAtAddress,变量CustInCome的数量值很大,因此,希望对应于变量CustIncome模型参数非常小,这样才能便得概率比为1.

    7.12 先验概率和权重
    迄今为止,所介绍的公式都是假设代表总体的建模样本正常和违约事件的百分比相同。然而,在多数情况下,续约事件的百分比很小,所以随机抽样产生的建模数据集中只包含少量的违约事件。例如,如果违约百分比2%,一个包含10000条记录的随机样本中只有200条违约记录。无法期望用包含如此少违约记录的样本开发的模型能够稳健。这种情况下,就必须使用均衡抽样的方法。
    但是,如果建立LOGITIC回归模型所用的样本不能代表总体,而是有不同的违约百分比,这意味着违约和正常的已知或先验的概率不同。PROC LOGISTIC 提供了以下两种同样有效的解释先验概率的机制。
    1、在MODEL语句中,使用PEVENT选项设定模型因变量事件的先验概率的值。在本书的案例中,这些将是违约和正常百分比的真实值。
    2、使用一个权重变量并用WEIGHT语句识别它。
    因为在数据描述过程中,权重变量也可以用于其他程序,所以推荐使用第二种方法。
    在第5.4.4节和第5.4.5节中,已经讨论了均衡抽样的使用可以及引入权重使样本能够代表原始总体。这是PROC LOGISTIC的WEIGHT语句中将使用的变量。适用于模型统计量解释的方法和结果没有改变。

  • 相关阅读:
    Java xml 操作(Dom4J修改xml   + xPath技术  + SAX解析 + XML约束)
    Git 命令 操作
    vim常用快捷键
    离线数据分析流程介绍
    WebPack 简单使用
    React Native之React速学教程(下)
    puppet 部署 horizon server 所需的参数和部署逻辑
    jsp出现getOutputStream() has already been called for this response异常的原因和解决方法
    12款优秀的 JavaScript 日历和时间选择控件
    mysql 去重
  • 原文地址:https://www.cnblogs.com/wdkshy/p/9898560.html
Copyright © 2020-2023  润新知