一种基于机器学习的债券发行人违约分析方法与流程

文档序号:12551723阅读:370来源:国知局
一种基于机器学习的债券发行人违约分析方法与流程
本发明涉及信用风险评估
技术领域
,具体涉及一种基于机器学习的债券发行人违约分析方法。
背景技术
:自从2014年以来,国内债券市场已经出现多家发行人债券违约的情况,并且在2016年上半年有愈演愈烈的迹象。出现信用风险的债券发行人的类型已经扩散到了包含央企、国企、民企等各大类企业,并给债券投资人造成了经济上的损失以及情绪上的打击。因此,急需一种能够通过市场中的公开信息提前分析判断出哪些发行人有可能会出现信用风险的方法,保护投资者利益、避免财产损失。技术实现要素:本发明的目的是针对现有技术中的不足,提供一种基于机器学习的债券发行人违约分析方法,保护投资者利益。为实现上述目的,本发明公开了如下技术方案:一种基于机器学习的债券发行人违约分析方法,包括如下步骤:S1获取财务数据和评级数据:从公开渠道获得企业的财务数据和评级机构评级数据,并进行储存,如果存在空值,则也将其储存为空值;其中,财务数据包括企业经营情况、企业偿债能力、企业负债情况,企业经营情况进一步包括销售毛利率、营业净利率,企业偿债能力进一步包括EBIT/短期负债、速动比率、经营性现金流/有息负债,企业负债情况进一步包括资产负债率、合并报表经调整的资产负债率、母公司经调整的资产负债率;评级机构数据包括评级机构当期评级、评级机构评级展望;合并报表经调整的资产负债率=合并报表中的经调整的负债合计/经调整的资产合计;母公司经调整的资产负债率=母公司报表中的经调整的负债合计/经调整的资产合计;S2模型训练样本的选取和清洗:选取已发生信用风险事件的企业,获得该企业在违约事件发生之前最近一期直到该期向前推M期的财务数据和评级机构评级数据,其中,M≥3;选取已知截至某一时点还未出现信用风险事件的企业,获得该企业距离该时点最近一期直到该期向前推N期的财务数据和评级机构评级数据,其中,N≥3;对于数据中存在空值的,保留空值,待所有输入数据都处理准备完成,如果某家企业数据的某个唯独的时间序列数据中出现全部为空或者有且仅有1个有效数值的情况,则去掉该企业,否则,运用插值或外推法填补空白数据位置;S3模型的建立和训练:以支持向量机为基础的模型:由于经过S1、S2所形成的输入数据为多维时间序列数据,无法用传统的支持向量机训练,本步骤中采用由Cuturi提出的GlobalAlignmentKernel核函数,将两个多维时间序列数据进行相似性比较,并输出一个数字结果,利用核函数的特性,将其作为支持向量机的核函数,进而针对多维时间序列数据进行训练模型;以人工神经网络为基础的模型:将经过S1、S2所形成的多维时间序列数据,输入到以人工神经网络为基础的分析模型中,模型的设计参数为:隐藏层个数=输入数据维度;每个隐藏层中神经元的个数=输入数据对应维度的样本数;S4利用训练好的模型进行分析预测:选取好待进行信用分析的企业,按照步骤S1、S2进行输入数据的准备,然后输入步骤S3中训练好的分析模型,即可获得企业或发行人是否会在近期内出现信用风险事件的预测分析结果。进一步的,所述评级机构评级数据来源为季报、半年报或年报数据中的一种或几种。进一步的,销售毛利率=(主营业务收入-主营业务成本)/主营业务收入;营业净利率=净利润/营业总收入;EBIT/短期负债=息税前利润/短期负债总额;速动比率=速动资产/流动负债;经营性现金流/有息负债=经营性现金流/有息负债总额;评级机构当期评级=在报表日当期评级机构对该公司的评级情况,“AAA”为1,“AA+”为0.5,“AA”为0,其他为-1,如果有多个评级,则选取距离财务报表时点最近的一个;评级机构评级展望=在报表日当期评级机构对该公司的评级展望情况,“正面”为1,“稳定”为0,“负面”为-1,如果有多个评级展望,则选取距离财务报表时点最近的一个;资产负债率=负债总额/资产总额。进一步的,所述步骤S2完成后,根据数据的特性,选择是否将整理好的原始数据进行归一化操作,如果归一化后预测效果好,则采用归一化,反之则不用。进一步的,所述步骤S3中,以支持向量机为基础的模型,具体的预测模型的训练步骤如下:S301采用由Cuturi提出的GlobalAlignmentKernel核函数;S302采用交叉验证的方法,将输入数据分为训练样本和交叉验证样本,输入以GAK为核函数的支持向量机进行训练;S303获得训练完成后的模型。进一步的,所述步骤S3中,以人工神经网络为基础的模型,具体的预测模型的训练步骤如下:S311初始化网络权重和神经元的阈值;S312前向传播:将输入数据带入神经网络,按照公式一层一层的计算隐层神经元的输出层神经元的输入和输出;S313后向传播:根据误差计算公式修正神经网络中的权重和阈值;S314一直持续S311-S313直到满足训练终止条件,获得训练完成后的模型。本发明公开的一种基于机器学习的债券发行人违约分析方法,具有以下有益效果:本发明利用市场中公开的财务数据和评级数据作为支撑,建立模型并进行训练,能够提前分析判断出哪些发行人有可能会出现信用风险,保护投资者利益,避免财产出现损失。附图说明图1是本方法的整体流程示意图。图2是以支持向量机为基础的预测分析方法流程示意图。图3是以神经网络为基础的预测分析方法流程示意图。图4是以神经网络为基础的分析模型结构示意图。具体实施方式下面将对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。本发明的核心是提供一种基于机器学习的债券发行人违约分析方法,保护投资者利益。见图1,一种基于机器学习的债券发行人违约分析方法,包括如下步骤:S1获取财务数据和评级数据:从公开渠道获得企业的财务数据和评级机构评级数据,并进行储存,如果存在空值,则也将其储存为空值;其中,财务数据包括企业经营情况、企业偿债能力、企业负债情况,企业经营情况进一步包括销售毛利率、营业净利率,企业偿债能力进一步包括EBIT/短期负债、速动比率、经营性现金流/有息负债,企业负债情况进一步包括资产负债率、合并报表经调整的资产负债率、母公司经调整的资产负债率;评级机构数据包括评级机构当期评级、评级机构评级展望;合并报表经调整的资产负债率(合并报表)=合并报表中的经调整的负债合计/经调整的资产合计;母公司经调整的资产负债率(母公司)=母公司报表中的经调整的负债合计/经调整的资产合计;计算经调整的资产负债率的是为了尽量去除企业财务报表中的水分信息,考虑到有些企业会在某些会计科目中虚报数额以达到美化财务报表的目的;S2模型训练样本的选取和清洗:选取已发生信用风险事件的企业,获得该企业在违约事件发生之前最近一期直到该期向前推M期的财务数据和评级机构评级数据,其中,M≥3;选取已知截至某一时点还未出现信用风险事件的企业,获得该企业距离该时点最近一期直到该期向前推N期的财务数据和评级机构评级数据,其中,N≥3;对于数据中存在空值的,保留空值,待所有输入数据都处理准备完成,如果某家企业数据的某个唯独的时间序列数据中出现全部为空或者有且仅有1个有效数值的情况,则去掉该企业,否则,运用插值或外推法填补空白数据位置;S3模型的建立和训练:见图2,以支持向量机为基础的模型:由于经过S1、S2所形成的输入数据为多维时间序列数据,无法用传统的支持向量机训练,本步骤中采用由Cuturi(2011)提出的GlobalAlignmentKernel核函数,将两个多维时间序列数据进行相似性比较,并输出一个数字结果,利用核函数的特性,将其作为支持向量机的核函数,进而针对多维时间序列数据进行训练模型;见图3、图4,以人工神经网络为基础的模型:将经过S1、S2所形成的多维时间序列数据,输入到以人工神经网络为基础的分析模型中,模型的设计参数为:隐藏层个数=输入数据维度;每个隐藏层中神经元的个数=输入数据对应维度的样本数;S4利用训练好的模型进行分析预测:选取好待进行信用分析的企业,按照步骤S1、S2进行输入数据的准备,然后输入步骤S3中训练好的分析模型,即可获得企业或发行人是否会在近期内出现信用风险事件的预测分析结果。在本发明的一种实施例中,所述评级机构评级数据来源为季报、半年报或年报数据中的一种或几种。在本发明的一种实施例中,销售毛利率=(主营业务收入-主营业务成本)/主营业务收入;营业净利率=净利润/营业总收入;EBIT/短期负债=息税前利润/短期负债总额;速动比率=速动资产/流动负债;经营性现金流/有息负债=经营性现金流/有息负债总额;评级机构当期评级=在报表日当期评级机构对该公司的评级情况,“AAA”为1,“AA+”为0.5,“AA”为0,其他为-1,如果有多个评级,则选取距离现在时间最近的一个;评级机构评级展望=在报表日当期评级机构对该公司的评级展望情况,“正面”为1,“稳定”为0,“负面”为-1,如果有多个评级展望,则选取距离现在时间最近的一个;资产负债率=负债总额/资产总额。进一步的,本发明创设了一套对公司财务报表相关科目进行调整后重新计算基于合并报表及母公司报表的资产负债率的方法,用以增加违约预测的准确率。其中:经调整的资产负债率(合并报表)=合并报表中的经调整的负债合计/经调整的资产合计(具体会计科目调整方法如下表所示);经调整的资产负债率(母公司)=母公司报表中的经调整的负债合计/经调整的资产合计(具体会计科目调整方法如下表所示)。表一:资产负债表会计科目的权重调整说明表请参见表一,表一为资产负债表会计科目的权重调整说明表,表一中,无形资产科目权重X的调整方法依照表二,表二为不同行业的无形资产科目权重调整说明表。这是考虑企业所在行业不同,其无形资产的价值也千差万别,因此需要差别调整。表二:不同行业的无形资产科目权重调整说明表在本发明的一种实施例中,所述步骤S2完成后,根据数据的特性,选择是否将整理好的原始数据进行归一化操作,如果归一化后预测效果好,则采用归一化,反之则不用。在本发明的一种实施例中,所述步骤S3中,以支持向量机为基础的模型,具体的预测模型的训练步骤如下:S301采用由Cuturi提出的GlobalAlignmentKernel核函数;S302采用交叉验证的方法,将输入数据分为训练样本和交叉验证样本,输入以GAK为核函数的支持向量机进行训练;S303获得训练完成后的模型。在本发明的一种实施例中,所述步骤S3中,以人工神经网络为基础的模型,具体的预测模型的训练步骤如下:S311初始化网络权重和神经元的阈值;S312前向传播:将输入数据带入神经网络,按照公式一层一层的计算隐层神经元的输出层神经元的输入和输出;S313后向传播:根据误差计算公式修正神经网络中的权重和阈值;S314一直持续S311-S313直到满足训练终止条件,获得训练完成后的模型。本发明提供的方法在具体执行过程中:一、读取数据:a)读取过去已发生信用风险事件的发行人的数据;b)读取截至上一个报表期时未发生信用风险事件的发行人的数据;c)读取待预测分析的发行人的数据,数据结构要与a)、b)中的保持一致。二、对数据进行清洗、预处理:a)对于数据中存在空值的,保留空值,待所有输入数据都处理准备完成,如果某家企业数据的某个唯独的时间序列数据中出现全部为空或者有且仅有1个有效数值的情况,则去掉该企业,否则,运用插值或外推法填补空白数据位置;b)根据用户的实际需要,可选择是否将清洗好的数据进行归一化操作。三、预测模型的训练:a)如果建立以人工神经网络为基础的模型,则模型结构如图4所示。然后进行以下步骤:1.初始化网络权重和神经元的阈值;2.前向传播:将输入数据带入神经网络,按照神经网络结构一层一层的计算隐层神经元和输出层神经元的输入和输出;3.后向传播:根据误差计算公式修正神经网络中的权重和阈值。4.一直持续1-3直到满足训练终止条件,获得训练完成后的模型。b)如果建立以支持向量机为基础的模型,则进行以下步骤:1.采用由Cuturi(2011)提出的GlobalAlignmentKernel(GAK)核函数;2.采用交叉验证(Cross-Validation)的方法,将输入数据分为训练样本和交叉验证样本,输入以GAK为核函数的支持向量机进行训练;3.获得训练完成后的模型。四、使用预测好的模型进行预测:将待预测分析的发行人的数据输入第三步中获得的训练好的模型,即可获得该发行人是否会在近期内出现信用风险事件的预测结果。本发明通过公开渠道获得企业的财务信息和评级机构评级信息,形成多维时间序列数据,采用机器学习的方法,设计以支持向量机或人工神经网络为基础的信用分析模型,通过训练,即可用于分析预测企业是否会出现信用风险事件。以下是本发明的一种具体实例:2016年8月31日,利用本方法进行发行人信用风险预测分析。首先,选取在2016年8月31日前,已经发生实质性违约或信用风险事件的发行人,从公开渠道获得他们的财务报表。本实例共选取了27家出现信用风险的发行人,按照本发明中所示的数据处理方法进行处理,形成模型的输入数据。其中较有代表性的两家公司的输入数据如以下两表所示。表三:已出现信用风险事件的发行人的输入数据示例1(江苏舜天)表四:已出现信用风险事件的发行人的输入数据示例2(中城建)之后,选取截至2016年8月31日,尚未发生实质性违约或信用风险事件的发行人,从公开渠道获得他们的财务报表。本实例共选取了85家未出现信用风险的发行人,按照本发明中所示的数据处理方法进行处理,形成模型的输入数据。其中较有代表性的两家公司的输入数据如以下两表所示。表五:未出现信用风险事件的发行人的输入数据示例1(铁龙物流)表六:未出现信用风险事件的发行人的输入数据示例2(南方报业)从以上4个示例可以看出,出现信用风险事件的企业一般经营情况较差(利润率较低)、偿债能力较低(经营利润/现金流无法补偿企业负债成本)、负债情况较严重(资产负债率较高,经调整的资产负债率更高),或者以上多个指标出现了恶化的趋势;而未出现信用风险事件的企业一般经营情况正常(利润率正常)、偿债能力正常(经营利润/现金流可以补偿企业负债成本)、负债情况正常(资产负债率适中、经调整的资产负债率适中)。此外,外部评级机构的评级往往难以对哪些发行人将很快出现信用风险进行预示。比如,中国城市建设控股集团有限公司在2016年4月份发生信用风险事件之前,外部信用评级机构对其的信用评级保持在较高的AA+,评级展望也为稳定,未能提前预警该公司的信用风险。单纯依靠外部评级机构的评级信息而进行债券投资的投资人面临着相当高的本金损失风险。但由于输入数据维度较多,数据量也较大,传统的线性模型很难捕捉到输入数据与最终结果之间的对应关系,故采用机器学习的方法对以上输入数据进行模型的训练,并运用训练好的模型,代入新的输入数据进行预测分析。训练完成的模型参数如下两表所示。表七:训练完成的基于支持向量机的预测模型模型指标参数输入数据维数10是否归一化否总支持向量个数20违约类支持向量个数9非违约类支持向量个数11表八:训练完成的基于神经网络的预测模型模型指标参数输入数据维数10是否归一化否隐藏层个数10单个隐藏层神经元个数6误差函数均方误差(MSE)选取待预测分析的发行人,从公开渠道获得他们的财务报表。本实例共选取了151家待预测发行人,按照本发明中所示的数据处理方法进行处理,形成模型的输入数据。其中较有代表性的两家公司的输入数据如以下两表所示。表九:待预测发行人的输入数据示例1(博源控股)表十:待预测发行人的输入数据示例2(山西焦煤)表十一:待预测发行人的输入数据示例3(大连机床)将待预测发行人的输入数据代入到在上一步已经训练完成的预测模型中,就可以得到待预测发行人是否会出现信用风险的预测结果。表十二:待预测发行人示例1、2、3的预测结果待预测发行人是否会出现信用风险预测是否准确示例1(博源控股)是准确示例2(山西焦煤)否准确示例3(大连机床)是准确其中,博源控股和大连机床分别已于2016/12/5和2016/11/21发生实质性违约,而山西焦煤截至本说明书完成时还未出现信用风险事件。以上所述仅是本发明的优选实施方式,而非对其限制;应当指出,尽管参照上述各实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,其依然可以对上述各实施例所记载的技术方案进行修改,或对其中部分或者全部技术特征进行等同替换;而这些修改和替换,并不使相应的技术方案的本质脱离本发明各实施例技术方案的范围。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1