最近我一直忙着开发一个信用评分卡建模工具,所以没有时间更新示例或动态。今天,我很高兴地跟大家分享,这个工具的基本框架已经完成了,并且探索性的将大语言模型(AI)整合了进去。目前ai在工具中扮演智能助手,完成用户解答功能,帮助用户更好地理解和使用信用评分卡建模信息。整个过程中遇到了不少挑战。
下面向大家介绍下工具的主要板块和功能,希望得到大家的宝贵指导意见。
1、数据探索
主要实现加载源数据和可视化的功能,开发采用的样本数据是开源的德国信用数据集:GermanCredit。
项目采用嵌入pygwalker的方式对源数据进行可视化,用户可以自行组合分析数据内容。pygwalker示例如下:
引用:https://zhuanlan.zhihu.com/p/682465515
2、特征分析
对源数据的特征进行分析,主要采用以下算法来实现
- 箱线图:分析异常样本
- 卡方检验(Chi-Squared Test):适用于分类任务和离散特征
- t-检验(t-test):适用于分类任务和连续特征
- 方差分析(ANOVA):适用于多类别分类任务和连续特征
- Pearson 相关系数:适用于连续特征和标签
- ......
3、抽样
对源数据进行抽样,目前采用的是分层抽样方式,根据目标变量,进行分层抽样。
4、WOE转换
金融信用评分卡要求比较稳健及可解释性强,所以woe转换是必不可少步骤。
WOE(Weight of Evidence)转换是一种将分类变量的每个类别映射到一个连续的数值的方法,这个数值反映了该类别相对于参考类别(通常是目标事件发生率最低的类别)对目标事件发生概率的影响强度。WOE转换的公式通常是对数变换,其值可以为正、负或零,代表了该特征值对“好客户”和“坏客户”的影响程度。
WOE转换在数据分析和建模中有多种用途和好处:
- 处理异常值:WOE转换可以处理数据中的异常值,通过将极端值分组到单独的类别中,避免对模型产生负面影响。
- 处理缺失值:缺失值可以单独分组,从而不影响模型的训练。
- 处理分类变量:WOE转换帮助处理分类变量,无需虚拟变量,可以直接用于逻辑回归等模型中。
- 提升模型效果:通过标准化特征值,WOE转换可以提高模型的预测效果和可解释性。
5、模型评估
模型评估板块前面是模型训练,目前该板块没有提前输出信息,所以没有展示。模型评估主要是常用的一些模型评估指标,目前想到的是:准确率(Accuracy)、精确率(Precision)、召回率(Recall)、ROC-AUC/Gini、F1 Score、KS、以及Lift图、AUC-ROC等。
6、评分卡生成
这是评分卡建模最后一步,生成评分卡,及评分的PSI值评估,目前看模型生成的评分卡PSI是接近正太分布,而且PSI=0.0097,这个数值非常好的。
7、大语言模型ai助手
这是此项目唯一的亮点和创新性,将llm融入评分卡建模的过程,目前市场上是不多见的。虽然作用和价值不知能能有多少,但是这是一个让我学习,不断进步的过程。
急着分享,目前ai只实现了读取样本数据的特征列表和目标值,以下的与与助手聊天的过程。