Spring中那些让你爱不释手的代码技巧
|
语义网旨在将文档上的元素添加计算机能理解的语义,使得互联网成为一个通用的信息交换介质。语义网有两个非常重要的标准,分别是RDF和SPARQL。 RDF全称资源描述框架(Resource Description Framework),用来描述网络资源,这里可以粗浅地理解RDF的描述方式为三元组的方式,分别是主语、谓词以及宾语/字面量(如日期、金额等数值/数词类宾语)。或者更简单地说,RDF数据集就是一系列的三元组集合,三元组分别为主谓宾。基于图模型部分的内容,相信读者可以理解,三元组集合的RDF数据集对复杂数据的表达与融合能力非常出色。 SPARQL是针对RDF数据集的查询语言,全称是SPARQL Protocol and RDF Query Language。如上图所示,SPARQL查询的核心模块是where语句中的三元组集合,此处的三元组不同于RDF的三元组,一般每一个where语句中的三元组至少有一个元组是变量,例如图中的?p,若?p出现在select 的目标中,则是查询需要的对象,若不存在,?p则只是起到对查询结果的约束作用,表示查询结果中,?p出现的几个位置所匹配的实际元组必须完全一致。 这两个标准将精准语义的信息获取分成了三个阶段,第一个阶段是从复杂的网络资源中抽取出三元组集合,即RDF数据集。比如德国的马克思普朗克实验室输出的知名的Yago系列数据集。第二个阶段是将表达数据需求的自然语句转化成格式化的SPARQL查询语句,是NLP语义理解范畴的问题。前两个阶段高度依赖于NLP技术的发展,从学术的角度来看还有较大的发展空间,但在实际业务场景中其实影响有限,因为业务场景上报采集的数据格式相对稳定,查询的需求也相对确定,因此,基于业务经验能够较好地直接格式化出RDF三元组。第三个阶段则是针对RDF数据集处理SPARQL查询,可行的方法众多,其中一种就是用子图匹配的方式,也就是我们接下来要提到的知识图谱的典型查询处理方式。笔者的导师邹磊教授是最早一批用子图匹配的方式处理SPARQL查询的学者,其相关工作形成的博士论文获CCF 优博提名奖。 感兴趣的读者也可以去阅读其发表在VLDB 2011的关于子图匹配处理SPARQL查询的文章 [2] https:// dl.acm.org/doi/pdf/10.1 4778/2002974.2002976 。 从语义网到知识图谱 知识图谱一般可以理解为以图谱的方式驱动知识的管理,为知识数据建模、存储和查询挖掘。图模型能够很好地建模三元组集合的RDF数据集,同时也能够很好地将SPARQL的查询需求表达成子图(如下图所示),因此SPARQL查询可以转化成子图查询,而RDF数据集则可以转化成RDF图,SPARQL的查询处理自然就成了在RDF图上进行子图匹配的过程。因此,撇开挖掘不谈,如果只从建模、存储和查询三个方面,知识图谱仅仅是图数据库来管理知识数据并提供子图查询得到的功能,也就是说是知识+图谱。知识+图谱本身就有很大应用,针对知识的图查询本身就能解决很多应用问题,如天眼查的知识展示。而知识+图谱能否碰撞出更大的火花,就必须讨论知识图谱中的挖掘方面的技术成果,这也是广大对知识图谱感兴趣的人群最关心的地方。 而我的结论是:目前不要期望太高,有待进一步观察。图谱对知识本身并无在内涵上的增益,是对知识的一个管理工具。推理、纠错、监控种种在NLP角度发展所遇到的瓶颈,在知识图谱中仍然是瓶颈。以推理为例,给定四个顶点“吴健雄”,“袁家骝”,“袁克文”,“袁世凯“以及他们之间的关系:“吴健雄”与“袁家骝”的夫妻关系以及袁氏三父子的关系,知识图谱大致能基于规则推导出“吴健雄”和“袁世凯”的孙媳妇的关系。整个过程里图谱其实起到的是数据建模和管理的作用,对数据内涵增益有限,甚至不需要图谱来完成推理,因此这个推理实质还是知识范畴的技术在起作用,并非是知识+图谱碰撞出的新信息。更具体地说,如果存在这么一个问题,知识范畴内无法解决而加了图谱就可以解决的话,目前来看基本可以确定解决这个问题的技术关键在于图谱自身独立存在的功能,如知识的高效关联可视化问题的技术关键在于图谱的可视化,与知识角度的NLP技术无关。反之亦然。
此外,NLP角度解决语义推理问题的一大瓶颈是常识逻辑的缺失,如鸟是天上飞的以及鱼是水里游的。因为逻辑推理的链条不能缺失任何一环,而常识逻辑难以全盘数字化,因此推理这一瓶颈难以突破,期冀知识图谱来解决这个问题,在目前来看困难重重,有待存储和计算能力的进一步发展。
DAGScheduler对于RDD图形的划分是有一定规律的: (编辑:柳州站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
