Python用逻辑回归、决策树、SVM、XGBoost 算法机器学习预测用户信贷行为数据分析报告

简介: Python用逻辑回归、决策树、SVM、XGBoost 算法机器学习预测用户信贷行为数据分析报告

全文链接:http://tecdat.cn/?p=31201


摘要:此报告首先将dataset进行数据清洗,得到dataset_new。再将dataset_new中属性分为基本信息、贷款行为/意愿信息和征信信息三类,并逐一进行分析点击文末“阅读原文”获取信贷数据


在对基本信息的分析中得出,在贷款未结清者中,青年群体、中等教育程度群体、中等和高收入群体的频数较高,同时已婚、受薪雇员占比高于未婚、个体经营者。

在对贷款意愿与行为的信息分析中得出,贷款意愿与行为的变化与是否能够在规定时间内结清贷款相关性较低。

在对征信信息的分析中可以得出,征信信息中的正指标与负指标与是否能按期结清贷款有较为显著的正相关与负相关关系。最后再利用机器学习算法训练预测是否能够按期结清贷款的模型,测试结果准确度较高。

相关视频

M][WA}}BP3EK3IDU_T}0NUH.png

)O@ND{0%Z@0JQY_DT}3C6%A.png

49YR{5NIH6$LO(KSZ4K_[33.png

~3N`WRC1[O_[[JLA`W{9L1Q.png

1 属性分类

dataset_new数据集中共有6010个样本、51个属性。由于属性数量较多,为了便于分析,以属性的物理含义为分类依据,结合现实业务特征,挑选出具有代表性且特征涵盖较为全面的24条属性,并将其分为三类:基本信息、贷款行为/意愿信息和征信信息。原始数据:

S26{H@$UG1PNAZ{PI~48URW.png

如表1-1所示。

表 1-1 代表性属性及其分类

XP$LEBY9XXC8IETN39558}6.png


2 基本信息分析

针对贷款未结清者的基本个人信息进行统计分析,可以得出贷款未结清者在年龄、受教育程度等属性上的分布特征。

2.1贷款未结清者随年龄的分布

将所有贷款未结清者从18岁开始以5为区间统计,可以得出如图2-1-1所示的贷款未结清者随年龄的分布情况:在23-33岁的青年群体中,贷款未结清者的频数最高, 在48岁及以上的中老年群体中贡惑术时信者虑对这一群体进行更深入的经济背景调查款未结清的主要群体,因此在审批贷款时应考虑对这一群体进行更深入的经济背景调查 和征信调查,以确保贷款对象具有结清贷款的能力。

8RRB]%MB)HXK~`(W4OV)AGD.png

图 2-1-1 贷款未结清者随年龄的分布


点击标题查阅往期内容


~`3YCFJUMZWI3OGN7_P`M4J.png

R语言用逻辑回归、决策树和随机森林对信贷数据集进行分类预测

左右滑动查看更多

01

YO9E[JH}HOZ$HC32U7U6AXD.png

02

CO]VRYF0W`$UW$7T$E2O5FB.png

03

~K708]6K(`@2RNOV02$RI`A.png

04

JJ5%XQ%%{[M9BEDLA}2{4P3.png



2.2 贷款未结清者随受教育程度的分布

将贷款未结清者按受教育程度分类,可以得出如图 2-2-1 所示的结果:在未结清贷款者中,中等教育程度(12th、 Graduation/Diploma)的频数最高,而低教育程度者和高教育程度者的频数均较低。

30Y]D@9RL_CR}MT{8XB0]$G.png 图 2-2-1 贷款未结清者随受教育程度的分布

2.3 贷款未结清者的婚姻状况分布

将贷款未结清者按照婚姻状况分类,可以得到如图 2-3-1 所示的结论:在贷款未结清者中,已婚者的比例略高于未婚者,已婚者与未婚者的占比差距并不显著。

L7Z(S6[B0{COIJLT2$FM8)N.png

图 2-3-1 贷款未结清者的婚姻状况分布

2.4 贷款未结清者的工作状况和收入状况分布

将贷款未结清者按照工作状况进行统计,可以得出如图2-4-1的结论:在贷款未结清者中,35.48%为个体经营者,64.52%为受薪雇员,受薪雇员的占比显著高于个题经营者,且两者比例约为2:1。将贷款未结清者按照收入状优进仃,-30 00O)和高收入者(50,000-100, 000)清者中,中等收入者(15,000-20,000、20,000-30,000)和高收入者(50,000-100,000) 的频数最高,而低收入者(<10,000、>=500,000)的频数最低。由此可以考虑,在贷款审批时对中等收入和高收入的群体进行跟进一步的经济背景调查和征信调查。

{QY~}%6O}@X$1W9C1]XU$ZV.png

图 2-4-1 贷款未结清者的工作状况分布

T5TQ3%(CX6RMCC9IWK(SI[P.png

图 2-4-2 贷款未结清者的收入状况分布

3 贷款意愿与行为信息分析

在数据集中,贷款意愿主要由安装的短期以及长期贷款类的APP数量表征。由于贷款行为在多数情况下是在一定时间段内对资金的需求或者对资金需求的预期所产生的融资行为,故在考虑贷款意愿与贷款行为信息分析时可重点考察一定时间段内安装的贷款类APP数量。

分别将贷款未结清者(蓝色)与已经结清者(橙色)近3天与30天内安装短期贷款APP数绘制成热力图,如图3-1所示,贷款已结清者与未结清者的热力分布非常近似,所以可认为在一定时间段内安装的短期贷款APP数量与贷款是否结清的相关性较低。

@I1R~[UO6S)}5Q5DVYO8KUG.png

图 3-1 贷款未结清者与已经结清者近 3 天与 30 天内安装短期贷款 APP 数热力图

再分别将贷款未结清者(蓝色)与已经结清者(橙色)近30天与90天内安装长期贷款APP数绘制成热力图,如图3-2所示,贷款已结清者与未结清者的热力分布同样非常近似,所以也可认为在一定时间段内安装的长期贷款APP数量与贷款是否结清的相关性同样较低。

~XWR9AQ%]D3MRW[4T`25`HY.png

图 3-2 贷款未结清者与已经结清者近 30 天与 90 天内安装长期贷款 APP 数热力图

结合以上分析推测,由于贷款意愿与行为多出自于业务上的客观需求,所以贷款意愿近与行为具有与外生变量相似的特性,因而贷款意愿与行为的变化与是否能够在规定时间内结清贷款相关性不大。

4 征信信息分析

将征信数据归一化之后,计算贷款未结清者与已结清者之间主要指标的差值,如图4-1。分析可得,对征信分数、在贷账户数等正指标(即值越高越信用越好),未结清者显著低于已结清者。对历史逾期总金额、近60查询机构数等负指标(即值越高越信用越好),未结清者显著高于已结清者。由此可得,征信信息中的正指标与负指标与是否能按期结清贷款有较为显著的正相关与负相关关系。所以在审批贷款时,应该加强对征信信息的分析与调查,以降低贷款者逾期未结清的概率。

3~_SE1~([HF73(Q$9R@_N]S.png

图 4-1 未结清与结清者征信指标差(未结清-结清者)

5 基于机器学习方法的结清状况预测

由于贷款是否能按时结清受到诸多因素影响,也会因为偶然因素产生扰动,同时考虑到对每一个客户进行人工分析的人工成本和时间成本较高,故考虑训练基于机器学习方法的结清状况预测模型,在实际应用中可以直接输入指标利用模型对是否能够结清做出预测,从而作为人工审批的依据。分别采用LogisticRegression、DecisionTree、SVM、XGBoost 算法,以dataset_new中关键属性作为样本属性,训练集:测试集 =8:2分割所有样本和标签进行训练,所得测试集准确率与训练时间如表5-1所示。

表 5-1 各算法测试集准确率与训练时间

XG39A8LAI{TZFR7UHSQ8QTH.png

由表5-1可得,各算法测试集准确率均为1.0,而在训练时间上DecisionTree显著低于其他三种算法。考虑到现实应用中数据集规模可能更大,所以可考虑应用DecisionTree对是否能结清贷款进行预测以节约成本和提高效率。

6 总结

此报告对数据集属性进行了分类,并逐一分析各类属性与是否能够结清贷款的关系。同时给出了一种时间成本低、准确度高的基于机器学习预测是否能够结清贷款的方法,用于协助贷款审批决策与分析工作。

相关文章
|
9天前
|
机器学习/深度学习 数据可视化 数据挖掘
使用Python进行数据分析和可视化
【10月更文挑战第42天】本文将介绍如何使用Python进行数据分析和可视化。我们将从数据导入、清洗、探索性分析、建模预测,以及结果的可视化展示等方面展开讲解。通过这篇文章,你将了解到Python在数据处理和分析中的强大功能,以及如何利用这些工具来提升你的工作效率。
|
12天前
|
机器学习/深度学习 人工智能 算法
【手写数字识别】Python+深度学习+机器学习+人工智能+TensorFlow+算法模型
手写数字识别系统,使用Python作为主要开发语言,基于深度学习TensorFlow框架,搭建卷积神经网络算法。并通过对数据集进行训练,最后得到一个识别精度较高的模型。并基于Flask框架,开发网页端操作平台,实现用户上传一张图片识别其名称。
44 0
【手写数字识别】Python+深度学习+机器学习+人工智能+TensorFlow+算法模型
|
18天前
|
机器学习/深度学习 数据采集 数据挖掘
解锁 Python 数据分析新境界:Pandas 与 NumPy 高级技巧深度剖析
Pandas 和 NumPy 是 Python 中不可或缺的数据处理和分析工具。本文通过实际案例深入剖析了 Pandas 的数据清洗、NumPy 的数组运算、结合两者进行数据分析和特征工程,以及 Pandas 的时间序列处理功能。这些高级技巧能够帮助我们更高效、准确地处理和分析数据,为决策提供支持。
35 2
|
8天前
|
数据采集 数据可视化 数据挖掘
掌握Python数据分析,解锁数据驱动的决策能力
掌握Python数据分析,解锁数据驱动的决策能力
|
16天前
|
并行计算 数据挖掘 大数据
Python数据分析实战:利用Pandas处理大数据集
Python数据分析实战:利用Pandas处理大数据集
|
16天前
|
数据采集 数据可视化 数据挖掘
利用Python进行数据分析:Pandas库实战指南
利用Python进行数据分析:Pandas库实战指南
|
18天前
|
数据采集 数据可视化 数据挖掘
使用Python进行数据分析和可视化
【10月更文挑战第33天】本文将介绍如何使用Python编程语言进行数据分析和可视化。我们将从数据清洗开始,然后进行数据探索性分析,最后使用matplotlib和seaborn库进行数据可视化。通过阅读本文,你将学会如何运用Python进行数据处理和可视化展示。
|
22天前
|
机器学习/深度学习 人工智能 算法
探索机器学习中的决策树算法
【10月更文挑战第29天】本文将深入浅出地介绍决策树算法,一种在机器学习中广泛使用的分类和回归方法。我们将从基础概念出发,逐步深入到算法的实际应用,最后通过一个代码示例来直观展示如何利用决策树解决实际问题。无论你是机器学习的初学者还是希望深化理解的开发者,这篇文章都将为你提供有价值的见解和指导。
|
6天前
|
存储 数据挖掘 开发者
Python编程入门:从零到英雄
在这篇文章中,我们将一起踏上Python编程的奇幻之旅。无论你是编程新手,还是希望拓展技能的开发者,本教程都将为你提供一条清晰的道路,引导你从基础语法走向实际应用。通过精心设计的代码示例和练习,你将学会如何用Python解决实际问题,并准备好迎接更复杂的编程挑战。让我们一起探索这个强大的语言,开启你的编程生涯吧!
下一篇
无影云桌面