我要投搞

标签云

收藏小站

爱尚经典语录、名言、句子、散文、日志、唯美图片

当前位置:双彩网 > 知识提取 >

知识提取在上市公司信息披露中的应用(二)

归档日期:06-11       文本归类:知识提取      文章编辑:爱尚语录

  算法按顺序可分为如下几个关键步骤。1、公告分类;2、公告PDF解析;3、基于LSTM的关键语句提取;4、基于规则的结构化提取。由于上市公司公告类别必须按照官方要求发布,所以公告分类可以仅通过标题划分,仅需维护一些简单的特征组合即可,在此不做累述。

  通过对A股各类型公告的分析,按照知识提取的难度可分为三类,难度逐步增大。

  某一句话即包含全部关键信息。例如:业绩预告公告。“预计2016年实现归属于上市公司股东的净利润600万元—800万元,且2016年末归属于母公司的净资产为正数。”此类摘要,可以直接通过深度学习模型提取,便有较高准确率,结构化提取可以进一步规则解析。

  摘要为:“因个人原因,郑敏先生辞去公司第八届董事会董事及董事会专门委员会委员职务,辞职后不再担任公司任何职务。”

  关键信息在文本多个位置,但结构雷同。例如:董事会决议公告。“武汉祥龙电业股份有限公司第九届董事会第二次会议于2017年2月21日召开,会议审议通过《关于公司控股子公司签署工程合同暨关联交易的议案》、《关于公司控股子公司开展委托理财业务暨关联交易的议案》。”议案名在文章多个位置,但均在某段最左或单独作为一行,特征周围有书名号,数字序号,或通过、否决等标志。这类公告,同样可以采用深度学习,但准确率会有一定损失。

  摘要为:“金正大生态工程集团股份有限公司第四届董事会第一次会议于近日召开,会议审议通过《关于选举公司董事长的议案》、《关于选举公司副董事长的议案》、《关于选举公司董事会各专门委员 会委员的议案》、《关于参与认购集合资金信托 计划并对控股子公司进行增资的议案》等事项。”

  信息在多个位置,并且表述复杂,较为随意。例如:对外担保公告。“为满足项目建设资金需求,公司全资子公司XXX有限公司拟向XXX信托有限责任公司申请14亿元信托贷款,期限2年,公司为其提供全额全程连带责任担保。”其中担保原因表述不统一,担保对象有子公司、分公司,其他公司等多种方式,担保金额与期限有时会附带累计担保信息。对此类公告,目前认为只能采用严格的规则系统开发。

  摘要为:“浙江三维橡胶制品股份有限公司实施2016年年度权益分派方案为:A股每股派发现金红利0.3元(含税),以资本公积金向全体股东每股转增0.4股。股权登记日:2017/6/22。除权(息)日:2017/6/23。新增无限售条件流通股份上市日:2017/6/26。现金红利发放日:2017/6/23。”

  目前较为成熟的PDF转换TXT工具有基于Python的Pdfminer与基于Java的Pdfbox,两者解析效果类似,在此本工作选用Apache旗下的Pdfbox,因为其源码维护更加活跃,并且提供了下面的功能:文本的提取,即在PDF文件里面把文本内容提取出来;合并和拆分PDF文档,可以把几个PDF合并成一个PDF文件,也可以把一个PDF文件拆分成多个PDF文件;PDF的校验,根据PDF/AISO 标准校验PDF文档;打印PDF,通过Java的API去打印PDF文件;把PDF转换成图片,把PDF文件转换成图片;创建PDF文件;PDF签名。PDF表格提取目前并没有非常有效的处理工具,对此本工作进行了自主开发。

  目前开源的PDF解析工具主要存在如下几个方面问题。1、没有明确的段落信息,小标题与段落可能会连在一起转换成TXT文本,这样会导致后续的断句出现错误。2、没有篇章结构解析,无法按照树状结构表示文本,而篇章标题可成为LSTM训练的一个有效特征。3、处理表格时无法识别合并单元格的情况,直接转换出的表格是一个单元一个词,遇到空格等标志时导致程序无法对应行列信息。

  对此本工作在Pdfbox解析后进行了二次修正。1、通过标注PAT,UAD,序号等PDF携带的特征将文本放进神经网络中训练,可以得到大于99%的分段准确率。2、篇章结构主要通过规则系统,识别PDF的章节特征,通常PDF篇章标题采用不同的序号与加大加粗字体表示。3、Pdfbox可以将表格还原为带有坐标位置信息的XML文件,这样可以判断横竖线链接,用于锁定表格。在表格处理中还要注意一些特殊情况,如有些表格会跨页,并且在PDF中页眉页脚带有横线;又或者有些表格的分割线为双横线;这些情况都需要做进一步特殊处理。表格识别本质是一个连通图问题,将表格每一个单元抽象成一个图结点,向四个方向游走,如果不遇到横竖线拦截则扩展单元,反之建立新节点。

  表格提取在公告处理中主要作用于特定信息提取,如财务报表,供应商与客户表,业务构成表等等。如财务报表信息,表格提取仅仅作用于还原表格结构,但具体结构化还需要两项工作。一是实体对齐,如财务报表中的指标对齐,比如“资产总计=总资产”。二是表格定位,即如何判定某一张表是五大供应商表还是五大客户表,这些需要通过表格的上下文判断,其中篇章结构的解析会对此有辅助定位功能。

  利用PDF转换工具可以从绝大部分上市公司公告中提取到有效文本。对于可获取的其他格式文本,如Word或TXT,文本内容获取较易,本课题没有加以特别对待;而对部分由图片转换的PDF,由于涉及到图像识别等其他专项技术,未在本课题中加以覆盖。

  关键语句提取所使用的神经网络结构如图19所示。本项工作采用的是双向LSTM,其网络结构如下图所示:双向卷积神经网络的隐藏层要保存两个值, A 参与正向计算, A 参与反向计算。最终的输出值 y 取决于 A 和 A:

  即正向计算时,隐藏层的 st 与 st-1有关;反向计算时,隐藏层的 st 与 st+1有关:

  因为首要目的是识别关键语句,然而很多语句经常会以被动形式表述,为了能同样捕捉到这些信息,需要将句子倒序化,简单来讲仅需分词后将序列倒排即可,不必通过依存句法分析器(Dependency Parser)解析。

  此外为了加强模型的泛化能力,可以将部分结点进行熔断(Dropout)处理,举例来讲,“公司ABC拟向XYZ公司申请1亿元贷款”,通过熔断到序列中的一些结点后,可以泛化为“公司ABC__XYZ公司申请1亿元贷款”,随机的熔断部分数据会加强模型泛化性。

  图4的卷积(Convolution)和最大池化(Maxpooling)则是CNN的卷积网络结构,这里只用CNN对原文的词向量以某一长度的过滤卷积抽象,最后对原句子的表示还是使用LSTM,由于使用了抽象的含义向量,在实际效果优于仅仅LSTM的结构。

  本工作经过实践,总结出图19所示的模型。每类公告在训练前需要先进行标注,标注过程即在句子上进行分类。实践中可以先通过正则表达式进行粗筛,再进一步人工过滤。这部分工作使用了Tensorflow与Keras框架,在PDF转化为TXT之后,拆分成句子并进行向量化,按图19搭建模型并调节参数后,便训练出关键语句提取模型。

  由于前两步流程仅仅获得了包含关键信息的句子,深度学习也难以高准确率的识别结构化信息,所以需要通过自然语言处理与规则系统来进一步提取。本文主要关注的信息抽取点有:公告标题、公司全称、公司简称、日期时间、会议名称、决议事项、业绩预测事件等,大体可分为实体和事件类两种信息抽取任务。

  命名实体识别(Named Entity Recognition),简称“实体识别”,是自然语言处理的核心工作之一(Nadeau,Sekine,2007)。实体识别的主要任务是识别文本中具有特定意义的实体,包括人名、地名、机构名、时间信息和专有名词等。主要工作包括两部分:1.实体边界识别;2.确定实体类别。图20为在一份“特别处理”公告上运行实体识别模块的处理后的可视化结果。

  这里的公司简称,公司名称,公司代码,日期时间,标题,段落标题,地址,人物,电话,电子邮件,时间区段,限制条件,指代,专有名词的识别是基于如下的处理实现的:

  事件提取(Event Extraction)的研究(Hogenboom,Frasincar, Kaymak et al 2011)是多学科发展和应用的需要,具有深远的理论意义和广泛的应用价值。它涉及到自然语言处理、数据挖掘、机器学习、数据库等多个学科的技术和方法,在自动文摘,信息检索等领域均有着广泛的应用。因此,事件抽取技术的研究具有重要的现实意义。事件提取的主要工作分为事件类型识别以及事件元素与语义角色识别。

  国外学者对事件抽取技术的研究开展的较早,理论研究比较成熟,且有一些事件抽取的原型系统出现。国内对事件抽取技术的研究相对贫乏,仍处于起步阶段,但也取得了一定的成果。综合来看,事件抽取的方法大体上分为两大类:模式匹配方法和机器学习方法。下面就两种方法分别详细介绍。

  模式匹配法是指对于某种类型事件的识别和抽取是在一些模式的指导下进行的,采用各种模式匹配算法将待抽取的事件和已知的模式进行匹配。可见,模式匹配方法由两个基本步骤组成:模式选取和事件抽取。尽管不同的基于模式匹配的事件抽取系统有这样或那样的差异,但总的来讲,基于模式匹配的事件抽取方法准确率较高,且接近人的思维方式,知识表示直观、自然,便于推理。然而,这种方法往往依赖于具体语言,具体领域及文本格式,可移植性差,编制过程费时费力且容易产生错误,需要富有经验的语言学家才能完成;并且抽取的模式不可能涵盖所有的事件类型,当从一种语料转移到另一种语料时,为保证不损失性能,往往还需要花费很多工作在模式的重新获取上,因此性价比不高。

  机器学习方法建立在统计模型基础之上,它是将事件抽取看作分类问题,主要是选择合适的特征并使用合适的分类器来完成。根据抽取模型中所采用的不同激励源,现有的方法主要可分为3大类:

  综上所述,从国内外研究现状来看,比较流行的事件抽取方法是基于触发词激励的研究。但这类方法所面临的最大问题是必须先对文本中的所有词进行判断以确定其是否是事件触发词,然后再根据相关的信息判断事件的类型。但实际上文本中非触发词的那些词所占的比例很大,如果对所有词进行分类判断不仅增加计算的负担,更重要的是引入太多的反例,造成正反例的严重不平衡。遗憾的是,目前还没有高效的算法对非触发词能够进行有效的过滤,因此,基于触发词激励的事件抽取技术的研究巳陷入了瓶颈。

  在本课题实现中,事件由事件触发词(Trigger)和描述事件结构的元素(Argument)构成。描述事件的结构包括事件发生的主体、施体、时间、地点等一系列元素。图21为在一份“特别处理”公告上运行事件提取模块的处理结果。

  根据以上任务分类,需要针对性的进行领域词典扩充,对此本工作将各公告首页中的全称-简称对应表、各财务报表的财务制表字段,高管人名等都加入领域词典。对于各个句子,通过词性标注(POS Tagging)与依存关系分析(Dependency Parsing)后便可提取出简单的实体与关系,比如对外担保公告中的“担保对象”、“担保金额”等。然而如“担保原因”这类语句并没有明确统一的表述方式,对此采用规则方法尽量穷尽可能性。这部分工作与传统方法并无明显差异,故不做累述。

  根据应用需求不同,知识提取的结果可以是结构化实体,也可以是摘要。摘要一方面可以通过结构化数据配合模板组合而成,也可以通过深度学习算法直接训练。本工作对两种方式都进行了尝试,模板组合方式可以高准确率的保证信息准确,但难以保持原文的行文方式;而深度学习方法直接捕捉原文进行组合,准确率有所不足,两者孰优孰略需要考虑具体应用场景而定。

  每类摘要标注50-100份即可,如果效果不足,可以通过模型测试界面进行观测与改进。

  本项工作的初始目的是为了公告制作小组提供合适的自动化处理工具,改进流程,降低风险,提高效率。公告制作小组的摘要内容制作流程是整个生产流程中的微小一环,包含三个步骤:1.摘要采编;2.摘要一审;3.摘要二审及发布。本工作在生产环境搭建了自动摘要微服务,为公告采编系统提供服务。在新的流程下,自动摘要服务取代了原有的摘要采编工作,自动生成的摘要仍通过人工审核后发布。

  根据统计,按照原有流程,摘要采编这道工序的时间从20秒至184秒不等,平均约为54秒;按照改进后的流程,自动摘要服务可在数秒之内完成摘要采编(含数据请求及返回的时间),单一工序效率提升了十倍有余。这在公告发布高峰期带来的工作量节约是相当可观的。根据实际使用情况来看,自动摘要服务给出的摘要正确率在可接受范围内,并有继续优化完善的空间。这也给我们对其他手工工作密集的工作程序改进带来了新思路。

  本课题共针对9类高频公告的开展了实验,分别对结构化提取与摘要生成进行了测试。9类公告的选取主要考虑几个方面:1、临时公告,保证数据量大,并且是高频、重要公告;2、公告关键信息明确,可以被结构化(反例:澄清公告等便没有结构化的必要);3、公告类别覆盖能“某一句话包含全部关键信息的”与“关键信息出现在多处需要聚合的”(3.1章节所述的前两种:一句话包含全部关键信息的情况和关键信息在文本多个位置,但结构雷同的情况)。9类公告的摘要示例及所需要抽取的信息点的分析如下:

  对结构化提取测试主要观察提取的实体是否准确并全面,摘要的准确率则与公告制作小组制作的人工摘要通过edit-distance方法直接对比,摘要的实现力求与官方要求一致。在模型开发过程中,公告种类和数量循序增加,本课题期间,系统经过了15个版本的迭代。前4、5个版本准确率的提升非常明显,通过深度学习结合统计的方式,准确率快速提升到75%的区域。伴随着测试数据多样性的增加,在6版本到14版本迭代的过程中,准确率出现了波动,通过对异常情况进行分析,提升统计学习的泛化能力,同时对异常情况进行规则整理,最终准确率获得了提升。

  本文在3000+公告数据集上对系统的最终效果进行了回测分析,在其中222篇有人工标注摘要结果的公告数据上进行了准确率分析。测试结果如表1所示,可以看到,无论是结构化提取准确率,还是摘要生成准确率(评估值),都比较令人满意。

  依据本研究课题,我们设计并实现了自动公告摘要系统,以微服务的方式为周边系统服务,提供了单篇公告测试页面和批量摘要生成API。该系统目前已经上线运行,服务于公告制作小组,有效降低了部分摘要的制作时间,降低了风险,提升了效率。

  本文介绍了上市公司公告专业领域的知识抽取工作,采用了深度学习与传统规则方法的混合算法流程,并以9类高频公告作为测试集,均达到了理想可用的效果。

  一、扩展现有模型的应用范围。目前仅对沪市的9类高频公告进行了处理,可以考虑从几个方面扩展应用范围:1)其他类别公告;2)历史公告;3)其他市场公告。

  二、扩展现有自动摘要系统的输入格式。目前仅考虑了覆盖绝大部分公告披露的PDF格式,可以考虑增加其他格式的文件输入,如Word、TXT、HTML等。

  三、进一步探索新方法以加强现有算法的不足。目前方法处理的公告仍相对简单,如澄清公告、重大资产重组公告里面有更复杂更不规范的自然语言描述,这些特点都会使得深度学习无效,以及规则方法变得更加复杂。对于解决这类特殊问题,目前仍缺乏基本语料的储备。对此可以考虑通过大规模新闻语料进行迁移学习,即如何将通用领域的学习模型迁移到专业领域上。

  四、在结构化数据的基础上进行数据挖掘与产品化尝试。比如,可以围绕一家上市公司的经营情况自动生成“重大里程碑”,而这些数据均通过在不同类别公告的知识提取完成。还可以将人事变动公告进行解析,构成人物图谱,通过社交网络的分析方式查看管理层之间关系。此外,可以将直接反应公司经营情况的公告直接与股价挂钩,观察某一公司或某一行业发布的公告与其股价的关系。

本文链接:http://ubcdapclub.com/zhishitiqu/80.html

上一篇:迁移学习:教AI提取抽象知识

下一篇:没有了