system: [SYSTEM]

user: 4. 数据结果分析 4.1. 变量预处理 对数值型和字符型变量分别进行预处理，986个原始变量(944个数值型+42个字符型)最终保留142个(123个数值型+19个字符型)，大幅降低维数，为后续建立模型做准备。 4.1.1. 数值型变量 944个数值型变量，删除所有取值为常数的变量后，还剩832个，按照变量含义可分为17组，使用proc princomp对每组变量分别进行分组主成分分析，保证累积方差贡献率在70%左右，最终总共从原始变量中挑选出123个主成分，作为后续预测模型的指标。表4展示变量处理前后的情况。 Table 4 Before and after variable processin 变量类别 原始变量个数 (已删除常数取值变量) 选取主成分个数 累计方差贡献率 个人业务基本情况 109 17 70.55% 存款及本外币持有额 76 7 66.21% 柜台业务 106 17 68.77% 网银业务 76 8 67.82% 电话业务 49 5 70.38% 手机银行业务 60 6 70.00% 网络银行业务 20 4 66.39% 自助设备业务 56 7 68.27% 乐收银POS机业务 44 5 68.91% 本行POS机业务 35 4 68.31% 它行POS机业务 37 6 66.37% 其他业务 22 4 66.71% 大额业务 8 2 94.27% 信用卡业务 20 4 65.10% 定期存款业务 20 8 67.08% 理财产品业务 33 6 71.97% 基金业务 61 13 68.24% 表4. 变量处理前后示意 4.1.2. 字符型变量 42个字符型变量，经过以下处理，最终整合选取19个。 1) 删除6个：取值唯一的4个，包括2个是否型变量、2个持有标志型变量；人为判断影响不大的2个，包括开户机构、证件类型。 2) 选择性保留20个：部分重要变量直接保留，包括客户号、性别等；取值相同、含义包含的变量，持有国债标志和持有凭证式国债标志，仅保留一个；使用prop freq做卡方检验，含义相近、不相互独立的变量，3个持有钱生钱理财产品标志的变量、4个持有基金标志的变量，分别仅保留一个。 3) 整合重编码16个：把16个原始的持有卡种信息变量转变为5个自定义变量。原始变量包括表2中的15种卡，以及“最高卡级别”变量，自定义变量分别为是否借记卡、是否信用卡、是否国际卡、是否国内卡、信用卡等级。前四个自定义变量取值为0、1，即1为是，0为不是，信用卡等级是按照卡种额度赋予的排序值。原变量重编码后的取值见表5，信用卡等级标准见表6。 Table 5 User defined variable value after the original variable is recode 原始变量 自定义变量 卡种 借记 信用 国际 国内 信用卡等级 欧元卡 1 0 1 0 0 澳元卡 1 0 1 0 0 美元卡 1 0 1 0 0 薪资理财卡 1 0 0 1 0 商务卡 1 0 0 1 0 国际普卡 0 1 1 0 1 国际银卡 0 1 1 0 2 国际金卡 0 1 1 0 4 国际钻石卡 0 1 1 0 5 金普卡 0 1 0 1 2 标准白金卡 0 1 0 1 3 豪华白金卡 0 1 0 1 4 白金理财卡 0 1 0 1 3 钻石卡 0 1 0 1 5 无限卡 0 1 0 1 6 表5. 原始变量重编码后的自定义变量取值 Table 6 Credit card type and grade and quot 信用卡 等级 额度 借记卡 0 0 普卡/国际普卡 1 5千~1万 金卡/国际银卡 2 1~5万 普通白金卡 3 5~10万 豪华白金卡/国际金卡 4 10~30万 钻石卡/国际钻石卡 5 30~100万 无限卡 6 100万以上 表6. 信用卡卡种–等级–额度对照表 4.2. 两种模型的预测结果及效果比较 Logistic回归预测模型最终选择了69个变量，部分系数估计值见表7，从表中可以看出，当一名客户近期从柜台转出金额、或信用卡消费增加、或购买更多理财产品，他的违约概率会增加，而客户价值等级为A以及职业为1的客户，违约概率会减少。随机森林预测模型最终构建了100棵决策树，挑选其中一棵树，模型中部分变量重要性见表8。表中“节点个数”表示在这棵树的所有判断节点中，以该变量的取值作为判断准则的节点个数，“基尼重要度”显示变量对预测结果的重要程度，从表中可以看出，近期POS机交易金额、近期资产总计、近期资产增加值，对预测违约状态影响较大。使用SAS EM还可以绘制该树划分客户的具体流程图，相比于Logistic回归，树方法能提供更直观易懂的判别流程，该树部分判断流程见图1。 图1. 随机森林中某一棵决策树的部分具体判别流程 Table 7 Analysis results of some variables in logistic regression mode 变量 估计 标准误差 Wald卡方 Pr≥卡方 近期柜台转出交易金额 0.01029 0.0182 32.1088 ≤0.0001 近期信用卡人民币消费增加值 0.3418 0.0774 19.5105 ≤0.0001 近期理财产品交易金额增加值 0.325 0.0277 137.3748 ≤0.0001 客户价值等级(A) −2.4561 0.1868 172.9554 ≤0.0001 职业(1) −0.4217 0.1549 7.4068 ≤0.0001 表7. Logistic回归模型部分变量的分析结果 注：形如“职业(1)”的变量名称表示该分类变量的取值为括号里的值。 Table 8 Analysis results of some variables in random forest mode 变量 节点个数 基尼重要度 近期POS机交易金额 4 1 近期资产总计 7 0.435939617 近期资产增加值 12 0.434289408 近期银保通金额 7 0.347330495 近期本币新增余额 7 0.324201205 表8. 随机森林模型部分变量的分析结果 将预测模型应用于测试集，使用rocplot宏包，绘制ROC曲线，由Youden指数选择最优截断点分别为0.37283、0.49551，即Logistic回归预测违约的概率超过0.37283，随机森林预测违约的概率超过0.49551，就认为该客户可能违约。作为对比，又建立决策树预测模型，三种模型的混淆矩阵见表9。从表中可以看出，对于Logistic回归模型，测试集60，000个数据中，预测和实际都可能违约的数据有2514个，占全体实际可能违约数据的75.39%，即为本文定义的预测准确率。对于随机森林模型，测试集20，000个数据中，预测和实际都可能违约的数据有1507个，预测准确率84.95%。对于决策树模型，测试集20，000个数据中，预测和实际都可能违约的数据有1380个，预测准确率为77.79%，略高于Logistic回归预测模型，但其解释性较差，而随机森林预测模型对比决策树模型在精确性上占据明显优势。两种预测模型的ROC曲线比较见图2。最终得到，Logistic回归预测模型，AUC = 0.847，预测准确率为75%；随机森林预测模型，AUC = 0.848，预测准确率为85%。二者AUC面积差别不大，但随机森林模型的预测准确率较Logistic回归模型有显著提升。 Table 9 Confusion matrix of three model 训练集 测试集 真实值 真实值 不会违约 可能违约 不会违约 可能违约 Logistic回归模型 预测值 不会违约 9980 1734 43060 820 可能违约 3003 5283(75.29%) 13606 2514(75.39%) 随机森林模型 预测值 不会违约 38628 813 12844 267 可能违约 15342 5217(86.52%) 5382 1507(84.95%) 决策树模型 预测值 不会违约 36742 1239 13453 394 可能违约 17228 4791(79.45%) 4773 1380(77.79%) 表9. 三种模型的混淆矩阵 注：百分比为预测准确率。 图2. 两种模型ROC曲线