问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

银行客户贷款行为数据挖掘与分析

创作时间:
作者:
@小白创作中心

银行客户贷款行为数据挖掘与分析

引用
CSDN
1.
https://blog.csdn.net/qq_57417926/article/details/143137874

在新时代下,消费者的需求结构、内容与方式发生巨大改变,企业要想获取更多竞争优势,需要借助大数据技术持续创新。本文分析了传统商业银行面临的挑战,并基于knn、逻辑回归、人工神经网络三种算法,对银行客户的贷款需求进行分析。最后,使用KMeans聚类算法进行客群分析,绘制出雷达图、t-SNE散点图、柱状图,多方面展现客户贷款行为。

前言

1、研究背景

银行主要业务包括:资产业务、负债业务、中间业务。其中资产业务主要是指贷款业务,并且它也是银行目前主要的收入来源。同时,随着互联网金融的兴起,一些客户向线上交易方式转移,国有银行的垄断地位开始动摇,其原因主要是这些互联网金融机构利用大数据、云计算、区块链、人工智能、物联网等技术,将其应用在很多应用场景中,包括智能投研、智能投顾、智能客服、智能营销、智能风控、银行云等,这些技术的作用不只是扩大客户的融资需求,还可以用于风险控制、项目评估等方面,达到利益与风险相均衡的状态。为扭转这一局面,传统银行业开始转型升级,与互联网领域融合,优化盈利模式。

2、影响客户贷款需求的因素

⑴客户基本信息

分析贷款客户的年龄、婚姻状况、教育水平、职业等特征,针对这些客户的特征进行分类,对每一类客户群体做出不同的营销方案。

如图1-1、1-2所示,从年龄上分析,进入银行办理业务的客户年龄大多集中在25-65岁之间,而具有贷款需求的客户的年龄分布与之相一致,同时,贷款客户占银行客户总人数的16.03%,说明贷款业务有很大的市场潜力,可以通过一些措施来激发客户的贷款需求。

图1-1 银行客户的年龄分布图

图1-2 贷款百分比饼图

如图1-3所示,从职业上分析,银行客户的职业大多集中在蓝领、银行人员、服务业从事人员、技术人员,而职业为蓝领的客户贷款可能性最大。

图1-3 银行客户的职业分布图

如图1-4所示,从受教育水平上分析,大部分银行客户的受教育水平处在中等、高等教育水平,有一小部分客户的受教育水平未知。

图1-4 客户受教育水平的分布图

如图1-5所示,从婚姻状况上分析,各种情况的人数占比都差不多,其中,已婚和离婚的客户人数较多。

图1-5 银行贷款客户的婚姻状况分布

⑵业务情况

与业务情况相关的因素,主要包括与客户的交流方式、交流次数、客户的账户平均余额,通过对这一方面的分析,可以制定出贷款方案,以更大程度的满足客户需求,同时,通过对客户交易情况的了解,将信息推送限制在一定范围内,给客户带来银行交易的愉悦感,增强与客户之间的信任。

如图1-6、1-7、1-8所示,从账户平均余额上分析,客户的贷款金额较小,大多集中在0-3000元之间,高端客户资源稀少。从与客户办理业务时的交流方式上分析,大部分客户使用手机进行信息咨询。从交流次数上分析,与客户的交流次数大多集中在1-5次之间。

图1-6 银行客户的账户平均余额分布

图1-7 客户交流方式分布

图1-8 交流次数分布图

数据预处理

1、筛选有效特征

如图1-9、1-10所示,由于原始数据的列数过多,考虑到在构建模型阶段可能会浪费很多的时间,因此,我们用逻辑回归分析方法对数据进行筛选,删除不必要的列,最后筛选出job、material、education、balance、housing、contact、previous、loan这几列,经过评估,模型的平均正确率为0.8438。

图1-9 原始数据

图1-10 筛选后数据

2、连续型数据的处理

如图1-10所示,使用info()方法来查看每一列的数据类型,其中,balance、previous这两列属于连续型数据。这类数据的处理方法是通过绘制箱线图,查看是否存在异常值,如果存在,需要利用describe()查看该列的均值,用均值替换掉异常值。

3、离散型数据的处理

构造如下函数来处理离散型数据,首先要查看所在列中的值的种类数,并创建一个连续的数组,然后将该列的所有数据用数据进行替换,并将数据类型转成int64。

4、处理后的数据

数据预测方法

对银行客户的贷款需求做分析,需要用到分类算法,我们将使用knn、逻辑回归分析和人工神经网络三种算法来构建模型,并对模型进行评估,计算每种算法的准确率。

1、knn

(1)实现原理

Knn是一种基于已有样本进行推理的算法,通过对已有训练样本集和新进的未知样本做比较,找到与未知样本最相似的k个样本。最后通过对这k个样本的类标号投票得出该测试样本的类别。

(2)步骤

  1. 对离散数据做one-hot编码,将编码后的数据与连续型数据进行拼接,并对该数据统一做归一化处理,保证所有列对预测结果的影响程度都相同。
  2. 编写函数,根据测试集准确率与训练集准确率的比值,选定n-neighbors参数的值。
  3. 预测并得出测试集准确率与训练集准确率。通过计算得出,测试集准确率为0.8368,训练集准确率为0.8482。

(3)评估

如图2-1、2-2所示,通过构建混淆矩阵的方式对模型进行评估,其中,对无贷款需求的客户判定的准确率为85%,对有贷款需求的客户判定的准确率为24%,总体准确率为84%,证明预测结果有效。

图2-1 KNN混淆矩阵

图2-2 KNN评估报告

图2-3 KNN预测结果

(4)预测

贷款客户主要集中在蓝领、管理者、技术人员中,且客户的教育水平普遍都很高。

图2-4 KNN预测结果

2、逻辑回归

(1)实现原理

逻辑回归是根据输入值域对记录进行分类的统计方法。它是将输入值域与输出字段每一类别的概率联系起来。一旦生成模型,便可用于预测。对于每一记录,计算其从属于每种可能输出类的概率,概率最大的类即为预测结果。

(2)步骤

  1. 划分测试集与训练集。
  2. 使用RandomizedLogisticRegression筛选特征
  3. 进行预测并计算准确率。通过计算得出,测试集准确率为0.8403,训练集准确率为0.8461。

(3)评估

如图2-3、2-4所示,通过构建混淆矩阵的方式对模型进行评估,其中,对无贷款需求的客户判定的准确率为84%,召回率100%;对有贷款需求的客户判定的准确率为0%,总体准确率为84%。

图2-3 逻辑回归混淆矩阵

图2-4 逻辑回归评估报告

3、人工神经网络

(1)实现原理

在人工神经网络算法中,对损失函数用梯度下降法进行迭代优化求极小值的过程使用的是BP算法。BP算法由信号的正向传播和误差的反向传播构成。首先,将信号从输入层传递至输出层。若实际输出与期望输出不一致,则进入误差反向传播阶段,将误差反向传递,获得各层的误差信号,对误差做调整。通过反复执行信号的正向传播和误差的反向传播操作,直至输出误差达到期望值,或进行到预定的学习次数为止。

(2)步骤

  1. 对离散数据做one-hot编码,将编码后的数据与连续型数据进行拼接,并对该数据统一做归一化处理,保证所有列对预测结果的影响程度都相同。
  2. 划分训练集和测试集。
  3. 采用GridSearchCV来进行参数调整实验,对solver、hidden_layer_sizes两个参数的值进行调整,找出最佳参数组合。
  4. 预测并计算准确率。通过计算得出,测试集准确率为0.9997,训练集准确率为0.9998。

(3)评估

图2-5 人工神经网络评估结果

三种算法之间的比较

(1)逻辑回归:该算法的数据处理过程较为简单,并且在构建模型的时候不能输入参数进行设置,因此需要手动划分训练集和测试集。

(2)人工神经网络:该算法内部带有很多方法,可以对数据进行one-hot编码、归一化等处理,排除特殊数值对结果的影响,还能进行参数调整,找到最佳参数组合,因此,在这三种算法中,人工神经网络算法的拟合度最高。

(3)Knn:在预测前需要对数据进行处理,排除特殊数值对结果的影响,同时,该算法在构建模型的过程中可以指定参数,尤其是n-neighbors,这个需要我们自行编写方法来找到n-neighbors的最佳值。

图2-6 三种算法预测结果对比

KMeans聚类客群分析

1、将每个特征值归一化到一个固定范围

2、开始聚类

3、预测并绘图

(1)雷达图

图3-1 雷达图

(2)t-SNE散点图

图3-2 t-SNE散点图

(3)柱状图

图3-3 客户账户余额分布

图3-4 客户职业与教育水平分布

结论

如图2-5所示,在这三种算法中,人工神经网络算法的拟合度最高。通过模型评估发现,每个算法对于无贷款需求的判定准确率较高,而对于有贷款需求的判定准确率较低。

图2-5 三种算法评估结果对比

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号