技术领域
本申请涉及电子商务中信用风险评估技术领域,尤其涉及一种信用评估模型建立方法和装置及信用评估方法和设备。
背景技术
随着电子商务和信息管理技术的飞速发展,我国消费金融行业在线上信贷市场取得了巨大成功。面对数以亿计的贷款需求,如果消费金融公司无法将信贷风险控制在合理范围内,则无法维持长期盈利。信用评分(Credit Scoring)是一种非常高效的信用风险评估工具,长期以来一直被认为是统计学和运筹学理论在银行金融领域最成功的应用之一。在传统的信用评分方法中,建模人员会根据申请者的还款表现将申请者分为“好客户”与“坏客户”,然后基于这样的分类标准使用逻辑回归(LR)模型学习历史数据并用于新申请者还款表现的预测。同时,机器学习中的分类方法,如:神经网络、支持向量机和决策树等也已被广泛用于信用风险评估。
但是,在传统的信用评分方法中,贷款申请者的总体不仅包括被允许借款的申请者,还包括许多被拒绝借款的申请者,但这一部分申请者的信息并未被考虑进信用评分模型的建模过程中,这就使得贷款申请人总体的真实分布是未知的,被拒绝客户的分布信息也未被考虑,这就会导致模型参数的估计出现偏差,从而影响最终所建立的信用评分模型进行信用评估时的精准度。
发明内容
有鉴于此,本申请提出了一种信用评估模型建立方法,可以有效提高所建立的信用评分模型的精准度。
根据本申请的一方面,提供了一种信用评估模型建立方法,包括:
获取接受数据集和拒绝数据集;其中,所述接受数据集中的样本数据均附有标签,所述拒绝数据集中的样本数据无标签;
基于所述接受数据集,通过半监督学习对训练集中无标签的样本数据进行拒绝推断,推断出无标签的样本数据的标签并更新所述训练集;
其中,更新前的所述训练集中的样本数据包括:所述接受数据集中附有标签的样本数据和所述拒绝数据集中无标签的样本数据;
基于更新后的训练集对分类器进行训练,构建得到相应的信用评估模型。
在一种可能的实现方式中,基于所述接受数据集,通过半监督学习对训练集中无标签的样本数据进行拒绝推断之前,还包括:对所述接受数据集中的少数类样本数据进行重采样的步骤;
其中,所述少数类样本数据指的是同类别标签数量较少的样本数据。
在一种可能的实现方式中,对所述接受数据集中的少数类样本数据进行重采样时,采用ADASYN算法进行。
在一种可能的实现方式中,对所述接受数据集中的少数类样本数据进行重采样,包括:
由所述接受数据集中提取出部分样本数据作为预训练集;
根据所述预训练集中少数类样本数据的数量和多数类样本数据的数量,对所述预训练集中的少数类数据进行重采样,直至所述预训练集中不同类别标签的数据分布达到预设平衡度;
其中,所述多数类样本数据指的是同类别标签数量较多的数据。
在一种可能的实现方式中,根据所述预训练集中少数类样本数据的数量和多数类样本数据的数量,对所述预训练集中的少数类数据进行重采样,还包括:
根据所述少数类数量的数量和所述多数类数据的数量,确定所述预训练集的不平衡度;
在所述不平衡度小于可容忍的不平衡度的最大值时,执行对所述预训练集中的少数类数据进行重采样的步骤。
在一种可能的实现方式中,基于所述接受数据集,通过半监督学习对训练集中无标签的样本数据进行拒绝推断时,采用标签传播算法进行;
其中,采用标签传播算法对训练集中无标签的样本数据进行拒绝推断包括:
创建节点为所述训练集中所有样本数据点的全连接图,并定义任意两个节点之间的传播权重;
基于两个节点间的传播权重,以及预先定义的两个节点间的概率转移矩阵和标签矩阵,将各节点的标签传播至其他节点。
在一种可能的实现方式中,所述传播权重为:
所述概率转移矩阵为:
其中,w
根据本申请的一方面,还提供了一种信用评估模型建立装置,包括:数据获取模块、训练集更新模块和模型训练模块;
其中,所述数据获取模块,被配置为获取接受数据集和拒绝数据集;其中,所述接受数据集中的样本数据均附有标签,所述拒绝数据集中的样本数据无标签;
所述训练集更新模块,被配置为基于所述接受数据集,通过半监督学习对训练集中无标签的样本数据进行拒绝推断,推断出无标签的样本数据的标签并更新所述训练集;
其中,更新前的所述训练集中的样本数据包括:所述接受数据集中附有标签的样本数据和所述拒绝数据集中无标签的样本数据;
所述模型训练模块,被配置为基于更新后的训练集对分类器进行训练,构建得到相应的信用评估模型。
根据本申请的另一方面,还提供了一种信用评估方法,基于前面任一所述的方法建立的信用评估模型进行信用评估,包括:
获取当前待评估的客户信息;
将所述客户信息输入至所述信用评估模型,由所述信用评估模型对所述客户信息进行信用评估,得到相应的评估结果。
根据本申请的另一方面,还提供了一种信用评估模型建立设备,包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述可执行指令时实现前面任一所述的方法。
通过将拒绝数据集中无标签的样本数据加入到用于训练信用评估模型的训练集中,并基于接受数据集中具有标签的样本数据,对无标签的样本数据进行拒绝推断,估计出无标签的样本数据的标签后,将训练集中的各样本数据均附带上标签,然后再采用更新后的训练集对分类器进行训练,构建得到相应的信用评估模型,这就使得最终所构建的信用评估模型具有更强的鲁棒性,同时由于在进行分类器的训练时所采用的训练集中的各样本数据不仅包括有接受数据集中附有标签的各样本数据,同时还包括有拒绝数据集中无标签的样本数据,这也就极大地丰富了样本数据,最终使得训练得到的信用评估模型的检测结果更加准确。
根据下面参考附图对示例性实施例的详细说明,本申请的其它特征及方面将变得清楚。
附图说明
包含在说明书中并且构成说明书的一部分的附图与说明书一起示出了本申请的示例性实施例、特征和方面,并且用于解释本申请的原理。
图1示出本申请一实施例的信用评估模型建立方法的流程图;
图2示出本申请另一实施例的信用评估模型建立方法的另一流程图;
图3示出本申请一实施例的信用评估模型建立装置的结构框图;
图4示出本申请一实施例的信用评估模型建立设备的结构框图。
具体实施方式
以下将参考附图详细说明本申请的各种示例性实施例、特征和方面。附图中相同的附图标记表示功能相同或相似的元件。尽管在附图中示出了实施例的各种方面,但是除非特别指出,不必按比例绘制附图。
在这里专用的词“示例性”意为“用作例子、实施例或说明性”。这里作为“示例性”所说明的任何实施例不必解释为优于或好于其它实施例。
另外,为了更好的说明本申请,在下文的具体实施方式中给出了众多的具体细节。本领域技术人员应当理解,没有某些具体细节,本申请同样可以实施。在一些实例中,对于本领域技术人员熟知的方法、手段、元件和电路未作详细描述,以便于凸显本申请的主旨。
图1示出根据本申请一实施例的信用评估模型建立方法的流程图。如图1所示,该方法包括:步骤S100,获取接受数据集和拒绝数据集。其中,接受数据集中的样本数据均附有标签,拒绝数据集中的样本数据无标签。此处,需要说明的是,在信用风险评分中,接受数据集中的各样本数据指的是信贷申请中被接受的申请者,拒绝数据集中的各样本数据则指的是在信贷申请中被拒绝的申请者。同时,还需要指出的是,接受数据集中的样本数据所附带的标签可以包括两种以上的类别,如:接受数据集中的样本数据的标签类别可以包括有“好客户”(即,付清债务的申请者),还可以包括有“坏客户”(即,违约的申请者)。其中,不同标签类别的样本数据有所不同。通常来说,在接受数据集中,标签类别为“好客户”的样本数据占多数,而标签类别为“坏客户”的样本数据占少数。即,接受数据集中不同标签类别的样本数据分布并不是均衡的。
在获取接受数据集和拒绝数据集后,即可执行步骤S200,基于接受数据集,通过半监督学习对训练集中无标签的样本数据进行拒绝推断,推断出无标签的样本数据的标签并更新训练接。此处,需要指出的是,在本申请中,训练集中的样本数据是包括接受数据集中附有标签的样本数据和拒绝数据集中无标签的样本数据的。因此,在本申请实施例的方法中,采用通过半监督学习方式,通过训练集中附有标签的样本数据对无标签的样本数据进行拒绝推断,估计出无标签的样本数据的标签,实现对训练集的更新,使得训练集中的各样本数据均附带有标签。进而再通过步骤S300,基于更新后的训练集对分类器进行训练,构建得到相应的信用评估模型。
由此,本申请实施例的信用评估模型训练方法,通过将拒绝数据集中无标签的样本数据加入到用于训练信用评估模型的训练集中,并基于接受数据集中具有标签的样本数据,对无标签的样本数据进行拒绝推断,估计出无标签的样本数据的标签后,将训练集中的各样本数据均附带上标签,然后再采用更新后的训练集对分类器进行训练,构建得到相应的信用评估模型,这就使得最终所构建的信用评估模型具有更强的鲁棒性。同时,由于在进行分类器的训练时所采用的训练集中的各样本数据不仅包括有接受数据集中附有标签的各样本数据,同时还包括有拒绝数据集中无标签的样本数据,这极大地丰富了样本数据,最终使得训练得到的信用评估模型的检测结果更加准确。
其中,需要指出的是,接受数据集中是被放款的申请人,该申请人具有两种标签:坏客户(违约),好客户(付清债务)。这两个标签类别的数据构成了机器学习中的二分类问题。在实际的信贷场景中,由于风险审核的政策较为严格,这两种类别的客户数量的统计分布通常是不平衡的。一般来说,坏客户的数量要远少于好客户。即,坏客户为少数类,好客户为多数类。也就是说,在接受数据集中,标签类别为坏客户的样本数据为少数类样本数据,标签类别为好客户的样本数据为多数类样本数据。
因此,为了最终训练得到的信用评估模型更加精确,在本申请实施例的方法中,可以对接受数据集中的样本数据进行重采样,从而使得接收数据集中不同标签类别的样本数据分布接近于平衡。
即,在本申请实施例的方法中,基于接受数据集,采用标签传播算法对训练集中无标签的样本数据进行拒绝推断之前,还包括:对接受数据集中的少数类样本数据进行重采样的步骤。其中,少数类样本数据指的是同类别标签数量较少的样本数据。
其中,在一种可能的实现方式中,对接受数据集中的少数类样本数据进行重采样时,可以采用ADASYN算法进行。
同时,还需要指出的是,为了便于数据处理,在本申请实施例的方法中,对接受数据集中的少数类样本数据进行重采样,以使接受数据集中不同标签类别的样本数据的统计分布达到平衡,在对接受数据集中的少数类样本数据进行重采样之前,还包括:由接受数据集中提取出部分样本数据作为预训练集。然后将预训练集中的样本数据作为训练集中的部分样本进行重采样。
即,参阅图2,在对接受数据集中的少数类样本数据进行重采样之前,还包括步骤S0021,将接受数据集中的样本数据划分为预训练集和测试集(即,由接受数据集中提取出部分样本数据作为预训练集)。其中,预训练集中的样本数据作为最终用于对分类器进行训练的部分样本,测试集中的样本数据则用于对训练完成的信用评估模型进行预测。
在提取出部分样本数据得到预训练集后,即可执行步骤S0022,对预训练集中的少数类样本数据进行重采样,以平衡预训练集中不同类别标签的样本数据的统计分布。其中,根据前面所述,对预训练集中的少数类样本数据进行重采样时,可以采用ADASYN算法来实现。
具体的,根据预训练集中少数类样本数据的数量和多数类样本数据的数量,对预训练集中的少数类数据进行重采样,直至预训练集中不同类别标签的数据分布达到预设平衡度。此处,本领域技术人员可以理解的是,多数类样本数据指的是同类别标签数量较多的数据。
其中,在一种可能的实现方式中,根据预训练集中少数类样本数据的数量和多数类样本数据的数量,对预训练集中的少数类样本数据进行重采样,包括:首先,确定预训练集中少数类样本数据的数量和多数类样本数据的数量。然后,根据少数类样本数据的数量和多数类样本数据的数量,计算需要合成的少数类样本数据的总数量,并基于需要合成的少数类样本数据的总数量,对各少数类样本数据进行重采样。
进一步的,基于需要合成的少数类样本数据的总数量,对各少数类样本数据进行重采样,包括:对于每个少数类样本数据,基于欧式距离计算各少数类样本数据在n维空间中的K个邻居,并计算得到K个邻居中多数类样本数据的比率。同时,对于每个少数类样本数据,计算各少数类样本数据需要合成的数据数目;进而再对于每个少数类样本数据,由K个邻居中选取一个少数类样本数据,并基于所选取的少数类样本数据合成新的少数类样本数据,直至合成的新的少数类样本数据的数量达到需要合成的数据数目为止。
其中,在一种可能的实现方式中,根据预训练集中少数类样本数据的数量和多数类样本数据的数量,对预训练集中的少数类样本数据进行重采样,还包括:根据少数类样本数据的数量和多数类样本数据的数量,确定预训练集的不平衡度;在不平衡度小于可容忍的不平衡度的最大值时,执行对预训练集中的少数类样本数据进行重采样的步骤。此处,需要指出的是可容忍的不平衡度的最大值可以根据实际情况灵活设置,此处不进行具体限定。
为了更清楚地说明采用ADASYN算法对接受数据集中少数类样本数据的重采样过程,以下对其对少数类样本数据进行重采样过程进行再次详细说明。
首先,计算预训练集D的不平衡度;
具体的,记少数类样本数据D
则有d∈(0,1]。
对不平衡度进行判断,若d<d
计算需要合成的少数类样本数据的数量N:
N=(n
其中,参数β∈(0,1]是一个用于刻画加入合成样本后期望平衡度的参数。特别地,当β=1时,即N等于少数类样本数据和多数类样本数据的差值时,加入合成样本后的多数类样本数据数量和少数类样本数据数量正好平衡。
进一步的,对每个属于少数类的样本数据x
r
其中,Δ
因为各个少数类样本数据对应的K个近邻中的多数类样本数据的个数是不同的,因此对得到的每一个少数类样本的r
通过
对每个少数类样本数据x
其中,N是在(2)式中定义的合成样本数据的总数目。
对每个少数类样本数据x
x
其中,(x
由此可知,人工合成样本x
在一定程度上,这些人工合成样本有助于扩大原始训练集,从而改善分类算法的学习效果。因此,通过使用ADASYN算法在拒绝推断之前对接受客户数据进行重采样,帮助后续的分类算法可以有更好的预测性能。
在通过上述任一方式对预训练集中的少数类样本数据进行重采样后,即可基于平衡后的预训练集中附有标签的样本数据,通过半监督学习对训练集中无标签的样本数据进行拒绝推断。其中,在一种可能的实现方式汇总,通过半监督学习对训练集中无标签的样本数据进行拒绝推断时,可以采用标签传播算法来实现。
同时,还需要说明的是,在一种可能的实现方式中,参阅图2,基于接受数据集,通过半监督学习对训练集中无标签的样本数据进行拒绝推断之前,还包括:步骤S0021’,对拒绝数据集进行随机采样,和步骤S0022’,由拒绝数据集中提取出部分数据作为拒绝子集。然后,再通过步骤S0023,将拒绝子集中的样本数据与接受数据集中选取的用于模型训练的样本数据合并为训练集。此处,需要指出的是,此时合并得到的训练集中的样本数据不仅包括重平衡后的预训练集中的样本数据(附有标签),还包括拒绝子集中的样本数据(无标签)。
在通过上述方式得到训练集后,即可执行步骤S200,基于接受数据集,通过半监督学习对训练集中无标签的样本数据进行拒绝推断,估计出无标签样本数据的标签。即,参阅图2,通过步骤S210,通过半监督学习进行拒绝推断,估计出各无标签的样本数据的标签,从而实现步骤S220,使得训练集中的各样本数据均附有标签。
具体的,采用标签传播算法实现上述步骤S200,基于接受数据集对训练集中无标签的样本数据进行拒绝推断时,可以通过以下方式来实现。
即,首先,创建节点为训练集中所有样本数据点的全连接图,并定义任意两个节点之间的传播权重。然后,基于两个节点间的传播权重,以及预先定义的两个节点间的概率转移矩阵和标签矩阵,将各节点的标签传播至其他节点。
具体来说,设D
根据基于图的半监督学习的假设,创建一个全连接图。其中,节点是X中的所有数据点。设d
其中,实参数σ的取值为0或1,即σ∈[0,1]。此处,本领域技术人员可以理解的是,σ取值为0时,表明标签传不过去;σ取值为1时,表明标签能够传过去。
假设节点的标签可以通过边缘传播到所有节点,并且边缘权重越大,标签越容易传过去。遵循这个构思,定义(l+u)×(l+u)概率转移矩阵T:
其中,T
由此,本申请实施例的方法中,标签传播算法具体过程如下所示:
计算转移矩阵T。
根据Y
对于每个节点,一步一步地将其标签基于转移矩阵T传播到其他节点:Y←TY;
对Y执行行归一化,以保持对类概率的解释。然后更新标记的数据。
从根据Y
通过上述任一方式对训练集中无标签的样本数据进行拒绝推断,估计出相应的标签之后,即可实现了训练集的样本数据更新。进而,通过步骤S300,将更新后的训练集的样本数据依次输入至分类器,对分类器进行训练,以构建生成相应的信用评估模型。
更进一步的,分类器可以选择任意一种分类模型来实现。举例来说,在本申请实施例的方法中,分类器可以采用随机森林、梯度提升决策树和极端梯度提升算法这三种分类器。
其中,随机森林(RF)是一种基于树的集成学习方法,用于分类和回归任务,它采用自提升算法和投票策略。RF的训练速度很快,因此使并行计算变得容易。
梯度提升决策树(GBDT)则是另一种广泛使用的基于树的集成算法,其基本思想是通过组合一系列弱分类器来反复强化形成一个强分类器,即提升算法。提升算法的主要思想是通过迭代选择指向负梯度方向的函数来优化函数空间上的损失函数,是一种既准确又有效的分类和回归方法。
极端梯度提升算法(XGBoost)则是一种可扩展的端到端的决策树集成学习模型,遵循传统的梯度提升模型的框架。但是,为了避免过拟合,其目标函数添加了一个正则项以控制模型的复杂性。而且,它具有更快的收敛速度。
参见表1,为本申请实施例的方法的框架流程表。
表1
此外,参阅图2,在通过上述任一种方式对分类器进行训练,构建得到信用评估模型之后,还可以通过步骤S400,将由接受数据集中划分出来的测试集的样本数据输入至训练好的分类器(即,信用评估模型)中,对训练好的分类器进行预测。
基于以上所述,本申请实施例的方法,提出了一种考虑非平衡数据分布和半监督拒绝推断的信用评分方法。在此方法中,有标签的已接受数据和无标签的被拒绝数据都用于训练信用评分模型。首先,通过Hold-out方法将接受数据分为预训练集和测试集。然后,考虑到接受数据的不平衡分布可能会影响拒绝推断的有效性,因此,将ADASYN算法用于对接受数据进行重采样。过采样也可以避免在多数类中丢失过多的信息。同时,通过随机采样生成一个拒绝子集,并将这些数据添加到平衡的预训练集中。这两个集合构成了含有具有标签数据和无标签数据的训练集。进而,再使用标签传播算法来推断未标签数据的标签。最后得到一个全部为有标签数据的训练集,然后使用几个不同的基分类器训练以进行预测。
相应的,基于前面任一所述的信用评估建立方法,本申请还提供了一种信用评估建立装置。由于本申请提供的信用评估建立装置的工作原理与本申请提供的信用评估建立方法的原理相同或相似,因此重复之处不再赘述。
参阅图3,本申请提供的信用评估模型建立装置100,包括数据获取模块110、训练集更新模块120和模型训练模块130。其中,数据获取模块110,被配置为获取接受数据集和拒绝数据集。其中,接受数据集中的样本数据均附有标签,拒绝数据集中的样本数据无标签。训练集更新模块120,被配置为基于接受数据集,采用标签传播算法对训练集中无标签的样本数据进行拒绝推断,推断出无标签的样本数据的标签并更新训练集。其中,更新前的训练集中的样本数据包括:接受数据集中附有标签的样本数据和拒绝数据集中无标签的样本数据。模型训练模块130,被配置为基于更新后的训练集对分类器进行训练,构建得到相应的信用评估模型。
进一步的,本申请还提供了一种信用评估方法。该方法基于前面任一所述的方法建立的信用评估模型进行信用评估,包括:获取当前待评估的客户信息;将客户信息输入至信用评估模型,由信用评估模型对客户信息进行信用评估,得到相应的评估结果。
需要说明的是,尽管以图2作为示例介绍了如上所述的信用评估训练方法,但本领域技术人员能够理解,本申请应不限于此。事实上,用户完全可根据个人喜好和/或实际应用场景灵活设定各步骤的具体实现方式,只要能够实现将拒绝数据集中的无标签样本数据添加至训练集,对分类器进行训练即可。
更进一步地,根据本申请的另一方面,还提供了一种信用评估模型训练设备200。参阅图4,本申请实施例的信用评估模型建立设备200包括处理器210以及用于存储处理器210可执行指令的存储器220。其中,处理器210被配置为执行可执行指令时实现前面任一所述的信用评估模型训练方法。
此处,应当指出的是,处理器210的个数可以为一个或多个。同时,在本申请实施例的信用评估模型训练设备200中,还可以包括输入装置230和输出装置240。其中,处理器210、存储器220、输入装置230和输出装置240之间可以通过总线连接,也可以通过其他方式连接,此处不进行具体限定。
存储器220作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序和各种模块,如:本申请实施例的信用评估模型训练方法所对应的程序或模块。处理器210通过运行存储在存储器220中的软件程序或模块,从而执行信用评估模型训练设备200的各种功能应用及数据处理。
输入装置230可用于接收输入的数字或信号。其中,信号可以为产生与设备/终端/服务器的用户设置以及功能控制有关的键信号。输出装置240可以包括显示屏等显示设备。
以上已经描述了本申请的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的技术改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。
机译: 使用信用授权,评分模型评估装置,认证系统和评分模型评估程序的评分模型评估方法
机译: 信用风险评估方法和装置,以及计算机设备和存储介质
机译: 信用报告评估方法和装置以及电子设备