线性回归是最基本的统计模型之一,通常用于衡量数值型变量间的线性关系,当解释变量或者被解释变量为分类型变量时,就不再适用,需要考虑设置虚拟变量或是选择其它分类模型。

下面介绍一个二元选择模型,此时被解释变量是分类变量,取值为0(不发生)或者1(发生)。

数据来源于《R数据分析:方法与案例详解》,借助logit模型测算客户违约概率,完成信用风险评估。具体分为5个步骤:数据预处理——变量筛选——建模——结果分析——参数优化。

  1. 数据预处理
    案例数据来源于台湾某大型商业银行信用卡部的数据库,包含16000条信息 ,29 个变量,即客户基本信息(性别*、年龄*、城镇或农村*、学历*、职业*、婚姻*、家庭人数*、 户籍所在地、宗教、血型、星座) ,经济状况(家庭月收入*、家庭经济等级*、个人月收入*、个人月开 销*),信用卡使用状况(信用卡张数*、使用频率*、月刷卡金额*),信用记录(逾期超过 30 天*、呆账记 录*、借款余额大于 800 万元*、退票记录、拒往记录、强制停卡记录)。

缺失值处理(因为含NA的样本数量很少,直接删去)

变量重编码(连续数据离散化、字符型变量数值化)

  1. 数据探索
    模型因变量为default,其它28个都是潜在的解释变量,如果全部引入,且不说给建模带来麻烦,也不便于实际应用,所以要有一个变量筛选过程。常用的方法有:A.经验筛选,即以历史经验过滤掉不相干变量;B.变量删除,用逐步回归等方法删除若干变量使模型变得更加显著;C.变量规约,用因子分析、主成分分析等方法将多个变量合成少数几个聚合因子。
    这里选择方法A与B,分别筛去变量10个、4个,保留的变量有14个,建立logit模型。
    另外,为了获得更好的模型外预测效果,我们将131068条数据分为traindata与testdata两部分,比例7:3,用traindata建模,testdata验证。

  2. 建模与估计

    P值是logit模型的响应概率,放到这里就是客户违约的概率,R的输出结果就是P值,而不是ln(P/(1-P)),更方便使用。

    对照前面的多元回归,这里也要关注两个统计检验,即估计参数的显著性检验(t检验)和模型的整体显著性检验(似然比检验),具体结果见下,应数通过,模型可靠。

  3. 结果分析
    以下是几个参考角度:

    系数符号
    模型系数不好解释,但符号的正负可以说明因素影响的效应方向,比如30天内违约的客户再次违约的概率更大,薪水越高的客户发生违约的概率越小;

    预测
    混淆矩阵ROC曲线可以帮助我们更好地刻画预测准确率,用上面的模型对testdata进行验证。
    因为输出结果是一个概率P值,需要转化为相应的二元选择,假设模临界概率为0.5,混淆矩阵如下,预测正确率为96.6%,比较理想。
    其实临界概率可以稍稍修正,以提高预测精度。当临界概率为0.43时,总体预测精度达97.3%,而且其中实际发生违约的全部预测正确。

  4. 参数优化
    logit模型得到的是取值为1(即违约)的概率,有时候需要转化为具体的违约情况(即违约与不违约),通常我们以0.5为临界概率,即≥0.5的定义为违约,<0.5的定义为不违约,这个阈值其实是有待商榷的,有进一步优化的空间。
    下面通过优化这个参数,错判样本相比原来降低了35例。

   ss<-seq(0.1,1,0.01)pp<-c()for (i in 1:length(ss)) {pretpye<-ifelse(predata>ss[i],1,0)kk<-data.frame(traindata$default,pretpye)pp[i]<-sum(kk[,1]==kk[,2])/nrow(kk)}ss[which.max(pp)]

logit模型相比线性回归模型,不再局限于数值型被解释变量,适用范围变得更广,相较很多分类模型的“黑箱子”算法,模型表达式明确、可得到具体概率值,在实务中还是比较好用的。

客户信用风险预测——基于logit模型相关推荐

  1. 阿里AI天池大赛-天猫复购预测-基于XGBoost模型预测

    1:报名地址 https://tianchi.aliyun.com/competition/entrance/231576/score 2:排名分数 3:模型源码 废话不多说,直接上源码 import ...

  2. [负荷预测]基于线性回归模型的中长期电力负荷预测

    目录 一.中长期电力负荷预测 二.国家电网电力数据集 三. Matlab编程实现 3.1 程序代码 3.2 多元线性回归模型 3.3  对2020年数据预测 一.中长期电力负荷预测 电力负荷预测是电力 ...

  3. Stata:Logit模型评介

    原文链接:https://www.lianxh.cn/news/011888bd49e07.html 目录 1. Logit 模型的优点 1.1 速度 1.2 预测概率 1.3 可解释性 1.4 不变 ...

  4. 模式分类识别 | Python实现基于LGBM模型的信用类型识别预测

    模式分类识别 | Python实现基于LGBM模型信用类型识别预测 目录 模式分类识别 | Python实现基于LGBM模型信用类型识别预测 识别效果 文章概述 模型描述 程序设计 学习总结 识别效果 ...

  5. 基于python的银行信用卡客户等级预测系统

    目录 一.设计要求 二.技术综述 三.需求分析 四.系统实现 数据来源 一.设计要求 1.客户数据预处理.对数据集进行缺失值处理,包含删除缺失值.填充数据等,同时对数据进行归一化处理. 2.确定影响客 ...

  6. ML之xgboost:基于xgboost(5f-CrVa)算法对HiggsBoson数据集(Kaggle竞赛)训练实现二分类预测(基于训练好的模型进行新数据预测)

    ML之xgboost:基于xgboost(5f-CrVa)算法对HiggsBoson数据集(Kaggle竞赛)训练实现二分类预测(基于训练好的模型进行新数据预测) 目录 输出结果 设计思路 核心代码 ...

  7. 基于SEIR模型对美国COVID-19疫情传播的预测和分析

    原文链接:易安的小窝 https://jingblog.tech/2022/09/22/mei-guo-xin-guan-yi-qing-yu-ce/ 1.思路 基于每日发布的COVID-19确诊感染 ...

  8. 【胡侃系列】基于多元回归模型的双十一购物狂欢节天猫商城销售额预测

    引言 今年的双十一购物节,还是一如既往的火爆,同时也是一年N度的微博大V骗粉节日.由于周末无所事事,在刷微博的过程中看到了一个大V的"有奖竞猜"活动:如果可以在11.11早上8点之 ...

  9. 论文笔记1《基于ID3决策树改进算法的客户流失预测分析》

    <计算机科学> 2010年 部分摘要:指出了该算法的取指偏向性以及运算效率不高等缺点,在此基础上提出了改进的ID3算法,该算法通过引入先验知识度参数,有效克服ID3算法中的取值偏向性和运算 ...

最新文章

  1. 美国版“健康码”遭遇尴尬:隐私保护最大化 疫情追踪基本无效
  2. Spring Cloud Netflix—如何加入Hystrix
  3. spring4.x注解概述
  4. centos7安装golang
  5. [独库骑行之我们穿过草原]巴音布鲁克大草原
  6. 5.Excel日期时间函数类应用
  7. java加载js_Java加载js
  8. ICCV2021 | 如何高效视频定位?QMUL北大Adobe强强联手提出弱监督CRM,性能SOTA
  9. P1041 传染病控制
  10. 在MFC中使用GDI+的一般方法,以VC6.0编译器为例
  11. 凸优化第五章对偶 5.2 Lagrange对偶问题
  12. 计算机网络 ——网络原理之初识
  13. Python贴吧灌水脚本
  14. iOS Swift 照片裁剪
  15. word没有标题3和标题4的解决方式
  16. DualVD:借鉴认知双向编码理论,提出视觉对话新框架 | AAAI 2020
  17. python eof是什么_python eoferror是什么异常
  18. java文件读取报(文件名、目录名或卷标语法不正确。)
  19. html 绘制矩形,HTML5中使用canvas绘制矩形
  20. 安全测试-SQL注入

热门文章

  1. VUE引入kindeditor、本地化、一键排版样式等操作
  2. 罗胖怎么做知识服务?
  3. scandir、direct的用法
  4. 【博客126】( 二 ) 使用libgc库来帮你管理内存
  5. 奇数点偶数点fft的matlab,奇偶链表(奇数节点位于偶数节点之前) Odd Even Linked List...
  6. @3-2 CCF 2020-12-2 期末预测之最佳阈值
  7. 多传感器融合定位十五-多传感器时空标定(综述)
  8. 无线传感器网络定位算法
  9. NVIDIA GPU加速FFmpeg
  10. 移动web开发要点总结