京公网安备 11010802034615号
经营许可证编号:京B2-20210330
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 的部分,是关于属性的密度分布图的总体浏览。 (六) 重复上述步骤,可形成用户自己的决策树。 |
数据分析咨询请扫描二维码
若不方便扫码,搜微信号:CDAshujufenxi
在数据可视化领域,单一图表往往难以承载多维度信息 —— 力导向图擅长展现节点间的关联结构与空间分布,却无法直观呈现 “流量 ...
2025-10-27这个问题问到了 Tableau 中两个核心行级函数的经典组合,理解它能帮你快速实现 “相对位置占比” 的分析需求。“index ()/size ( ...
2025-10-27对 CDA(Certified Data Analyst)数据分析师而言,“假设检验” 绝非 “套用统计公式的机械操作”,而是 “将模糊的业务猜想转 ...
2025-10-27在数字化运营中,“凭感觉做决策” 早已成为过去式 —— 运营指标作为业务增长的 “晴雨表” 与 “导航仪”,直接决定了运营动作 ...
2025-10-24在卷积神经网络(CNN)的训练中,“卷积层(Conv)后是否添加归一化(如 BN、LN)和激活函数(如 ReLU、GELU)” 是每个开发者都 ...
2025-10-24在数据决策链条中,“统计分析” 是挖掘数据规律的核心,“可视化” 是呈现规律的桥梁 ——CDA(Certified Data Analyst)数据分 ...
2025-10-24在 “神经网络与卡尔曼滤波融合” 的理论基础上,Python 凭借其丰富的科学计算库(NumPy、FilterPy)、深度学习框架(PyTorch、T ...
2025-10-23在工业控制、自动驾驶、机器人导航、气象预测等领域,“状态估计” 是核心任务 —— 即从含噪声的观测数据中,精准推断系统的真 ...
2025-10-23在数据分析全流程中,“数据清洗” 恰似烹饪前的食材处理:若食材(数据)腐烂变质、混杂异物(脏数据),即便拥有精湛的烹饪技 ...
2025-10-23在人工智能领域,“大模型” 已成为近年来的热点标签:从参数超 1750 亿的 GPT-3,到万亿级参数的 PaLM,再到多模态大模型 GPT-4 ...
2025-10-22在 MySQL 数据库的日常运维与开发中,“更新数据是否会影响读数据” 是一个高频疑问。这个问题的答案并非简单的 “是” 或 “否 ...
2025-10-22在企业数据分析中,“数据孤岛” 是制约分析深度的核心瓶颈 —— 用户数据散落在注册系统、APP 日志、客服记录中,订单数据分散 ...
2025-10-22在神经网络设计中,“隐藏层个数” 是决定模型能力的关键参数 —— 太少会导致 “欠拟合”(模型无法捕捉复杂数据规律,如用单隐 ...
2025-10-21在特征工程流程中,“单变量筛选” 是承上启下的关键步骤 —— 它通过分析单个特征与目标变量的关联强度,剔除无意义、冗余的特 ...
2025-10-21在数据分析全流程中,“数据读取” 常被误解为 “简单的文件打开”—— 双击 Excel、执行基础 SQL 查询即可完成。但对 CDA(Cert ...
2025-10-21在实际业务数据分析中,我们遇到的大多数数据并非理想的正态分布 —— 电商平台的用户消费金额(少数用户单次消费上万元,多数集 ...
2025-10-20在数字化交互中,用户的每一次操作 —— 从电商平台的 “浏览商品→加入购物车→查看评价→放弃下单”,到内容 APP 的 “点击短 ...
2025-10-20在数据分析的全流程中,“数据采集” 是最基础也最关键的环节 —— 如同烹饪前需备好新鲜食材,若采集的数据不完整、不准确或不 ...
2025-10-20在数据成为新时代“石油”的今天,几乎每个职场人都在焦虑: “为什么别人能用数据驱动决策、升职加薪,而我面对Excel表格却无从 ...
2025-10-18数据清洗是 “数据价值挖掘的前置关卡”—— 其核心目标是 “去除噪声、修正错误、规范格式”,但前提是不破坏数据的真实业务含 ...
2025-10-17