海外风控中这类征信数据与模型实践,实操落地效果最有效

今天的文章我们跟大家详细介绍,海外现金贷征信数据的特征介绍与建模实践。
希望今天的内容可以帮助各位童鞋了解海外现金贷的数据维度及其特征体系,并重点熟悉特征衍生的加工方法,在实际任务场景中加以实践应用。
首先,我们需要明确征信数据与短信、APP等其他维度数据相比,在数据获取与数据应用上的主要差异:
(1)海外的征信数据类似于我们国内的人行征信,业务方要具备相关但也不难拿到的资质,且数据的调用流转需支付一定的费用,这和短信、APP等维度数据通过爬虫方式免费获取有些渠道本质上的不同。
(2)征信数据的信息价值度明显更高,本身征信数据直接体现着用户的借贷历史与信用状况,这对于信用现金贷业务来讲,从信息对称上是较完美匹配的,聚焦在具体的特征字段上,征信变量的区分度有绝对优势。
(3)征信特征的可扩展性相对有限,远没有短信、APP维度的特征工程那么丰富,在时间序列、统计描述、业务理解等维度上可大量衍生的新字段较少,但这并不影响征信特征信息的绝对价值。

1、征信特征维度
我们先来了解下海外征信数据的主要类型,这里将整个特征信息体系划为7个模块,分别为身份信息、账户信息、借款情况、还款情况、逾期情况、整体情况、查询信息,除了身份信息相关特征的价值表现一般外(产品申请渠道同样可以获取),借贷交易信息与账户查询信息的相关特征均有着非常高的应用价值。下面围绕征信数据各个维度的信息,我们来依次介绍下具体的特征字段样例。
(1)身份信息
用户的身份信息主要包括年龄、性别、婚姻、工作等基本要素,具体字段样例如图1所示,这些特征在实际风控的数据挖掘中很少采用,多数情况下是用于用户群体的特征画像。
在这里插入图片描述
图1 身份信息特征

(2)账户信息
账户信息主要包括信用卡数量、贷款数量、信用卡有效数量、信用卡关闭数量、有效账户结清占比、结清账户占比等维度特征,是账户基本信息的全貌概览,相关字段如图2所示。
在这里插入图片描述
图2 账户信息特征

(3)借款情况
借款情况可以直接量化用户的借贷历史信息,反映出用户的授信规模、授信频次、授信时间等,这对分析用户的授信资产分布及其风险状况,具有很好的风控参考意义。其中,不同时间窗口下的序列类特征(近30/60/90天等),为特征的进一步衍生加工也创造了条件,相关特征如图3所示。
在这里插入图片描述
图3 借款情况特征

(4)还款情况
还款行为是相对借款情况的后续表现,征信体现的还款金额、还款次数等信息,可以很直观描述出用户在一定时期内的还款详情。此维度下的特征同样包含时间序列类的字段,具体特征样例如图4所示。
在这里插入图片描述
图4 还款情况特征

(5)逾期情况
金融借贷的逾期信息是最能直接体现用户信用状况的数据,结合时间周期、逾期次数、逾期金额等维度,可以较大程度说明用户的信用风险,在策略挖掘、模型训练等场景中都发挥着不俗的表现,相关字段如图5所示。
在这里插入图片描述
图5 逾期情况特征

(6)整体情况
整体情况是指用户贷款不同类型的分布信息,也就是根据逾期天数定义的贷款五级分类,分别为正常、关注、次级、可疑、损失,具体特征从数量与占比进行展开,相关字段如图6所示。
在这里插入图片描述
图6 整体情况特征

(7)查询信息
征信查询信息在反映用户的风险状况方面,具有很直接的量化参考意义,征信查询的次数越多,在很大程度上可以体现用户有较大的贷款风险,查询类型也可以分为银行类、非信用卡类等情况。此外,结合常见的时间维度特征,可以更有效分析用户的风险信息,相关字段如图7所示。
在这里插入图片描述
图7 查询信息特征

2、特征加工衍生
虽然征信数据在特征衍生方面,没有APP、短信维度数据那般丰富,但结合常见的统计描述方法仍然可以构建出相当部分的新字段,同时也能够满足实际业务的所属意义。上图3、4、5、7展示的多维度时间窗口特征,都可以进一步衍生出符合实际业务理解的新特征。下面我们选取图4对应的还款信息字段,来介绍下特征衍生的实现过程,其他模块信息的特征构建都可以围绕同样的逻辑。
在具体特征构建的方向上,主要从同类占比、异类占比、连续比较共3个维度进行列举,具体样例依次如图8、9、10所示。
在这里插入图片描述
图8 同类占比类特征
在这里插入图片描述
图9异类占比类特征

在这里插入图片描述
图10连续比较类特征

3、实例数据分析
通过上文内容介绍,我们针对征信数据大体构建出一个特征变量池,包括基本字段与衍生字段。当然,针对特征衍生环节,以上描述过程仅以“还款情况”为例加工出部分常用统计类字段,在实际场景中可以从“借款情况”、“逾期情况”、“查询信息”等多个维度同步实现,从而扩展生成更大体量的有效特征池。
为了对这些特征的加工逻辑与分布性能有进一步的熟悉,接下来我们围绕具体的实例样本数据,通过python代码来详细分析。由于征信数据的底层字段较多,我们选取的实例数据包含部分信息维度,涉及账户信息、借款情况、还款情况、查询信息等,共有4000条样本与14个字段,部分数据样例如图11所示,对应的特征字典如图12所示。
在这里插入图片描述
图11 实例样本数据

在这里插入图片描述
图12 样本特征字典

根据以上特征字段,我们来衍生加工一部分占比类新特征,具体字段名称与实现过程分别如图13、图14所示。
在这里插入图片描述
图13 衍生特征样例

在这里插入图片描述
图14 特征加工过程

为了便于分析最终特征变量池的性能分布效果,我们采用信息值IV来评估各字段的区分度价值,具体字段名称与实现过程分别如图13、图14所示。

在这里插入图片描述
图13衍生特征样例

在这里插入图片描述
图14 特征加工过程

通过以上字段分析,能够得到各字段的IV指标分布,汇总结果具体如下图16所示。由图中信息可知,新衍生特征的IV值均明显高于业务常用判断阈值0.02,且个别字段性能表现较好,例如action_cnt_d30(0.538)、query_rate_d30_d90(0.209)等,说明新特征的有效性,在特征应用中都可以作为待选对象。
在这里插入图片描述
图16 特征信息值分布

此外,特征衍生过程是一种同类信息的转换,得到的新字段除了要分析信息区分度,还需要特别考虑特征之间的相关性。因此,我们可以采取常用的corr函数来进行度量,最终对比结果如图17所示。由于样本字段较多构成的二维交叉表较大,此处重点展示衍生特征的相关性系数分布。从图中信息可以看出,新衍生特征与原始特征,或者新特征与新特征,变量之间的相关性系数接绝大多数都保持在可用的范围内(系数<0.7以上),因此通过特征的相关性分析进一步验证了特征衍生的有效性。
在这里插入图片描述
图17 特征相关性分布

4、风控模型搭建
通过以上特征衍生加工、特征区分度分析、特征相关性分析等系列过程,我们得到了一个可应用的特征变量池(原始12个+衍生8个),接下来我们通过以上特征字段,来建立一个风控贷前风险评估模型。当然,模型变量的选择对象,可以根据特征的IV值或pearson系数来进行筛选,例如IV>0.05、pearson<0.6等条件,这里我们将所有变量纳入模型拟合范围。
由于样本数据的目标变量flag为二分类型(0好用户/1坏用户),因此需采用分类模型算法来实现,此处选择应用较广的决策树模型XGBoost来完成,模型训练与模型评估的具体过程如详见知识星球中代码详情。
通过以上模型训练过程,模型输出的性能评价指标KS=0.6131、AUC=0.8066,反映了模型的综合表现较好,也就是对好坏用户的区分能力较强,这样我们便实现了通过征信数据来建立风控模型的完整过程。
综合本文内容,我们围绕征信数据介绍特征体系的信息维度与字段样例,并重点描述特征衍生的分析逻辑与开发思路。同时,根据具体的实例样本数据来建立风控模型,将原始特征与衍生特征进行融合,共同完成模型的整个训练过程,得到一个效果较佳的风险评估模型。在实际业务场景中,我们可以按照本文特征衍生的思路,扩大模型可选的特征变量池,为提升模型效果提供更多的选择空间。
关于以上所提到征信数据的特征体系介绍与风控模型,教研组的童鞋已经同步相关的内容至知识星球后台,查看完整版本,欢迎星球同学移步到知识星球查收完整内容:
在这里插入图片描述

更多风控及相关知识可关注:
在这里插入图片描述

~原创文章

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
对于互联网征信数据(simudata.csv),我们可以使用Python的Scikit-learn库来创建分类模型。以下是一个简单的步骤: 1. 加载数据集 首先,需要使用pandas库来加载数据集。simudata.csv是一个逗号分隔的文件,因此我们可以使用pandas的read_csv()函数来加载数据集。 ```python import pandas as pd data = pd.read_csv('simudata.csv') ``` 2. 数据预处理 接下来,需要对数据进行预处理,包括数据清洗、特征选择、特征缩放等。在这里,我们将简单地使用所有的特征,并对其进行缩放。 ```python from sklearn.preprocessing import MinMaxScaler scaler = MinMaxScaler() X = scaler.fit_transform(data.drop(['label'], axis=1)) y = data['label'] ``` 3. 创建模型 在这里,我们将使用逻辑回归算法来创建分类器。 ```python from sklearn.linear_model import LogisticRegression clf = LogisticRegression() ``` 4. 训练模型 接下来,我们将使用训练数据来训练分类器。 ```python clf.fit(X_train, y_train) ``` 5. 评估模型 最后,我们将使用测试数据来评估分类器的性能。 ```python from sklearn.metrics import accuracy_score y_pred = clf.predict(X_test) accuracy = accuracy_score(y_test, y_pred) print("Accuracy: %.2f%%" % (accuracy * 100.0)) ``` 以上是一个简单的步骤,可以使用Scikit-learn库创建分类模型来对互联网征信数据进行分类。当然,具体的步骤和方法还需要根据实际情况进行调整和优化。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值