SAS决策树:信贷风险建模试验

、 概论

决策树通过应用一系列简单的规则建立起对观测数据的分类。决策树对于观测值的分类建立在变量的输入值基础上。每条规则都是在前一条规则形成的层次的基础上对观测数据的进一步划分,而最终建立的划分层次称为决策树,每个划分段称为决策树的一个结点。最初的未进行划分的片段包括所有的观测数据称作决策树的根结点。一个结点和它所有的后续结点共同构成一颗子树。决策树中最底层的结点叫做叶子。观测数据都将会被分配到其中的一个叶子之中。

二、 建立决策树实例

本文将引用SAS软件自带数据(SAMPSIO.HMEQ)建立决策树,用来分析是否应该同意客户的家庭资产抵押贷款。该数据集包含5,960个观测数据并存放在抽样数据库中。BAD目标变量是一个二进制变量用于指明贷款申请者是有可能拖欠贷款者还是可信的。这种不利情况可能在1189个案例中发生的可能性19.95%。该数据集中有12解释变量用于建立决策树。

(一)建立决策树的变量要求

决策树的建立需要一个目标变量(响应变量),以及至少一个输入变量(自变量、解释变量)。响应变量和解释变量的设置在输入数据源结点中设置。

(二)结点总揽

建立的决策树数据分析过程包括一下三个结点Input Data Source、Data Partition以及决策树结点,最终建立结果如图(1):

图(1)

(三)新建 数据挖掘项目

1、 SAS的命令窗口输入命令 miner,进入数据挖掘窗口。

2、 在菜单栏中选择 文件 —〉新建—〉项目,弹出新建数据挖据项目 如 图(2)。

图 (2)

3、 在Create new project 窗口中点击 Create 按钮,进入new tree 项目。并为新的数据项目更名为:Tree Node。

(四)建立输入数据源结点

添加一个 输入数据源 结点,为本次数据分析建立起数据源。

1.1.1 增加一个 Input Data Source 结点,选择项目列表下方的Tools 选项。在列表中选择 Input Data Source结点,点击鼠标左键将Input Data Source拖入右侧的工作空间。

1.1.2 双击工作空间Input Data Source 结点,进入Input Data Source的设置窗口。

1.1.3 在Input Data Source设置窗口中的Data项中点击Select按钮,选择数据源。进入选择 SAS Data Set窗口。在Library项选择SAMPSIO—〉 HMEQ。

如图(3)。

图(3)

1.1.4 点击ok,回到Input Data Source设置窗口,选择Variables项,在variables项中找到BAD数据项,在BAD行 Model Role 项上点击鼠标右键选择Set Model Role选项—〉Target项,如图(4)。

图(4)

1.1.5 关闭Input Data Source设置窗口,并保存。

(五)建立 Data Partition 结点

Data Partition结点主要将元数据分为训练数据、验证数据和测试数据。其中训练数据用于生成决策树轮廓,验证数据用于比较响应变量的观测值和预测值,而测试数据使用不多。

1. 像拖入Input Data Source结点一样,将Data Partition从左侧列表框拖入右侧的工作平台。

2. 建立 Input Data Source 结点 和 Data Partition结点之间的连接。如图(5)。

图(5)

3. 双击Data Partition 图标,进入属性设置界面,设置属性如图(6)

图(6)

4. 关闭该窗口,并保存。

(六)建立 Tree Node 结点

Tree Node节点是进行决策树分析的中心结点,对它的不同设置和操作将对数据集建立起不同的决策树模型。

1. 像拖入Input Data Source结点一样,将 Tree 从左侧列表框拖入右侧的工作平台。

2. 建立 Data Partition 结点 和 Tree 结点之间的连接。如图(7)。

图(7)

3. 双击tree图标,进入相关属性设置界面,相关标签属性和设置介绍如下:

1) Data 标签:该标签中展示了前一结点数据集的名称和相关的描述,这些数据集包括训练数据和验证数据等。如图(8) 。

图(8)

2) Variables标签:variables标签中可以看到观测数据集各数据项的相关情况,如图(9),

图(9)

A. 在每一个标题头上点击鼠标左键,可以按该列对表格中各项进行排序。

B. 其中可以在Status属性中列中单击鼠标右键选择Set Status将Use状态更改为Don’t Use状态。

C. 在Model Role 列点击鼠标右键选择 edit target profile 将变量进行目标变量和解释变量之间的转化。

3) Basic标签:在Basic 标签中,可以指定划分规则以及与决策树大小相关的各种参数值。下面是一个有关Basic标签各项的一个展示如图(10)。

图(10)

A. 其中划分规则(splitting criteria)可以根据目标变量的度量方面进行选择。

对于定性或二进制的目标变量,可以选择以下划分规则:

检验(默认)——Pearson 检验用于衡量对目标变量建立分支结点,其默认显著性指标为 0.20 。

熵值约简——通过对熵值大小的衡量反映结点不纯性也成为熵不纯性。

基尼系数约简——通过对基尼系数大小的衡量反映结点不纯性也成为Gini 不纯性。

对于连续型目标变量,可以选择以下两种划分规则:

F 检验(默认)——F检验的P值与结点一致性有关,默认显著性指标为 0.20。

一致性约简——该约简基于结点的均方差检验。

本例中由于目标变量是家庭资产抵押贷款为二元变量, 检验是一个比较合适的划分规则。

B. 同时可以在Basic标签指定以下相关属性值:

Minimum number of observations in a leaf(default = 1)

Observations required for a split search. 该选项保证划分的结点都有观测数据,并且对于比该项指定的观测值还要少的结点不进行继续划分

Maximum number of branches from a node(default= 2)

Maximum depth of tree (default = 6)

Splitting rules saved in each node (default = 5)

Surrogate rules saved in each node (default = 0)

Treat missing as an acceptable value.

4)Advanced标签,其中可以进行以下设置:

A. 评估度量模型的选择

评估度量模型是基于从有效的数据中获得的决策树结果中选择出最佳的决策树模型,对于范畴型目标变量或间断型目标变量会有不同的评估度量模型选择。

B. 自定子树模型

Advanced标签中的子树选项中指定怎样选择整个增长树中选择子树。一个大型的决策树会对那些随机选择的选练数据很好的适应,但对新数据进行预测上表现不佳。该选项就在于设定怎样判断一棵决策树已经足够大了。

C. 选择p值调整方法的选择

如果既没有选择 检验也没有选择F检验,就需要指定一种方法调整p值。

D. 在决策树建立过程中合并收益或损失表

下面是Advanced标签各项的一个展示,如图(11)

图(11)

5.关闭tree结点属性设置窗口并保存。

(七)运行决策树结点

在设置完成决策树结点之后,有四种方法来运行决策树结点:

A 如果该结点已经关闭:

在tree结点上右击鼠标并选择Run选项。

在菜单栏中选择 操作—〉运行。

B 如果该结点仍处于打开状态:

选择 工具—〉运行树状模型

在快捷方式栏中选择 运行树模型的图标

三、浏览决策树执行结果

运行完决策树结点,会出现如图(12),选择 Yes 就可以看到决策树的执行结果

图 (12)

其中主要的窗口如图(13)所示:

(一) 综合窗体

图(13)

对于图的解释可以参看SAS提供的帮助文件,地址为:

emgui.hlp/a000106004.htm#a000471388

或在SAS帮助文件中搜索 Tree Node 察看

Layout of the Tree Results Browser

(二) 查看树状结构图

在菜单栏中选择查看—〉树状结构 ,可以看到决策树执行结果以树状形式展现,如图 (14)。

图 (14)

图 (14)描述了典型的模型分析输出结果,分析是通过分裂的方式进行的。在图的上部是决策树模型的根结点,包含了所有的可能的观测数据,根结点中处于中间列出了训练数据为总共为4172个,19.9%可信任(不能贷款),而80.1%不可信任(可以贷款),处于右侧的数据是验证数据结果,共有 1788个验证数据,其中20.1%可信任(不能贷款),而79.9%不可信任(可以贷款)。在过程的进一步,客户被分成了两组,根据变量 DEBTING的级别值,这个变量是最能区分的变量。组的左侧观测数据3225条记录中有93.0%的客户记录是可信的(DEBTING<45.1848),右侧947条观测记录中36.3%的客户记录是可信的(DEBTING>=45.1848)。接着对于选用变量VALUE,以各条记录的 VALUE属性值与662969.5进行比较进行下一步划分,右侧以DELINQ变量进行下一步划分。左侧经过VALUE属性的划分后,第三层第二个结点在这一步停止。第一个结点则继续根据DELINQ属性值继续划分,最终到达叶子结点。

其中树状结构的每一个结点所列项目如图(15):

图 (15)

(三)以文本形式保存规则

在SAS中在查看决策树运行结果是可以将决策树的结果以base语言的形式保存为文本文件,选择菜单栏中的 文件 项—〉保存规则项。最终存储结果如图(16)。可以将该段程序复制到SAS的编辑窗口直接运行而不需要打开企业数据挖掘模块。

图 (16)

四、互动式建立决策树过程

除了上述自动由机器建立数据库的方法外,SAS还提供了一种与用户交互式的建立决策树的过程,该过程要求用户有一定的决策树算法的相关知识以及对原数据的十分了解。过程如下:

(一) 首先需要从新定义Input Data Source和 Data Partition结点,参数设置同上。

(二) 运行Data Partition结点

(三) 添加tree结点,连接tree结点和Data Partition结点, 在tree结点的图标上右击鼠标选择 Interactive属性,进入 Interactive Training:Tree窗体 ,如图(17)。

图(17)

(四) 在树环状图上点击鼠标右键,选择 Create Rules选项,进入建立规则窗体如图 (18)。

图(18)

(五) 如图(18)所示以列 Logworth 属性为标准选择值最大的进入规则,点击ok,DPW2项成为划分决策树的一个指标,如图(19)。

图 (19)

图 (19)中面板分为五部分,各部分内容反映如下:

l 图中标示 1 的部分,是关于属性DPM12的密度分布图。

l 图中标示 2 的部分,是决策树的环形图。

l 图中标示 3 的部分,是根据决策树规则对观测数据进行划分过程的错分率分布图。

l 图中标示 4 的部分,是观测数据(蓝色)和验证数据(红色)的分支密度图。

l 图中标示 5 的部分,是关于属性的密度分布图的总体浏览。

(六) 重复上述步骤,可形成用户自己的决策树。

原文链接:我爱数据分析网http://www.52analysis.com/shujuwajue/2092.html

你可能感兴趣的:(SAS)