保险行业知识图谱构建之初探

2019-12-16 06:35许闲闲复旦大学经济学院
上海保险 2019年11期
关键词:三元组保险行业保险产品

许闲闲 复旦大学经济学院

一、引言

当今的时代是人工智能的时代,随着人们对信息整合和知识获取的要求越来越高,传统的数据处理方式已经捉襟见肘。为了满足人们希望能够更加快速、准确而又高效地获取知识和信息的需求,无数的专家和学者对此进行了研究,并建立了一套系统的知识表示理论。知识图谱技术作为人工智能的重要基础,凭借其强大的语义信息处理能力及支持知识推理和分析的能力,近年来吸引了大量的关注。

知识图谱这一概念最早由谷歌公司在2012年提出,谷歌公司希望利用这项技术,使其现有的搜索引擎转变为能够理解用户输入信息的智能知识引擎。知识图谱本质上是一种大规模语义网络,整个网络由无数个节点和节点之间的连线组成,每个节点代表现实世界中的一个实体,而节点之间的连线则代表不同实体之间的关系(如图1所示),一般采用SPO(Subject-Property-Object)的表示形式。实体不仅可以是某一实物,如电脑、吉他、足球、自行车等,也可以是某一概念集合,如地名、人名、性别、职业等。节点之间的连线则可以表示丰富的关系,如包含关系、先后关系、因果关系等,图谱中的实体和实体之间的关系通常用三元组的形式表示。除此之外,还能够给实体赋予各种属性,这使得知识图谱具有十分突出的知识表示能力。

知识图谱种种优异的性质使得近年来无论是学界还是业界都对其表现出了浓厚的兴趣,纷纷尝试建立了一系列大规模通用知识图谱。其中比较著名的有基于WordNet的YAGO,它包含了一百万个实体和超过五百万的关系;也有基于Wikipedia和专家知识的Freebase和DBpedia,两者包含的实体个数均在千万级别;还有基于机器学习方法建立的Knowledge Vault,它由Google在2014年建立,至今已经收录了16亿个事实三元组,并且具有高准确率的三元组多达2.7亿个。另外,各个细分的垂直领域也在如火如荼地建设适用于自身的知识图谱。如影视领域的IMDB、音乐领域的MusicBrianZ、医疗领域的SIDER等。知识图谱技术具有广阔的应用前景已经逐渐成为了各行各业的共识。

保险行业一直以来都注重将创新思维融入到传统商业模式之中,所以知识图谱这项极具潜力的技术早已在保险业内成为了炙手可热的话题。但是由于目前相关技术尚不成熟、相关领域的复合型人才的匮乏以及技术与业务的契合点尚不明晰等原因,使得目前大多数保险公司或者保险科技初创公司在知识图谱技术上的实践仅仅停留在十分初级的阶段,有些打出知识图谱口号的也只是出于营销的目的。对此,本文拟站在保险行业的角度思考如何构建真正适用于保险领域的知识图谱,从而建立保险行业知识点之间的关系,并在此基础上探讨知识图谱在保险行业的应用前景,为我国保险行业的发展提供资源支持。

二、保险行业知识图谱构建方法

▶图1 知识图谱示例

▶图2 知识建模示例

知识图谱的构建是一个浩大的工程,一般认为,通用领域的知识图谱构建主要分为六个步骤,分别是知识建模、知识抽取、知识融合、知识储存、知识推理和知识更新,保险行业的知识图谱构建同样可以遵循这一流程。

(一)知识建模

知识建模就是在结合自身领域知识特征的基础之上对知识图谱进行顶层设计,构建一个适用于特定领域的知识体系。这个过程需要设计者进行细致的思考与探索,设计者要决定在未来构建好的图谱中应该包含哪些实体和哪些概念,以及实体与实体、概念与概念之间存在何种关系,这是整个知识图谱构建的重要基石。在构建保险行业的知识图谱时,要从保险行业自身的特征出发构建其知识体系。从宏观的角度来看,知识体系中囊括的信息越丰富、涵盖的维度越多越好,诸如保险公司、保险产品、产品消费者以及第三方机构等不同的维度均可以考虑纳入到图谱之中(如图2所示)。另一方面,从微观的角度来看,有着不同需求的主体对知识体系有不同的偏好。比如对于保险公司而言,涉及到保险公司的知识体系可能并不是很重要,那么在设计整个图谱的架构时,可以不考虑保险公司维度的知识。这种有针对性的设计,不仅能更好地契合图谱使用主体的需求,还能够简化后续图谱建设和维护的工作量,节省更多的人力和资本。

(二)知识抽取

知识抽取需要探讨的是从哪些途径、运用何种技术提取到能够纳入知识图谱中的结构化数据。与其他领域一样,保险行业的基础数据以三种形式存在,即结构化数据、半结构化数据和非结构化数据。保险公司和保险行业其他机构内部数据库中的数据多以结构化的形式存在,半结构化的数据是指以百科或者表格形式储存的数据,而非结构化数据则是指以文档形式存在的数据。知识图谱的数据通常表示为一个三元组结构,即实体—关系—实体,或者实体—属性—属性值。如何将三种来源的数据表示为标准的三元组结构,这涉及到一系列复杂的计算机技术。对于结构化数据,即数据库或知识库数据,将其转化为三元组结构相对比较容易,可以用D2RQ、D2R Server等工具直接转换。对于半结构化数据,如原保监会官网上以表格形式展现的保险公司经营状况等数据,可以设计包装器进行数据提取。上述两种数据转换为标准三元组的方法已经相对成熟,现有的工具已经能够应付大部分的知识抽取场景。而构建知识图谱的最大瓶颈在于非结构化数据的结构化,例如类似于保险产品条款中蕴藏的关于产品的知识,由于不同条款表述的多样性和知识本身的复杂性,单纯利用算法很难对各种概念和关系进行识别和提取,因此往往需要人工参与整个抽取工作中。

(三)知识融合

通过上述步骤得到的原始三元组往往包含很多冗余、重复甚至错误的信息,因此还需要进行数据的整合,即知识融合。在一个未经处理的原始图谱中,实体重复、实体属性缺失是常态。如“平安”“平安保险”“平安集团”等实体可能均指向同一实体,那么在图谱中同时存在这些实体是不必要且浪费资源的。对此可以采用一系列定量方法判定哪些实体是重复的、相互冲突的,之后再将这些实体整合为统一的形式。通常采用的方式是计算各个实体及其属性的相似度,实体相似度的计算方法主要有聚合、聚类和表示学习,而属性相似度的计算方式大致有三种,分别是编辑距离计算、集合相似度计算和基于向量的相似度计算。一旦某些实体计算的相似度超过了某一阈值,那么可以将这些实体融合为同一实体。

(四)知识储存

由于知识图谱特殊的数据表示方式,如何对其进行有效的储存和检索也成为了研究的重点。目前知识图谱的储存方式主要有两种,一种是基于表结构的储存,另一种是基于图结构的储存。在诸多的解决方案中,最受关注的是图数据库Neo4j,Neo4j是一个嵌入式、基于磁盘的开源的图数据库系统,它是在图(网络)中而不是表格中存储数据。Neo4j提供了大规模可扩展性,在一台机器上可以处理数十亿节点/关系/属性的图,可以扩展到多台机器并行运行。相对于关系数据库来说,图数据库善于处理大量复杂、相互连接、低结构化的数据,这些数据变化迅速,需要频繁的查询——在关系数据库中,这些查询会导致大量的表连接,因此会产生性能上的问题。Neo4j重点解决了拥有大量连接的传统RDBMS在查询时出现的性能衰退问题。通过围绕图进行数据建模,Neo4j会以相同的速度遍历节点与边,其遍历速度与构成图的数据量没有任何关系。此外,Neo4j还提供了非常快的图算法、推荐系统和OLAP风格的分析,而这一切在目前的RDBMS系统中都是无法实现的。

(五)知识推理

知识推理就是通过各种方法获取新的知识或结论,并且这些知识和结论在事实上成立。对于知识图谱而言,就是从图谱中发现实体之间隐藏的关系或者实体的隐藏属性。在构建图谱的过程中,会出现实体之间关系的缺失和实体属性的缺失等情况,因此知识图谱需要具备一定的知识推理能力来补充漏掉的实体、关系或者属性。例如,有三个实体,分别是“张×”“王×”和“李×”,他们都购买了“××保险”,且有如下三元组关系,(张×,父子,王×)、(李×,朋友,王×)、(张×,居住,上海)以及(李×,居住,上海),那么图谱应该有判断三元组(王×,居住,上海)成立的概率的能力,一旦这个概率超过了设定的阈值,就将该三元组纳入图谱中。知识推理技术使得构建高质量的大规模知识图谱成为可能。

(六)知识更新

知识更新并不是一个单独的工作,知识更新要做的就是把前五个工作进行循环迭代,即知识体系更新、知识抽取更新、知识融合更新、知识储存更新、知识推理更新的循环往复。总而言之,知识更新就是要结合现实世界的情况,对已经建立的保险行业知识图谱进行实时更新以保持其有效性。

三、疾病保险知识图谱构建与发现

截至2019年6月,在中国共有3146个疾病保险的主险和附加险备案条款。借助图谱的技术,我们可以综合分析这3146款产品的特征。我们发现,2009年主险有66款,附加险有396款。2009年数据较多的一个原因是那一年《保险法》修改,保险公司的很多条款需要重新报备。但是,我们再看2010年到2018年,主险和附加险的增速都是非常快的。2018年,主险有256个,附加险有224个。2018年的数据非常有趣,大家会发现,如果从增速上看,2010年到2017年备案产品的数量是稳步增长的,但是2018年有几款产品基本上翻倍了。究其原因,竟然与这一年上映的一部电影——《我不是药神》相关,这部电影的热映引发的社会关注导致很多保险公司在这一年开发了大量的疾病保险,也就是我们看到的这个时间节点上疾病保险的总体趋势是上升的,而且它跟一些特定的时间、特定政策的制定是密切相关的。

那么在这3146个险种里,我们可以看到,2009年到2018年的各类疾病保险中主险的数量也在逐年增加。以目前市场上占比约百分之六十的重大疾病保险为例,当然,这个险种结构我们也可以从图谱分析得出,我们发现,这些疾病保险针对的人群也很有趣。保险公司在设计产品的时候,大部分保险产品都是没有特定针对群体的,这一类产品占到了87%。但是针对儿童的保险产品占第二位,即现在的三千多个保险中,有8%的产品是针对儿童的疾病保险,而针对女性的保险产品占比是3%,针对学生的保险产品占比是1%,针对老年人的保险产品占比是1%。这也就是说,我们的市场上儿童保险产品已经有很多,而老年保险产品并不充足,未来我们可以给老年人群体开发更多的相关保险产品,这个数据其实对业界也有很大启发。

就行业的平均数据而言,整个知识图谱显示,现在有88家财产保险或者人身保险公司拥有疾病保险产品,平均每一家保险公司拥有35.75个主险或者附加险的疾病保险产品。那么在这88家公司所销售的三千多份疾病保险产品中,我们通过做保单的责任提取发现,这一类产品有九个主要的保险责任,包括重大疾病保障、中症、轻症等,另外还有特定疾病的保障、医疗保障、住院津贴保障、身故保障、全残保障、长期护理保障等。我相信,可能很多人会跟我一样觉得迷惑,十年前的保险责任其实都没有那么复杂,而现在一个条款里包含这么九类保险责任,而且这已经成为保险业内的一个常态,那么这九类保险责任在目前的保单里是怎样分布的呢?图谱显示,其实平均的保单责任呈现逐年递增的趋势。2017年之前,保单责任里只包含重症和轻症,2017年,保单责任里开始出现一些中症的疾病,而重症的数量在整个保单责任中逐渐下降,轻症和中症一直在增加。这意味着随着保险产品的发展和更新,其所包含的疾病责任也在不断地调整,一些疾病可能在疾病库的扩容过程中慢慢地变多,一些疾病慢慢由原来的重症变成中症甚至轻症,同时也有一些新的疾病会增加进疾病库中来。

犹豫期也得到一个很有趣的结论。借助知识图谱,我们比较容易地知道整个行业的保险条款状况及其发展趋势。我们发现,在这三千多个条款中,71%的条款规定的犹豫期是十天,23%规定的犹豫期是十五天,4%规定的犹豫期是二十天。2009年至2013年间,市场上所有的重疾险规定的犹豫期都是十天,2014年以后开始有很多保单将犹豫期扩展到十五天,2016年市场上开始出现一些新的产品,其犹豫期扩展到了二十天。2013年以后,犹豫期慢慢变得越来越长了,这意味着我们的保险消费者权益保护工作越来越重要,效果越来越好。

以上分享是我们的一些原创性工作,这里面我相信会有非常多的不足,我们做这个研究是希望给行业呈现一套方法、一套数据和一项技术。我们希望未来保险公司可以借鉴这些经验进一步拓展科技在保险行业的运用,行业能够走得更远更好。

猜你喜欢
三元组保险行业保险产品
河北省保险行业协会
特征标三元组的本原诱导子
河北省保险行业协会
推进我国保险行业向更高层次发展
关于余挠三元组的periodic-模
一个时态RDF存储系统的设计与实现
保监会:险企不得开发承保投机风险产品
关于我国保险产业发展现状及对策分析
三元组辐射场的建模与仿真