本发明实施例涉及数据通信领域,尤其涉及一种基于复杂网络的信用评估方法和系统。
背景技术:
随着社会的发展,人与人之间的社交关系越来越复杂,很多人间看似没有联系,实际上却有一些社交关系,如亲戚关系、朋友关系、同事关系等等。
在现有技术中,可基于用户的手机通话的相关数据对该用户的信用进行评估。具体地,是通过构建信贷主体人统一用户id,将具有统一用户id的信贷主体人数据进行提取和预处理成训练样本数据,通过机器学习分类算法-集成树模型构建信用风险模型,根据信用风险集成模型获取风险概率,将风险概率自动转换为信用风险评分。
然而发明人在实现本发明的过程中,发现基于现有技术中的方案,至少存在:由于现有技术忽略了用户与其对应的交际圈的关联关系,从而导致评估结果的准确性偏低的问题。
技术实现要素:
本发明所要解决的技术问题是针对现有技术中所存在的上述缺陷,提供一种基于复杂网络的信用评估方法和系统,用以解决现有技术中存在评估结果的准确性偏低的问题。
根据本发明实施例的一个方面,本发明实施例提供了一种基于复杂网络的信用评估方法,所述方法包括:
获取包括用户的手机号码的优化复杂网络模型;
根据所述优化复杂网络模型和预设的恶意卡号码库生成所述用户的通话关系图谱;
基于所述用户的通话信息对所述通话关系图谱中的边计算权重;
将所述权重添加至所述优化复杂网络模型中,进行社区发现,得到社区发现结果;
基于所述通话关系图谱和所述社区发现结果,确定所述用户的图特征;
将所述图特征和获取到的所述用户的属性特征,得到所述用户的信用评分。
进一步地,所述根据所述优化复杂网络模型和预设的恶意卡号码库生成所述用户的通话关系图谱,具体包括:
当所述恶意卡号码库中有与所述手机号码存在呼叫关系的恶意卡号码时,则根据所述恶意卡号码对应的通话关系修正所述优化复杂网络模型,得到所述通话关系图谱。
进一步地,所述根据所述优化复杂网络模型和预设的恶意卡号码库生成所述用户的通话关系图谱,具体包括:
当所述恶意卡号码库中没有与所述手机号码存在呼叫关系的恶意卡号码时,则根据所述通话信息对所述优化复杂网络模型中的所述用户对应的节点和边关系确定所述通话关系图谱。
进一步地,所述将所述权重添加至所述优化复杂网络模型中,进行社区发现,得到社区发现结果,具体包括:
根据所述优化复杂网络模型中的节点的数量确定社区的数量;
依次将任一节点分配至于该节点存在连接关系的节点所对应的社区,并计算每个节点分配前后对应的模块度变化;
选取各个节点最大的模块度变化,并当所述最大的模块度变化大于零时,将所述节点分配至所述最大的模块度变化对应的社区;
当每个节点的所属社区不再变化时,则将不再变化的社区的节点组合成聚合节点,并将所述不再变化的社区对应的社区内节点之间的边的权重转化为所述聚合节点总的权重,每个不再变化的社区间的边权重转化为所述聚合节点间的边权重,得到所述社区发现结果。
进一步地,在获取包括用户的手机号码的优化复杂网络模型之前,所述方法还包括:
从预设数据库中提取所述用户的用户信息和所述通话信息;
基于所述用户信息和所述通话信息构建复杂网络模型;
对所述复杂网络模型中的异常号码进行识别和标识,得到所述优化复杂网络模型。
根据本发明实施例的另一个方面,本发明实施例还提供了一种基于复杂网络的信用评估系统,所述系统包括:获取模块、生成模块、计算模块、发现模块、确定模块和训练模块,其中,
所述获取模块用于:获取包括用户的手机号码的优化复杂网络模型;
所述生成模块用于:根据所述优化复杂网络模型和预设的恶意卡号码库生成所述用户的通话关系图谱;
所述计算模块用于:基于所述用户的通话信息对所述通话关系图谱中的边计算权重;
所述发现模块用于:将所述权重添加至所述优化复杂网络模型中,进行社区发现,得到社区发现结果;
所述确定模块用于:基于所述通话关系图谱和所述社区发现结果,确定所述用户的图特征;
所述训练模块用于:根据所述图特征和获取到的所述用户的属性特征,得到所述用户的信用评分。
进一步地,所述生成模块具体用于:
当所述恶意卡号码库中有与所述手机号码存在呼叫关系的恶意卡号码时,则根据所述恶意卡号码对应的通话关系修正所述优化复杂网络模型,得到所述通话关系图谱。
进一步地,所述生成模块具体用于:
当所述恶意卡号码库中没有与所述手机号码存在呼叫关系的恶意卡号码时,则根据所述通话信息对所述优化复杂网络模型中的所述用户对应的节点和边关系确定所述通话关系图谱。
进一步地,所述发现模块具体用于:
根据所述优化复杂网络模型中的节点的数量确定社区的数量;
依次将任一节点分配至于该节点存在连接关系的节点所对应的社区,并计算每个节点分配前后对应的模块度变化;
选取各个节点最大的模块度变化,并当所述最大的模块度变化大于零时,将所述节点分配至所述最大的模块度变化对应的社区;
当每个节点的所属社区不再变化时,则将不再变化的社区的节点组合成聚合节点,并将所述不再变化的社区对应的社区内节点之间的边的权重转化为所述聚合节点总的权重,每个不再变化的社区间的边权重转化为所述聚合节点间的边权重,得到所述社区发现结果。
进一步地,所述系统还包括:提取模块、构建模块、优化模块,其中,
所述提取模块用于:从预设数据库中提取所述用户的用户信息和所述通话信息;
所述构建模块用于:基于所述用户信息和所述通话信息构建复杂网络模型;
所述优化模块用于:对所述复杂网络模型中的异常号码进行识别和标识,得到所述优化复杂网络模型。
本发明实施例的有益效果在于,由于采用了获取包括用户的手机号码的优化复杂网络模型,根据优化复杂网络模型和预设的恶意卡号码库生成用户的通话关系图谱,基于用户的通话信息对通话关系图谱中的边计算权重,将权重添加至优化复杂网络模型中,进行社区发现,得到社区发现结果,基于通话关系图谱和社区发现结果,确定所述用户的图特征,将图特征和获取到的用户的属性特征,得到用户的信用评分的技术方案,避免了现有技术忽略了用户与其对应的交际圈的关联关系,从而导致评估结果的准确性偏低的技术问题,实现了提高评估过程的效率,提高评估结果的准确性的技术效果。
附图说明
图1为本发明实施例提供的一种基于复杂网络的信用评估方法的流程示意图;
图2为本发明实施例提供的一种复杂网络模型的示意图;
图3为本发明实施例提供的一种优化复杂网络模型的示意图;
图4为本发明实施例提供的一种3步邻居子图的示意图;
图5为本发明实施例提供的一种通话关系图谱的示意图;
图6为本发明实施例提供的一种社区发现结果的示意图;
图7为本发明实施例提供的一种图特征的示意图;
图8为本发明实施例提供的一种基于复杂网络的信用评估系统的模块示意图;
附图标记:
1、获取模块;2、生成模块;3、计算模块;4、发现模块;5、确定模块;6、训练模块;7、提取模块;8、构建模块;9、优化模块。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、接口、技术之类的具体细节,以便透彻理解本发明。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本发明。在其它情况中,省略对众所周知的系统以及方法的详细说明,以免不必要的细节妨碍本发明的描述。
本发明实施例提供了一种基于复杂网络的信用评估方法和系统。
根据本发明实施例的一个方面,本发明实施例提供了一种基于复杂网络的信用评估方法。
请参阅图1,图1为本发明实施例提供的一种基于复杂网络的信用评估方法的流程示意图。
如图1所示,该方法包括:
s1:获取包括用户的手机号码的优化复杂网络模型。
在s1之前,还包括构建复杂网络模型并对复杂网络模型进行优化的,从而得到优化复杂网络模型的步骤。具体地:
s01:从预设数据库中提取用户的用户信息和通话信息。
其中,用户信息包括:手机号码、用户基础数据、终端信息数据、短信数据、网页数据、app点击数据等信息。通话信息包括:主被叫、通话时长、频次等信息。
当然,由于数据的时效性。所以,优选地,选取预设时间段对应的通话信息。如3个月内的通话时长、通话频次、主被叫关系、通话天数、是否为非工作时间通话等特征作为通话信息。
s02:基于用户信息和通话信息构建复杂网络模型。
具体地,将用户信息中的手机号码定义为节点,用户信息中的其他特征定义为节点属性,通话信息中的通话关系定义为边,通话信息中的通话时长等定义为边属性构建复杂网络模型(如图2所示,共包括:4节点和4边)。以三个月数据为例,节点数与边数分别约为11亿与160亿。
s03:对复杂网络模型中的异常号码进行识别和标识,得到优化复杂网络模型。
在现有技术中,是基于复杂网络模型直接进行相应的计算。而采用在复杂网络模型的基础上直接计算的方式,一方面,会导致数据量大,计算效率低;另一方面,由于干扰数据量大,必然会导致计算结果的准确性降低。为此,在该步骤中,对复杂网络模型进行优化,以便实现提高计算效率和提高结果的精准性的技术效果。
具体地,通过对异常号码进行识别和标识,实现对复杂网络模型进行优化。
如:营销号、企业号。具体的,把该类号码设置成一类新节点,即“营销类号码节点”,或为号码增加新属性,即“企业型”。
此步骤的目的是避免在寻找关联号码时,如:通过用户a寻找用户b并不是通过实体用户关联,而可能是a、b均拨打过10010。这样的关联关系无法反映真实用户亲密度。
s2:根据优化复杂网络模型和预设的恶意卡号码库生成用户的通话关系图谱。
其中,恶意号码库中包括催收号码库、黑中介号码库、羊毛库等。通过将优化复杂网络模型和恶意号码库相结合,可以确保通话关系图谱的可靠性,摒弃一些会对评估结果造成干扰的数据,从而确保评估结果的精准性。
在一种可能的技术方案中,s2具体包括:
s2-1:当恶意卡号码库中有与手机号码存在呼叫关系的恶意卡号码时,则根据恶意卡号码对应的通话关系修正优化复杂网络模型,得到通话关系图谱。
如:若有恶意卡号码库,如:催收号码库、黑中介号码库、羊毛库等,将网络中号码节点与恶意卡号码库中号码关联,为号码节点生成恶意卡相关特征,同时寻找恶意卡号码的3步邻居子图,即:从恶意卡号码出发进行宽度优先搜索寻找3步内所有节点(如图4所示)。
具体地,从催收号码v1出发,遍历所有与催收号码节点连接的节点{v11,v12,v13,v14},以此类推寻找这些节点的子图。
基于样本号码与催收号码的关联度,为样本节点加上相应特征,输出结果为:{样本号码1:催收相关度1},{样本号码2:催收相关度2}。此处,在寻找子图时。可以理解的是,当执行该步骤时,可以同时通过执行判断步骤判断选择是否通过非手机号码连接。
在一种可能的技术方案中,s2-2具体包括:
s2-2:当恶意卡号码库中没有与手机号码存在呼叫关系的恶意卡号码时,则根据通话信息对优化复杂网络模型中的用户对应的节点和边关系确定通话关系图谱。
如:若无恶意卡号码库,对节点和边关系进行挖掘,如:单向边数,稳定边占比(通话频次/通话时长大于阈值α、β)等。
基于此,与设定阈值做比较判断相应节点稳定系数或风险值,如:一个号码有大量的外呼,同时该号码没有稳定组(即:在样本时间维度没有形成2人以上通话联通图),那么为该类样本设定较低稳定系数。
该步骤的目的是为了从图中发现用户的通话习惯。如果一个号码单纯有大量外呼,该样本可能是快递或销售人员,但是对于该类人群,他们是有稳定通话组的,如:亲人、同事等(如图5所示)。
s3:基于用户的通话信息对通话关系图谱中的边计算权重。
如:基于通话信息中的主被叫的通话时长、通话频次、通话天数、非工作时间通话时长等特征,分别运用主观赋权法与客观赋权法计算边权重。以专家赋权法(主观法)与熵权法(客观法)为例,假设最终节点i与节点j边权重为aij,专家赋权法所得权重为αij,熵权法所得权重为βij,那么aij=λ1αij+λ2βij,其中λ1,λ2是针对于场景设置的权重系数且λ1+λ2=1,即边权重的计算需提前判断其更多基于主观还是客观。两类赋权方法的实现均是基于选用的边属性的归一化结果。
s4:将权重添加至优化复杂网络模型中,进行社区发现,得到社区发现结果。
在一种可能实现的技术方案中,s4具体包括:
s4-1:根据优化复杂网络模型中的节点的数量确定社区的数量。
s4-2:依次将任一节点分配至于该节点存在连接关系的节点所对应的社区,并计算每个节点分配前后对应的模块度变化。
s4-3:选取各个节点最大的模块度变化,并当最大的模块度变化大于零时,将节点分配至最大的模块度变化对应的社区。
s4-4:当每个节点的所属社区不再变化时,则将不再变化的社区的节点组合成聚合节点,并将不再变化的社区对应的社区内节点之间的边的权重转化为聚合节点总的权重,每个不再变化的社区间的边权重转化为聚合节点间的边权重,得到社区发现结果。
如:
i.将复杂网络模型中的每个节点看成一个独立的社区,即:11亿节点,11亿社区。
ii.对每个节点i,依次把节点i分配到其每个连接节点所在的社区,计算分配前与分配后的模块度变化δq,并记录δq最大的那个邻居节点,如果maxδq>0,则把节点i分配δq最大的那个邻居节点所在的社区,否则保持不变(即不对节点i进行分配)。
模块度的计算公式为:
其中,aij为节点i和节点j之间边权重;
ki=∑jaij表示所有与节点i相连的边的权重之和;
ci与cj表示节点i与j所属的社区;
m=1/2∑ijaij表示所有边的权重之和,若是无权边,则m为边数;
δ为delta函数;
模块度变化的计算公式为:
其中,σtot表示与社区c内的节点相连的边的权重之和。
iii.重复ii,直到所有节点的所属社区不再变化。
iv.将ii,iii步骤中得到的社区的节点组合成一个聚合节点,社区内节点之间的边的权重转化为聚合节点总的权重,社区间的边权重转化为聚合节点间的边权重。
v.重复i直到整个图的模块度不再发生变化。
图6展示了12个节点网络的社区发现结果,共得到3个社区(即社区发现结果)。
s5:基于通话关系图谱和社区发现结果,确定用户的图特征。
在该步骤中,基于s2-1,则判断样本及相应社区与恶意卡距离,从而得到图特征。基于s2-2,则判断样本及相应社区与风险号码距离,从而得到图特征。
如图7所示,样本1(1个用户,也可以理解为一个手机号码,因为一个用户对应一个手机号码)与恶意卡直接相连,样本2与恶意卡同社区,样本3与恶意卡在相邻社区。基于此结合各恶意卡等级,得到大量样本图特征。如:与最近不同类别恶意卡为几度关联、边累计权重(多度关联时,累加边权重)、与恶意卡社区几度关联、所在社区边数、所在社区节点数、相邻社区节点数、相邻社区边数、是否存在稳定组、稳定组个数、组内总通话时长、组内总通话频次、社区内总通话时长、社区内总通话频次,是否多外呼,稳定边个数等。
s6:根据图特征和获取到的用户的属性特征,得到用户的信用评分。
用户的属性特征包括:用户年龄、性别、话单信息、入网时长等及样本标等。
具体地,将图特征和属性特征进行模型训练,得到信用评分。其中,模型训练,包括特征工程、算法选择,如:randomforest、xgboost等,模型验证、模型优化(包括特征工程优化,算法优化、参数优化等)等。
在一种可实现的技术方案中,该方法还包括:
s7:根据信用评分和预设的预警消息,对用户的评分进行告警。
如:为决策部门(即放款单位)提供参考依据,最终实现相应借贷人(即用户)失信预测预警。
根据本发明实施例的另一个方面,本发明实施例提供了与上述方法相对应的一种基于复杂网络的信用评估系统。
请参阅图8,图8为本发明实施例提供的一种基于复杂网络的信用评估系统的模块示意图。
如图8所示,该系统包括:获取模块、生成模块、计算模块、发现模块、确定模块和训练模块,其中,
获取模块用于:获取包括用户的手机号码的优化复杂网络模型;
生成模块用于:根据优化复杂网络模型和预设的恶意卡号码库生成用户的通话关系图谱;
计算模块用于:基于用户的通话信息对通话关系图谱中的边计算权重;
发现模块用于:将权重添加至优化复杂网络模型中,进行社区发现,得到社区发现结果;
确定模块用于:基于通话关系图谱和所述社区发现结果,确定用户的图特征;
训练模块用于:根据图特征和获取到的用户的属性特征,得到用户的信用评分。
在一种可能实现的技术方案中,生成模块具体用于:
当恶意卡号码库中有与手机号码存在呼叫关系的恶意卡号码时,则根据恶意卡号码对应的通话关系修正优化复杂网络模型,得到通话关系图谱。
在一种可能实现的技术方案中,生成模块具体用于:
当恶意卡号码库中没有与手机号码存在呼叫关系的恶意卡号码时,则根据通话信息对优化复杂网络模型中的用户对应的节点和边关系确定通话关系图谱。
在一种可能实现的技术方案中,发现模块具体用于:
根据优化复杂网络模型中的节点的数量确定社区的数量;
依次将任一节点分配至于该节点存在连接关系的节点所对应的社区,并计算每个节点分配前后对应的模块度变化;
选取各个节点最大的模块度变化,并当最大的模块度变化大于零时,将节点分配至最大的模块度变化对应的社区;
当每个节点的所属社区不再变化时,则将不再变化的社区的节点组合成聚合节点,并将不再变化的社区对应的社区内节点之间的边的权重转化为聚合节点总的权重,每个不再变化的社区间的边权重转化为聚合节点间的边权重,得到社区发现结果。
结合图8可知,在一种可能实现的技术方案中,该系统还包括:提取模块、构建模块、优化模块,其中,
提取模块用于:从预设数据库中提取用户的用户信息和通话信息;
构建模块用于:基于用户信息和通话信息构建复杂网络模型;
优化模块用于:对复杂网络模型中的异常号码进行识别和标识,得到优化复杂网络模型。
本发明实施例通过获取包括用户的手机号码的优化复杂网络模型,根据优化复杂网络模型和预设的恶意卡号码库生成用户的通话关系图谱,基于用户的通话信息对通话关系图谱中的边计算权重,将权重添加至优化复杂网络模型中,进行社区发现,得到社区发现结果,基于通话关系图谱和社区发现结果,确定所述用户的图特征,根据图特征和获取到的用户的属性特征,得到用户的信用评分的技术方案,避免了现有技术忽略了用户与其对应的交际圈的关联关系,从而导致评估结果的准确性偏低的技术问题,实现了提高评估过程的效率,提高评估结果的准确性的技术效果。
读者应理解,在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必针对的是相同的实施例或示例。而且,描述的具体特征、结构或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本发明实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。
还应理解,在本发明各实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
以上,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。