掌桥专利:专业的专利平台
掌桥专利
首页

物流风控模型的构建方法、计算机设备和存储介质

文献发布时间:2023-06-19 11:42:32



技术领域

本发明属于计算机技术领域,特别涉及物流风控模型的构建方法、计算机设备和存储介质。

背景技术

在国家大力发展供应链金融的背景下,在应用及其广泛深入的物流行业,如何制定基本准入策略,并深度挖掘物流大数据,基于承运商的GPS行驶数据、ETC等数据,搭建风控算法模型,防范承运商的信贷申请风险并输出匹配其还款能力的申请额度,制定核额规则,是当前物流客户风控方案中的重要问题。

在风控模型建立的过程中,由于企业的规模及贷款环节的不同,需要在不同的条件下建立不同方向的模型用于风险管控。同时,风控算法模型的细分也是提升模型区分力和显著性的有效方法。因此,需要针对行业场景运用提供可有效解释的风控算法模型。

目前,针对风控行业的客户风险评分问题,主要采用以传统的逻辑回归为核心的算法,以兼顾算法的有效性和可解释性。具体地,客户评分的实现主要是先通过逻辑回归对用户的好坏概率进行预测,再将概率映射成合乎业务场景的评分。逻辑回归算法主要将线性回归的结果通过sigmoid函数映射到0到1之间,映射的结果可以看作是数据样本点属于某一类的概率,如果结果越接近0或者1,说明客户分类结果的可信度越高。传统风控模型侧重于算法部分,但是物流行业具有交易信息极其碎片化、组织化程度低和行业信息不透明等特点,未形成深耕物流行业。

发明内容

鉴于此,本发明的目的是针对现有技术中所存在的技术问题,提供物流风控模型的构建方法、计算机设备和存储介质,本发明构建的物流风控模型基于行业内通用性的指标维度,可以得到在物流行业风控领域中的有效结果,可以有效控制复杂度,运算效率高,推广性强。

本发明的目的是通过以下技术方案实现的。

第一方面,本发明提供了物流风控模型的构建方法,其中,所述构建方法包括以下步骤:

S100、提供客户指标数据并通过SQL语句对其进行衍生处理,得到衍生后的指标数据,其中,所述指标数据包括自有车辆数据、GPS记录行驶里程指标数据和ETC消费金额指标数据;

S200、对衍生后的指标数据进行清洗,得到清洗后的指标数据,其包括:

S201、对衍生后的指标数据进行变量降维,以排除变量缺失率大于90%的数据以及集中度大于90%的数据,得到变量降维的指标数据;

S202、对变量降维的指标数据进行变量转化,得到二分类的指标数据;

S203、采用preProcess函数对二分类的指标数据进行缺失值填充;

S300、对清洗后的指标数据进行筛选,得到筛选后的指标数据,其包括:

S301、采用XGboost对清洗后的指标数据进行预筛选,得到预筛选后的指标数据;

S302、计算预筛选后的指标数据的IV值,去除指标数据之间相关性大于70%且指标数据和应变量之间的相关性大于80%的数据;

S400、将筛选后的指标数据分割为建模集和测试集;

S500、基于建模集,采用逻辑回归算法、神经网络或者XGboost构建和训练二分类模型,得到训练好的二分类模型;

S600、基于测试集,对训练好的二分类模型进行检验。

进一步地,所述自有车辆数据包括承运商自有车辆数、有GPS数据的车辆数、过去三个月月均GPS里程≥500公里的车辆数和有ETC数据的车辆数。

进一步地,所述GPS记录行驶里程指标数据包括过去一个月车辆的总行驶里程、过去两个月车辆的总行驶里程、过去一个月车辆的总行驶时间、过去两个月车辆的总行驶时间、过去一个月月均行驶速度和过去两个月月均行驶速度。

进一步地,所述ETC消费金额指标数据包括过去一个月总ETC消费金额、过去两个月总ETC消费金额、过去一个月月均车辆平均ETC消费金额和过去二个月月均车辆平均ETC消费金额。

进一步地,步骤S200还包括:

S204、在对衍生后的指标数据进行清洗之前,探查衍生后的指标数据的好坏样本的占比,当好样本占总样本的比例低于1%时,减少坏样本的数据量以将好样本占总样本的比例至少提升到1%。

进一步地,步骤S201中,采用sapply函数计算各指标数据的缺失率和集中度。

进一步地,步骤S202中,采用dummy处理进行变量转化。

进一步地,步骤S301中,XGboost的模型类型为二分类逻辑回归。

进一步地,步骤S302中,采用cor函数来计算指标数据之间的相关性和指标数据和应变量之间的相关性。

进一步地,步骤S400中,采用split_df函数对筛选后的指标数据进行随机切割,以形成建模集和测试集。

进一步地,所述建模集占筛选后的指标数据的70~90%。

进一步地,步骤S400还包括:

S401、在将筛选后的指标数据分割为建模集和测试集之前,采用woebin函数对筛选后的指标数据进行分箱和WOE转化,使WOE值与箱体呈现正向线性趋势;

S402、计算分箱后的指标数据的IV值,选取IV值大于IV阈值的指标数据。

进一步地,步骤S402中所述的IV阈值为0.2~0.3。

进一步地,步骤S600中,采用AUC值和/或KS值来检验训练好的二分类模型的区分能力,采用PSI来检验训练好的二分类模型的稳定性。

第二方面,本发明提供了计算机设备,其中,所述设备包括处理器和存储器,其中,所述存储器用于存储计算机指令,所述处理器用于运行所述存储器存储的计算机指令,以实现所述的物流风控模型的构建方法。

第三方面,本发明还提供了计算机可读的存储介质,其中,所述存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现所述的物流风控模型的构建方法。

本发明具有以下优势:

(1)本发明的物流风控模型的构建方法对硬件要求低,各步操作中所采用的算法本身能够有效控制复杂度,运算效率高,推广性强。另外,通过参数设置可以有效防止欠拟合或过拟合。

(2)本发明的物流风控模型的构建方法基于行业内通用性的指标维度,所得到的承运商的评分结果能达到0.68的AUC值,是算法学习在物流行业风控领域中的有效结果。

(3)采用woebin函数进行分箱,分箱过程可以基于程序自动调整,不需要手动更改保存结果,节省手动反复的分箱调整步骤。

(4)各个步骤中能够直接输出验证结果Excel,增强结果的可读性。

具体实施方式

下面将对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本发明及其应用或使用的任何限制。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

需要注意的是,这里所使用的术语仅是为了描述具体实施方式,而非意图限制根据本申请的示例性实施方式。如在这里所使用的,除非上下文另外明确指出,否则单数形式也意图包括复数形式,此外,还应当理解的是,当在本说明书中使用术语“包含”和/或“包括”时,其指明存在特征、步骤、操作、器件、组件和/或它们的组合。

除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本发明的范围。同时,在这里示出和讨论的所有示例中,任何具体值应被解释为仅仅是示例性的,而不是作为限制。因此,示例性实施例的其它示例可以具有不同的值。

本发明中,术语“逻辑回归”(也可以称为“Logistic回归”或“logistic回归分析”)是指广义的线性回归分析模型。

术语“IV值”(全称为“InformationValue”,也可简称为“IV”)表示信息价值或者信息量。

术语“XGboost”(全称为“eXtremeGradientBoosting”,中文名为“极端梯度提升”)是基于GBDT的优化算法,可用于变量重要性的筛选。

术语“Dummy处理”是这样的处理方法:对类别变量进行“二进制化”操作,并且在当类别大于2时,每个类别均转化为0/1哑变量。

术语“WOE”(全称为“WeightofEvidence”,中文名为“证据权重”)用于显示“当前分组中好客户占所有好客户的比例”和“当前分组中坏客户占所有坏客户的比例”的差异。

术语“AUC”(全称为“areaunderthecurve”,)是指曲线下的面积,是模型排序好坏的指标。

术语“KS”(全称为“Kolmogorov-Smirnov”)是用来衡量分类型模型准确度的工具,通过衡量好坏样本累计分布之间的差值来评估模型风险区分能力。好坏样本累计差异越大,KS指标越大,则模型的风险区分能力越强。

第一方面,本发明提供了物流风控模型的构建方法,其中,所述构建方法包括以下步骤:

S100、提供客户指标数据并通过SQL(全称为“StructuredQuery Language”,中文为“结构化查询语言”)语句对其进行衍生处理,得到衍生后的指标数据,其中,所述指标数据包括自有车辆数据、GPS记录行驶里程指标数据和ETC消费金额指标数据;

S200、对衍生后的指标数据进行清洗,得到清洗后的指标数据,其包括:

S201、对衍生后的指标数据进行变量降维,以排除变量缺失率大于90%的数据以及集中度大于90%的数据,得到变量降维的指标数据;

S202、对变量降维的指标数据进行变量转化,得到二分类的指标数据;

S203、采用preProcess函数对二分类的指标数据进行缺失值填充;

S300、对清洗后的指标数据进行筛选,得到筛选后的指标数据,其包括:

S301、采用XGboost对清洗后的指标数据进行预筛选,得到预筛选后的指标数据;

S302、计算预筛选后的指标数据的IV值,去除指标数据之间相关性大于70%且指标数据和应变量之间的相关性大于80%的数据;

S400、将筛选后的指标数据分割为建模集和测试集;

S500、基于建模集,采用逻辑回归算法、神经网络或者XGboost构建和训练二分类模型,得到训练好的二分类模型;

S600、基于测试集,对训练好的二分类模型进行检验。

本发明中,应变量可以为好坏概率。

本发明的构建方法主要包括指标数据收集(提供)及衍生、变量(指标)的清洗及筛选、构建及训练二分类模型以及模型检验评估,各步操作中所采用的算法本身能够有效控制复杂度,运算效率高,对硬件要求低,推广性强。

本发明中,除了指标数据收集(提供)及衍生处理(步骤S100)在mysql数据库中实现之外,其他步骤(步骤S200~S600)都可以在Rstudio软件上实现。在步骤S200~S600中可能需要用到的第三方包可以通过R程序自带的library函数进行加载,其包括plyr包(可用于处理R内部或者外部的结构化数据)、tidyverse包(可用于数据处理与可视化)、rlist包(用于非结构化数据的处理)、caret包(具有数据预处理、特征选择、建模与参数优化、模型预测与检验等功能)等。

在本发明的一个实施例中,步骤S100中选取了3大类指标数据——自有车辆数据、GPS记录行驶里程指标数据和ETC消费金额指标数据,共包括78个指标。

自有车辆数据包括承运商自有车辆数、有GPS数据的车辆数、过去三个月月均GPS里程≥500公里的车辆数和有ETC数据的车辆数。这些数据可以来自行业头部的物流平台的行业数据,并且可以结合GPS数据和ETC数据进行关于有效车辆数的指标衍生。

GPS记录行驶里程指标数据包括过去一个月车辆的总行驶里程(公里)、过去两个月车辆的总行驶里程(公里)、过去一个月车辆的总行驶时间、过去两个月车辆的总行驶时间、过去一个月月均行驶速度(公里/小时)和过去两个月月均行驶速度(公里/小时)。GPS记录行驶里程指标数据可以来自行业头部的物流平台客户,并且可以根据原始GPS行驶信息进行例如趋势情况的变量衍生。

ETC消费金额指标数据包括过去一个月总ETC消费金额、过去两个月总ETC消费金额、过去一个月月均车辆平均ETC消费金额和过去二个月月均车辆平均ETC消费金额。ETC消费金额指标数据同样可以来自行业头部的物流平台客户,并且可以根据原始ETC缴费信息进行诸如消费趋势情况的变量衍生。

另外,客户指标数据的时间范围可以扩展到客户授信前6个月的GPS(日)和ETC明细数据,总共298条数据,以丰富指标数据集。

步骤S100中,指标的提供(归集)及衍生加工都可以通过SQL语句在MySQL中实现,衍生后的指标数据(集)保存为csv格式导入Rstudio中,以备下一步数据的清洗和模型加工。

在本发明的一个实施例中,步骤S201中采用sapply函数计算各指标数据的缺失率和集中度。具体地,对于去除缺失值较高的指标数据的操作,在Rstudio中,通过sapply函数计算每个变量(指标数据)的缺失值,如果缺失率大于90%,则从变量中提取的数据信息较少,需要删除。对于去除集中度较高的指标数据的操作,在Rstudio中,通过sapply函数计算指标值频率出现最高次数占总样本数量的比例,如果集中度大于90%,则变量(指标数据)可取的信息较少,需要删除。

在本发明的一个实施例中,步骤S202中采用dummy处理进行变量转化。具体地,针对有缺失值的指标数据(变量)的处理,如果缺失率在警戒线(90%)以下且在阈值(85%)以上,则可以将变量转化为二分类变量。分类变量的处理,将分类变量(例如用户类别指标包含多个类别)转化成两个0/1变量,也称作dummy处理,以便于机器学习。

在本发明的一个实施例中,步骤S203中在采用preProcess函数进行缺失值填充时,通常采用medianImpute方法选用数据集中对应变量的中值来填充样本的缺失值。

在本发明的一个实施例中,步骤S200还包括:

S204、在对衍生后的指标数据进行清洗之前,探查衍生后的指标数据的好坏样本的占比,当好样本占总样本的比例(未逾期承运商数量占比)低于1%时,导致欠采样(undersampling)。该情况下,保留所有好样本,减少坏样本的数据量以将好样本占总样本的比例至少提升到1%。反之,当好样本占总样本的比例为1%或以上时,则无需对数据进行优化。

另外,在步骤S200中的数据处理流程中,可以保留指标数据的样本集中经过筛选和转化后的变量,以备后续步骤中使用。

在本发明的一个具体实施例中,步骤S301中采用XGboost对清洗后的指标数据进行预筛选时,可以调用xgb.train,xgb.train接口比xgboost接口更灵活,并且所具有watchlist可以用来查看输出。

在params中通常需要设定5个重要参数:第一个参数是objective参数,即选择XGboost的模型类型,对于本发明需要选用binary:logistic,即二分类逻辑回归;第二个参数是eval_metric,即模型拟合目标,设置为auc;第三个参数是eta,即学习率,设置为0.1;第三个参数是subsample,即采样率,设置为0.8;第四个参数是colsample_bylevel,即列采样率,设置为0.8;第五个参数是max_depth,即树的最大深度,用来防止过拟合,设置为4。以上5个参数值的设置是基于函数推荐的参数选择范围并经调整而得。

在本发明的一个实施例中,基本参数设置完之后,将设置完的参数以及通过xgb.DMatrix转化后建模集和测试集写入函数中,设置early_stopping_rounds,即模型停止训练的阈值,此处设置为10,即连续10轮迭代中模型的效果没有提升就选择停止学习。最终通过xgb.importance函数选取模型学习中最重要的20个变量,用于在下一步模型拟合中继续删选验证。

在本发明的一个具体实施例中,步骤S300中所涉及的XGboost包可在Rstudio中直接加载,XGboost包主体部分如下所示:

xgb.train(params=list(),data,nrounds,watchlist=list(),obj=NULL,feval=NULL,verbose=1,print_every_n=1L,early_stopping_rounds=NULL,maximize=NULL,save_period=NULL,save_name="xgboost.model",xgb_model=NULL,callbacks=list(),…)

xgboost(data=NULL,label=NULL,missing=NA,weight=NULL,params=list(),nrounds,verbose=1,print_every_n=1L,early_stopping_rounds=NULL,maximize=NULL,save_period=0,save_name="xgboost.model",xgb_model=NULL,callbacks=list(),…)

xgb.importance(feature_names=colnames(xgb_train),model=xgb_model_out)。

在本发明的一个实施例中,步骤S302中,IV值可以解释变量对于判断好坏样本提供的信息价值,是筛选最终变量的重要筛选依据,通常将所有变量的IV值输出存档。

在本发明的一个实施例中,步骤S302中,采用cor函数来计算指标数据之间的相关性和指标数据和应变量之间的相关性。具体地,在Rstudio中,通过cor函数计算指标数据之间的相关性以及指标数据和应变量之间的相关性以防止过拟合,如果指标数据之间的相关性大于70%,且指标数据和应变量之间的相关性大于80%,则需将该指标去除,其原因在于:与营销模型相比,在风控场景中,对于变量共线性检验更为严格,共线性指标的删除阈值更低。

在本发明的一个实施例中,步骤S400中,采用split_df函数对筛选后的指标数据进行随机切割,以形成建模集和测试集。所述建模集占筛选后的指标数据的70~90%,例如,80%。

在本发明的一个实施例中,步骤S400还包括:

S401、在将筛选后的指标数据分割为建模集和测试集之前,采用scorecard包中的woebin函数对筛选后的指标数据进行分箱和WOE转化,使WOE值与箱体呈现正向线性趋势。具体地,在物流场景风控场景中,随着承运商的车辆数量愈多,好样本在不同箱体中占比与总体样本的好样本占比的差距逐渐拉大,由此WOE值与箱体需要呈现正向线性趋势。

S402、计算分箱后的指标数据的IV值,选取IV值大于IV阈值的指标数据。分箱后的指标数据的IV值可以衡量分箱后变量信息对于区分好坏样本的贡献大小,IV阈值通常设置为0.2~0.3,例如,可以选取IV值大于0.2的变量。

在本发明的一个实施例中,步骤S600中,采用AUC值、KS值和PSI来检验训练好的二分类模型的区分能力和稳定性。

AUC值和KS值均用来检验模型的区分能力,测试集结果的AUC值达到0.6,KS值达到0.2为基本可接受的结果标准。

PSI用来衡量模型的稳定性,要求模型的区分能力在建模集和测试集的效果保持一致。

在本发明的一个实施例中,构建方法还包括:对好坏概率进行分数映射。由此,输出客户评分卡最终得分。

分数映射就是把分数看成odds(好坏样本比)的线性函数,然后再人为确定上升多少分odds增大一倍,以及多少分对应多少odds,计算出相应的系数。具体地,设定好坏样本比odds=θ

在本发明的一个实施例中,构建方法还包括:将所有用户的评分再进行分箱,实现用户评分的聚类,区分出20%差用户、60%普通用户和20%好用户,并将结果应用到用户授信的核额策略中,形成0.7、1和1.2的额度系数梯度。

第二方面,本发明提供了计算机设备,其中,所述设备包括处理器和存储器,其中,所述存储器用于存储计算机指令,所述处理器用于运行所述存储器存储的计算机指令,以实所述的物流风控模型的构建方法。

第三方面,本发明还提供了计算机可读的存储介质,其中,所述存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现所述的物流风控模型的构建方法。

以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

相关技术
  • 物流风控模型的构建方法、计算机设备和存储介质
  • 风控模型构建方法和装置、风险识别方法、计算机设备
技术分类

06120113023115