知识提取的一种应用,从上市公司年报中抽取因果关系

在金融的世界里,信息浩瀚如云海,相信每位金融从业者都有过信息过剩的烦恼,面对着大量的上市公司公告、财报、研报,新闻…,个人精力似乎总是不够。现今信息和数据是如此地高速膨胀,我们似乎需要一种更为高效的信息处理方式。

数据经过挖掘、加工处理之后,就能够成为人们所需要的信息。借助技术的力量,从海量数据中提取有用信息,识别其中蕴藏的模式、规律和相关关系,则是一种人类认识世界的新方式。

例如,在上市公司财报中蕴藏着大量的人工总结,其中包括大量的因果关系。因果关系的识别可以帮助我们了解事件之间的来龙去脉,获取事件的演化关系,有助于预测和决策。而基于这种认识,文因互联的工程师王爽利用NLP技术,对上市公司的年报进行了一次因果关系的抽取的实验。

接下来,就让我们来看看,在一份上市公司的年报中的一个抽取结果项目(下图为代码展示):

  • 【raw_text】表示原始的表示因果关系的句子
  • 【title_path】表示的是这句话位于文档中的位置
  • 【financial_term】表示的是财务项目
  • 【trend】表示的是该项目的变化趋势
  • 【amplitude】表示的是该项目的变换幅度
  • 【cause】表示的是该项目的变化原因

通过这样的提取工作,我们能够在短短的几分钟之内就可得知一份厚厚的年报中关键的“因果关系”信息。从实现角度来说,要想从年报中提取这些字段,则具体是两步走:

1 找出表示因果关系的句子

计算机当然不会知道我们关心的是哪些句子,而为了让计算机知道我们的想法,则必须告诉他一些特征。因此,首先要人工分析一些年报,找到表示因果关系句子的模式。比方说上图中的例子就是“XXX主要是因为XXX”这种模式,而类似的模式还有很多。在找到所有这些模式之后,计算机就可以对公司年报进行遍历搜索,取出所有符合这些模式的句子。

这中间主要的难点就是模式的松紧程度。如果我们提出的模式比较宽松,那么最终会找出许多不想要的句子;而如果提出的模式比较精细,那么又会丢失掉一些因果句子,准确度和覆盖度不可兼得。在调整了很多轮之后,才算得到一个合适的折中效果。

2 将句子切分为关心的字段

一旦找到这些表示因果关系的句子,下一步就是将其分解为关心的字段。这其实就是一个知识提取的过程,具体的算法就暂且不表。

相比上一步,这一步最大的麻烦是有很多信息噪音,会有许多不是财务项目的字段提取出来。

为了让我们的财务指标比较准确,在这里我们采取了白名单过滤噪音的办法。让专业金融支持团队人工建立了一个财务项目白名单,只有当字段中出现这些财务项目时,才会对其提取保存。在过滤了这些噪音之后,最终的效果还是很令人满意。

一份年报中,会出现数个甚至数十个这样的抽取结果,而随着报告的数量上升,在海量的数据供给下,在利用先进的算法将这些数据进行进一步的处理和挖掘,则机器智能开始显现。人们生活中依靠常识性思维判断的知识被计算机系统所“知晓”,甚至推理出由人类思维所无法达到的深层因果关系,使人们进一步明确事物间的引起与被引起作用,有利把控事物间的不利影响。

如果你想查看我们具体的抽取结果,可以在关注我们的公众号之后,发送“年报因果抽取”关键字即可获得文件下载链接。

如果你有更多关于对上市公司公开信息中的因果关系抽取有想法,无论是技术改进还是应用层面的思路,我们都欢迎在文章下方进行留言,也可以发送邮件至contact@memect.co 进行更深度的交流。


评论

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注