本发明涉及智能决策技术领域,特别涉及一种企业风险预警方法、装置、设备及可读存储介质。
背景技术:
近年来国内企业债开始打破刚兑规律,出现违约事件,且违约数量呈现增长趋势。因此,债券市场的风险控制及对存在信用风险的发债主体进行尽早预警,避免投资人出现重大损失,变得越来越重要。现有的判断企业是否存在违约风险的方式是风控人员基于企业的各种公告信息利用专家经验和其推理逻辑进行风险判断,由于不同专业人士的自身经验及视角覆盖度的局限性,导致难以覆盖到所有案例,容易产生遗漏;随着机器学习算法的不断发展,机器学习算法越来越多的被应用到各个领域以解决例如:数据预测、数据分类和数据聚类的问题;但是,将机器学习算法应用到企业违约风险判断领域,还存在以下技术问题:1)如何将企业的各种公告信息处理为机器学习算法可使用的信息,2)如何提高机器学习算法利用企业的各种公告信息的效率。
技术实现要素:
本发明的目的在于提供一种企业风险预警方法、装置、设备及存储介质,能够确定出企业之间的风险影响关系,从而更加准确的进行企业风险预警。
根据本发明的一个方面,提供了一种企业风险预警方法,所述方法包括:
接收预警指令;其中,所述预警指令包括:待预警企业的信息;
从预设的企业关联图谱中分别确定出表征所述待预警企业的节点到各个表征风险企业的节点的风险传导路径;其中,所述风险传导路径中的各个节点通过边依次连接,且每个风险传导路径所包含的边个数均不大于预设的最大路径约束值;
针对一个风险传导路径,根据每个节点的节点属性和每个边的边属性,按照预设风险传导模型,计算出所述风险传导路径中的风险企业对所述待预警企业的风险影响值;
根据每个风险传导路径所对应的风险影响值,按照第一预设算法,计算出所述待预警企业的风险评估值;
判断所述风险评估值是否大于预设阈值,若是,则向指定终端发送风险预警消息;其中,所述风险预警消息包括:各个风险传导路径,以及每个风险传导路径所对应的风险影响值。
可选的,在所述接收预警指令之前,所述方法还包括:
接收企业信息;其中,所述企业信息包括:多个企业的基础信息以及各个企业之间的关联信息;
绘制代表各个企业的节点,并将每个企业的基础信息设置为节点属性;
根据各个企业之间的关联信息在各个节点之间绘制边,并设置边属性,以形成企业关联图谱。
可选的,在所述接收预警指令之前,所述方法还包括:
从所述企业关联图谱中确定出所有风险企业,并根据每个风险企业的违约行为的发生时间,按照时间先后顺序对所有风险企业进行排序,得到风险企业序列;
针对一个目标风险企业,在所述企业关联图谱中分别确定出各个表征诱发企业的节点到表征所述目标风险企业的节点的诱发路径;其中,所述诱发企业为在所述风险企业序列中位于所述目标风险企业之前的风险企业,且每个诱发路径中的边个数均不大于所述最大路径约束值;
根据所有风险企业的所有诱发路径中的边属性,统计出不同类型的边属性的出现次数p;
针对一个目标风险企业,在所述企业关联图谱中分别确定出表征所述目标风险企业的节点到各个表征关联企业的节点的关联路径;其中,所述关联企业为所述企业关联图谱中的除所述目标风险企业之外的企业,且每个关联路径中的边个数均不大于所述最大路径约束值;
根据所有风险企业的所有关联路径中的边属性,统计出不同类型的边属性的出现次数q;
针对一种类型的边属性,按照如下公式计算出所述类型的边属性的权重值w:
w=p*log(n/q);
其中,n为所有诱发企业的所有关联路径中的边个数。
可选的,所述针对一个风险传导路径,根据每个节点的节点属性和每个边的边属性,按照预设风险传导模型,计算出所述风险传导路径中的风险企业对所述待预警企业的风险影响值,具体包括:
针对所述风险传导路径中的一个目标边,将所述目标边连接的两个节点的预设企业风险值、以及所述目标边的边属性所对应的权重值输入到预设风险传导模型中,以计算出与所述目标边对应的传导子值;
根据所述风险传导路径中的所有边的传导子值,按照第二预设算法,计算出与所述风险传导路径对应的风险影响值。
可选的,所述预设风险传导模型为场因子分解机ffm模型。
为了实现上述目的,本发明还提供一种企业风险预警装置,所述装置包括:
接收模块,用于接收预警指令;其中,所述预警指令包括:待预警企业的信息;
确定模块,用于从预设的企业关联图谱中分别确定出表征所述待预警企业的节点到各个表征风险企业的节点的风险传导路径;其中,所述风险传导路径中的各个节点通过边依次连接,且每个风险传导路径所包含的边个数均不大于预设的最大路径约束值;
计算模块,用于针对一个风险传导路径,根据每个节点的节点属性和每个边的边属性,按照预设风险传导模型,计算出所述风险传导路径中的风险企业对所述待预警企业的风险影响值;
处理模块,用于根据每个风险传导路径所对应的风险影响值,按照第一预设算法,计算出所述待预警企业的风险评估值;
预警模块,用于判断所述风险评估值是否大于预设阈值,若是,则向指定终端发送风险预警消息;其中,所述风险预警消息包括:各个风险传导路径,以及每个风险传导路径所对应的风险影响值。
可选的,所述装置还包括:
权重模块,用于从所述企业关联图谱中确定出所有风险企业,并根据每个风险企业的违约行为的发生时间,按照时间先后顺序对所有风险企业进行排序,得到风险企业序列;
针对一个目标风险企业,在所述企业关联图谱中分别确定出各个表征诱发企业的节点到表征所述目标风险企业的节点的诱发路径;其中,所述诱发企业为在所述风险企业序列中位于所述目标风险企业之前的风险企业,且每个诱发路径中的边个数均不大于所述最大路径约束值;
根据所有风险企业的所有诱发路径中的边属性,统计出不同类型的边属性的出现次数p;
针对一个目标风险企业,在所述企业关联图谱中分别确定出表征所述目标风险企业的节点到各个表征关联企业的节点的关联路径;其中,所述关联企业为所述企业关联图谱中的除所述目标风险企业之外的企业,且每个关联路径中的边个数均不大于所述最大路径约束值;
根据所有风险企业的所有关联路径中的边属性,统计出不同类型的边属性的出现次数q;
针对一种类型的边属性,按照如下公式计算出所述类型的边属性的权重值w:
w=p*log(n/q);
其中,n为所有诱发企业的所有关联路径中的边个数。
可选的,所述计算模块,具体用于:
针对所述风险传导路径中的一个目标边,将所述目标边连接的两个节点的预设企业风险值、以及所述目标边的边属性所对应的权重值输入到预设风险传导模型中,以计算出与所述目标边对应的传导子值;
根据所述风险传导路径中的所有边的传导子值,按照第二预设算法,计算出与所述风险传导路径对应的风险影响值。
为了实现上述目的,本发明还提供一种计算机设备,该计算机设备具体包括:存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述介绍的企业风险预警方法的步骤。
为了实现上述目的,本发明还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述介绍的企业风险预警方法的步骤。
本发明提供的企业风险预警方法、装置、设备及存储介质,提出了一种新的基于机器学习的关联企业之间风险传导模型,通过风险传导模型,可以判断出待预警企业是否受到其他风险企业的影响,从而判断在未来是否会因为关联企业的影响而出现违约行为。此外,在本发明中,还可以展示待预警企业的外部风险主要来自哪些风险企业,以及通过哪些路径传导给待预警企业。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1为实施例一提供的企业风险预警方法的一种可选的流程示意图;
图2为实施例二提供的企业风险预警装置的一种可选的组成结构示意图;
图3为实施例三提供的计算机设备的一种可选的硬件架构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例一
本发明实施例提供了一种企业风险预警方法,如图1所示,该方法具体包括以下步骤:
步骤s101:接收预警指令;其中,所述预警指令包括:待预警企业的信息。
具体的,在步骤s101之前,所述方法还包括:
步骤a1:接收企业信息;其中,所述企业信息包括:多个企业的基础信息以及各个企业之间的关联信息;
步骤a2:绘制代表各个企业的节点,并将每个企业的基础信息设置为节点属性;其中,所述节点属性包括:预先为企业设置的企业风险值;
一个企业的企业风险值越大,说明企业具有违约风险的概率越大;
步骤a3:根据各个企业之间的关联信息在各个节点之间绘制边,并设置边属性,以形成企业关联图谱;其中,所述边属性包括以下企业关联关系类型:控股、抵押、担保、实际控制人、法人、主要业务往来方;
需要说明的是,任意两个企业之间可以存在一种或多种企业关联关系类型。
其中,所述企业基础信息以及企业之间的关系信息为存储在区块链节点中的公告信息;将所述企业基础信息以及企业之间的关系信息上传至区块链可保证其安全性和对用户的公正透明性。
本发明所指区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层等。
进一步的,在步骤s101之前,所述方法还包括:
步骤b1:从所述企业关联图谱中确定出所有风险企业,并根据每个风险企业的违约行为的发生时间,按照时间先后顺序对所有风险企业进行排序,得到风险企业序列;其中,所述风险企业为已发生违约行为的企业;
步骤b2:针对一个目标风险企业,在所述企业关联图谱中分别确定出各个表征诱发企业的节点到表征所述目标风险企业的节点的诱发路径;其中,所述诱发企业为在所述风险企业序列中位于所述目标风险企业之前的风险企业,且每个诱发路径中的边个数均不大于所述最大路径约束值;
优选的,所述最大路径约束值为3;
步骤b3:根据所有风险企业的所有诱发路径中的边属性,统计出不同类型的边属性的出现次数p;
步骤b4:针对一个目标风险企业,在所述企业关联图谱中分别确定出表征所述目标风险企业的节点到各个表征关联企业的节点的关联路径;其中,所述关联企业为所述企业关联图谱中的除所述目标风险企业之外的企业,且每个关联路径中的边个数均不大于所述最大路径约束值;
步骤b5:根据所有风险企业的所有关联路径中的边属性,统计出不同类型的边属性的出现次数q;
步骤b6:针对一种类型的边属性,按照如下公式计算出所述类型的边属性的权重值w:
w=p*log(n/q);
其中,n为所有风险企业的所有关联路径中的边个数。
在本实施例中,在所述企业关联图谱中,将已发生违约行为的企业标记为风险企业,并按照各个风险企业的违约时间的先后顺序进行排列,形成风险企业序列;从所述风险企业序列上选中一个目标风险企业,并将所述目标风险企业作为诱发路径的终点t,从所述风险企业序列上选取位于所述目标风险企业之前的风险企业s,以形成始发点集合s,然后基于所述企业关联图谱,通过路径遍历的方法,查询实发点集合s中的各个始发点s到终点t的所有诱发路径,且每个诱发路径中的边个数不超过最大路径约束值。按照上述方法,确定出所述风险企业序列上的每个风险企业的诱发路径,并将所有风险企业的所有诱发路径形成真实风险传导路径集合st。由于在本实施例中,边属性有不同的类型,即企业与企业之间有不同的关联关系,所以根据真实风险传导路径集合st的各个边属性,统计出不同类型的关联关系的出现频次p。此外,在本实施例中,还以每个风险企业为始发点,在所述企业关联图谱中通过路径遍历的方法确定出与风险企业关联的多个关联企业,在表征风险企业的风险节点到表征关联企业的关联节点的关联路径中所包含的边个数不超过最大路径约束值。需要说明的是,在一个风险节点的多个关联节点中会包含其他风险节点。将所有风险企业的所有关联路径形成潜在风险传导路径集合sf。根据潜在风险传导路径集合sf的各个边属性,统计出不同类型的关联关系的出现频次q。最终根据一种类型的边属性的两种出现频次,计算出该类型的边属性的权重值。在本实施例中,若一种类型的边属性在潜在风险传导路径集合sf中出现的频次q越少,同时在真实风险传导路径集合st中出现的频次p越高,则该类型的边属性的权重w越高,即该类型的企业关联关系对风险传导概率的影响越大。
步骤s102:从预设的企业关联图谱中分别确定出表征所述待预警企业的节点到各个表征风险企业的节点的风险传导路径;其中,所述风险企业为已发生违约行为的企业,所述风险传导路径中的各个节点通过边依次连接,且每个风险传导路径所包含的边个数均不大于预设的最大路径约束值。
步骤s103:针对一个风险传导路径,根据每个节点的节点属性和每个边的边属性,按照预设风险传导模型,计算出所述风险传导路径中的风险企业对所述待预警企业的风险影响值;其中,所述节点属性包括:预设企业风险值,所述边属性包括:企业关联关系类型。
具体的,步骤s103包括:
步骤c1:针对所述风险传导路径中的一个目标边,将所述目标边连接的两个节点的预设企业风险值、以及所述目标边的边属性所对应的权重值输入到预设风险传导模型中,以计算出与所述目标边对应的传导子值;
步骤c2:根据所述风险传导路径中的所有边的传导子值,按照第二预设算法,计算出与所述风险传导路径对应的风险影响值。
优选的,可以计算所有边的传导子值的平均值以作为与所述风险传导路径对应的风险影响值。
进一步的,所述预设风险传导模型为ffm(fieldfactorizationmachine,场因子分解机)模型;事先通过训练样本集训练出风险传导模型中。
步骤s104:根据每个风险传导路径所对应的风险影响值,按照第一预设算法,计算出所述待预警企业的风险评估值。
优选的,将所有风险传导路径的风险影响值相加以得到所述待预警企业的风险评估值。
由于企业间风险传导的概率同企业关联关系的关系抽象程度较高,企业间关系类型较多,不同关系间的差异性较大,不同关系间还存在组合增强效应等等特点,本实施例提出了一种新的基于机器学习的关联企业之间风险传导模型,可以计算出各个企业之间的风险影响。
此外,还可将所述待预警企业的风险评估值上传至区块链中,以防止其被篡改;其他用户可从区块链中下载得所述待预警企业的风险评估值。
步骤s105:判断所述风险评估值是否大于预设阈值,若是,则向指定终端发送风险预警消息;其中,所述风险预警消息包括:各个风险传导路径,以及每个风险传导路径所对应的风险影响值。
需要说明的是,若一个实体对象的风险评估值越大,则说明该实体对象在未来一段时间内会发生信用风险事件的概率越大。
在本实施例中,事先通过历史样本集对ffm模型进行训练,以得到风险传导模型;所述风险传导模型会对不同深度的路径学习到不同的重要程度,并可以学习到同一深度内的不同企业关联类型组合。通过风险传导模型,可以判断出待预警企业是否收到其他风险企业的影响,从而判断在未来是否会因为关联企业的影响而出现违约行为。此外,在本实施例中,还可以展示待预警企业的外部风险主要来自哪些风险企业,以及通过哪些路径传导给待预警企业。
实施例二
本发明实施例提供了一种企业风险预警装置,如图2所示,该装置具体包括以下组成部分:
接收模块201,用于接收预警指令;其中,所述预警指令包括:待预警企业的信息;
确定模块202,用于从预设的企业关联图谱中分别确定出表征所述待预警企业的节点到各个表征风险企业的节点的风险传导路径;其中,所述风险传导路径中的各个节点通过边依次连接,且每个风险传导路径所包含的边个数均不大于预设的最大路径约束值;
计算模块203,用于针对一个风险传导路径,根据每个节点的节点属性和每个边的边属性,按照预设风险传导模型,计算出所述风险传导路径中的风险企业对所述待预警企业的风险影响值;
处理模块204,用于根据每个风险传导路径所对应的风险影响值,按照第一预设算法,计算出所述待预警企业的风险评估值;
预警模块205,用于判断所述风险评估值是否大于预设阈值,若是,则向指定终端发送风险预警消息;其中,所述风险预警消息包括:各个风险传导路径,以及每个风险传导路径所对应的风险影响值。
具体的,所述装置还包括:
绘制模块,用于接收企业信息;其中,所述企业信息包括:多个企业的基础信息以及各个企业之间的关联信息;在所述企业关联图谱中绘制代表各个企业的节点,并将每个企业的基础信息设置为节点属性;根据各个企业之间的关联信息在各个节点之间绘制边,并设置边属性,以形成企业关联图谱。
进一步的,所述装置还包括:
权重模块,用于从所述企业关联图谱中确定出所有风险企业,并根据每个风险企业的违约行为的发生时间,按照时间先后顺序对所有风险企业进行排序,得到风险企业序列;
针对一个目标风险企业,在所述企业关联图谱中分别确定出各个表征诱发企业的节点到表征所述目标风险企业的节点的诱发路径;其中,所述诱发企业为在所述风险企业序列中位于所述目标风险企业之前的风险企业,且每个诱发路径中的边个数均不大于所述最大路径约束值;
根据所有风险企业的所有诱发路径中的边属性,统计出不同类型的边属性的出现次数p;
针对一个目标风险企业,在所述企业关联图谱中分别确定出表征所述目标风险企业的节点到各个表征关联企业的节点的关联路径;其中,所述关联企业为所述企业关联图谱中的除所述目标风险企业之外的企业,且每个关联路径中的边个数均不大于所述最大路径约束值;
根据所有风险企业的所有关联路径中的边属性,统计出不同类型的边属性的出现次数q;
针对一种类型的边属性,按照如下公式计算出所述类型的边属性的权重值w:
w=p*log(n/q);
其中,n为所有诱发企业的所有关联路径中的边个数。
进一步的,所述计算模块,具体用于:
针对所述风险传导路径中的一个目标边,将所述目标边连接的两个节点的预设企业风险值、以及所述目标边的边属性所对应的权重值输入到预设风险传导模型中,以计算出与所述目标边对应的传导子值;
根据所述风险传导路径中的所有边的传导子值,按照第二预设算法,计算出与所述风险传导路径对应的风险影响值。
更进一步的,所述预设风险传导模型为ffm(fieldfactorizationmachine,场因子分解机)模型。
实施例三
本实施例还提供一种计算机设备,如可以执行程序的智能手机、平板电脑、笔记本电脑、台式计算机、机架式服务器、刀片式服务器、塔式服务器或机柜式服务器(包括独立的服务器,或者多个服务器所组成的服务器集群)等。如图3所示,本实施例的计算机设备30至少包括但不限于:可通过系统总线相互通信连接的存储器301、处理器302。需要指出的是,图3仅示出了具有组件301-302的计算机设备30,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。
本实施例中,存储器301(即可读存储介质)包括闪存、硬盘、多媒体卡、卡型存储器(例如,sd或dx存储器等)、随机访问存储器(ram)、静态随机访问存储器(sram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、可编程只读存储器(prom)、磁性存储器、磁盘、光盘等。在一些实施例中,存储器301可以是计算机设备30的内部存储单元,例如该计算机设备30的硬盘或内存。在另一些实施例中,存储器301也可以是计算机设备30的外部存储设备,例如该计算机设备30上配备的插接式硬盘,智能存储卡(smartmediacard,smc),安全数字(securedigital,sd)卡,闪存卡(flashcard)等。当然,存储器301还可以既包括计算机设备30的内部存储单元也包括其外部存储设备。在本实施例中,存储器301通常用于存储安装于计算机设备30的操作系统和各类应用软件。此外,存储器301还可以用于暂时地存储已经输出或者将要输出的各类数据。
处理器302在一些实施例中可以是中央处理器(centralprocessingunit,cpu)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器302通常用于控制计算机设备30的总体操作。
具体的,在本实施例中,处理器302用于执行处理器302中存储的企业风险预警方法的程序,所述企业风险预警方法的程序被执行时实现如下步骤:
接收预警指令;其中,所述预警指令包括:待预警企业的信息;
从预设的企业关联图谱中分别确定出表征所述待预警企业的节点到各个表征风险企业的节点的风险传导路径;其中,所述风险传导路径中的各个节点通过边依次连接,且每个风险传导路径所包含的边个数均不大于预设的最大路径约束值;
针对一个风险传导路径,根据每个节点的节点属性和每个边的边属性,按照预设风险传导模型,计算出所述风险传导路径中的风险企业对所述待预警企业的风险影响值;
根据每个风险传导路径所对应的风险影响值,按照第一预设算法,计算出所述待预警企业的风险评估值;
判断所述风险评估值是否大于预设阈值,若是,则向指定终端发送风险预警消息;其中,所述风险预警消息包括:各个风险传导路径,以及每个风险传导路径所对应的风险影响值。
上述方法步骤的具体实施例过程可参见第一实施例,本实施例在此不再重复赘述。
实施例四
本实施例还提供一种计算机可读存储介质,如闪存、硬盘、多媒体卡、卡型存储器(例如,sd或dx存储器等)、随机访问存储器(ram)、静态随机访问存储器(sram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、可编程只读存储器(prom)、磁性存储器、磁盘、光盘、服务器、app应用商城等等,其上存储有计算机程序,所述计算机程序被处理器执行时实现如下方法步骤:
接收预警指令;其中,所述预警指令包括:待预警企业的信息;
从预设的企业关联图谱中分别确定出表征所述待预警企业的节点到各个表征风险企业的节点的风险传导路径;其中,所述风险传导路径中的各个节点通过边依次连接,且每个风险传导路径所包含的边个数均不大于预设的最大路径约束值;
针对一个风险传导路径,根据每个节点的节点属性和每个边的边属性,按照预设风险传导模型,计算出所述风险传导路径中的风险企业对所述待预警企业的风险影响值;
根据每个风险传导路径所对应的风险影响值,按照第一预设算法,计算出所述待预警企业的风险评估值;
判断所述风险评估值是否大于预设阈值,若是,则向指定终端发送风险预警消息;其中,所述风险预警消息包括:各个风险传导路径,以及每个风险传导路径所对应的风险影响值。
上述方法步骤的具体实施例过程可参见第一实施例,本实施例在此不再重复赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。