基于k-prototypes对个人信用分类
2021-12-02高宝健仇海英卢苇田
高宝健 仇海英 卢苇田
摘要:风险的评估是银行风险管理的核心内容。金融风险包括市场风险、行业风险等,针对个人信用风险,银行需要根据借款方的信用风险情况进行合适的贷款。本文利用2020年全国大学生数学建模C题所给的1000组数据,在类别变量消除后,在缺少信用等级分类项条件下,采用聚类方法对1000组个人信用数据根据所给20个指标进行等级分类,共分为优、劣两类,由许多聚类针对数值型指标,这里采用k-prototypes算法对不同类型指标进行聚类,最终得出结果与未剔除变量之前进行比对,检验其合理性。
关键词:个人信用风险评估;聚类;k-prototypes算法;
引言
个人信用风险评估是银行风险管理的核心内容。为了实现银行企业经营信贷收益的最大化,建立完善、自动化的个人信用评估体系,科学识别个人的信用风险是十分有必要的。苏诚[1]利用Logistic回归算法对所训练的样本进行训练,将处理后数据代入模型,分类“好”、“坏”客户两类。苗家铭[2]研究出基于数据挖掘技术建立个人信用风险评价模型,构建指标体系,运用Logistic模型实现个人风险评估。但在未知类别指标时,没有可以作为训练集的数据进行训练时,就需要运用无监督学习,来根据指标对个人信用数据进行分类。很多聚类方法使用于数值型指标的数据,而对既有数值型指标,又有分类型指标时,需用到特别的聚类算法,本文采用k-prototypes算法对数据进行聚类分析,将总体数据聚类分为2类,即对客户进行信用等级完成分类。我们得到一类含有827个样本数据,另一类含有173个样本数据,根据实际情况与经验,分别分成优、劣两类,完成对个人信用数据分级。
1.k-prototypes模型[3]
1.1 模型建立
k-prototypes算法基本原理是在聚类过程中,将数值型指标和类别型指标分别拆开,分别计算样本间的距离,再将两者相加,视为样本间的距离。
其原理大致如下:假设一组样本数据集合为 ,并且样本数据集合中的每个数据均有m个指标属性,即 ,将数值型数据与分类型数据指标分开,数值型数据在集合Y前面且共有p个指标属性,分类型数据在后面且共有m-p个指标属性。假设初始选定原型集合为 ,中间过程中得到集合为 。本文对数值型数据指标的差异度即距离公式选用欧式距离计算方法,对分类型数据指标使用海明威距离计算方法。其具体算法步骤如下:
Step1:随机选取k个初始原型作为中心点C;
Step2:针对数据集中的每个样本点,计算样本点到k个模型的距离,并根据计算结果把样本点分到距离自身最近的类别当中,更新簇中心;
Step3:更新后,重新确定类别的原型,数值型数据指标对应的样本取其均值作为新的原型的特征取值,类别型数据指标对应的样本取其众数作为新的原型的特征取值;
Step4:重复2、3步,直至没有样本改变类别,得到最后的聚类结果;
1.2模型的求解
利用python软件编程,用k-prototypes算法对数据进行聚类得到结果,然后与未剔除的类别变量作比较,总体结果对比如下图所示:
其中1代表个人信用评估为优,2代表个人信用评估为劣。
从结果可以看出,将1000个样本数据聚类分成2类,827个样本数据为一类,173个样本数据为一类,通过对827个这类数据与20个指标进行综合分析,结合实际情况,不难分析出,这些个人的信用风险较好,同样对另一類进行分析,易知个人的信用风险较差。最后,将827这类样本数据定为个人信用风险优这一类,另一类归为个人信用风险较差这一类。
2.结论
从结果来看,对20组不同类别指标数据进行聚类后,对个人信用风险进行等级划分,效果较好。同样,可以推广到其他一些分类模型中,其中,数据的评价指标类型有数值型与分类型或存在混合类型的指标,而一般聚类方法时是只针对于数值型指标,这时就可以采用k-prototypes来达到分类的目的。
参考文献
[1]苏诚.基于Logistic回归模型的商业银行信用风险评估研究[J].中国城市经济,2011,(12):72.
[2]苗家铭.基于数据挖掘技术的商业银行个人信用风险评估模型及其应用[D].南京财经大学,2015.
[3]李顺勇,顾嘉成.一种增强的K-prototypes混合数据聚类算法[J].陕西科技大学学报,2021,39(02):183-188.10.19481/j.cnki.issn2096-398x.2021.02.028.