1500字范文,内容丰富有趣,写作好帮手!
1500字范文 > 知识图谱全讲解 + 电商应用场景

知识图谱全讲解 + 电商应用场景

时间:2019-09-02 07:52:23

相关推荐

知识图谱全讲解 + 电商应用场景

前言

读研的时候了解过知识图谱,现在想总结出来,方便自己和他人,本文章会从一下几个方面来讲解知识图谱:

什么是知识图谱如何构建知识图谱现有的知识图谱知识图谱的应用知识图谱的发展

什么是知识图谱

知识图谱是谷歌在提出来的,主要是为了解决谷歌搜索方面的问题,以前的搜索都是基于搜索关键词得到网页的信息,比如搜索“姚明的年龄”,得到的全是跟姚明有关的新闻、网页、等等,这些内容包含了一些“姚明”、“年纪”关键词,可是现在加入了知识图谱,我们看下搜索的结果:

可以注意到这里直接告诉你了问题的答案,姚明的年纪就是38岁,而且网页右下端还提供了姚明的关系图,比如姚明的女儿、妻子、爸爸等人物信息,改进了搜索质量,直接反馈答案给用户,并且还会随着时间推移,年龄这个数值会不断的增大。

这似乎只是知识图谱的应用,还是没有讲什么是知识图谱,那么我们来看下知识图谱的定义:

知识图谱是结构化的语义知识库。其基本组成单位是“实体-关系-实体”三元组,以及“实体-属性-值”。实体间通过关系相互连接,构成网状的知识结构。实体可以是人名、地名、公司名等等,这是一个比较抽象的概念,你可以理解有关系发生在两个物品之间,这两个物品可以理解为实体,比如:“盐溶于水”。“盐”和“水”都是实体,“溶于”就是关系,关系也是非常抽象的概念,具体后面也会主要讲解。

上面搜索案例:姚明的年龄是38岁,这是属于“实体-属性-值”这层关系,爸爸和妈妈是夫妻关系,这个问题是属于“实体-关系-实体”三元组关系:“爸爸 - 夫妻 - 妈妈”。这是知识图谱基本单元,那为什么叫做知识图谱?因为这个“实体-关系-实体”可以引发更多关系,比如:姚明有爸爸,他的爸爸有兄弟,他爸爸的兄弟有儿女,这样关联起来,从姚明这个为中心将这些关系一一梳理开来就成了一个关系网络,最终梳理成一个大的图就叫做图谱了,这些东西构建起来就叫做知识图谱(Knowledge Graph)。下面是天眼查提供的马云-赵薇的图谱关系。

如何构建知识图谱

构建知识图谱成本比较大,

1、结构化数据——开放链接数据

有一些公开的知识图谱,可以用来直接应用,

DBPediaYAGOWikiData

2、半结构化数据----百科数据
百度百科wiki百科互动百科

这些数据的结构不够规整清晰,需要人工或机器来手动的提取出知识

3、非结构化数据 - 文本数据

文本来源是互联网中的网页。要使用这些文本,需要首先把网页从互联网中采集到本地,然后把其中的正文内容抽取出来。这涉及到知识抽取的技术内容,本文不做详细介绍,感兴趣的朋友可以去找一些资料学习。

构建知识图谱的框架大致是如下图所示,英文版中文版都有了。

这里有几点疑惑:

第三方知识库

这个可能是其他专业领域的知识图谱、知识库、关系库等等,这些数据加工之后也可以存到知识图谱中。本体

本体(ontology)是指工人的概念集合、概念框架,如“人”、“事”、“物”等。

本体可以采用人工编辑的方式手动构建(借助本体编辑软件),也可以以数据驱动的自动化方式构建本体。因为人工方式工作量巨大,且很难找到符合要求的专家,因此当前主流的全局本体库产品,都是从一些面向特定领域的现有本体库出发,采用自动构建技术逐步扩展得到的。自动化本体构建过程包含三个阶段:

实体并列关系相似度计算实体上下位关系抽取本体的生成

比如对下面这个例子,当知识图谱刚得到“阿里巴巴”、“腾讯”、“手机”这三个实体的时候,可能会认为它们三个之间并没有什么差别,但当它去计算三个实体之间的相似度后,就会发现,阿里巴巴和腾讯之间可能更相似,和手机差别更大一些。

这就是第一步的作用,但这样下来,知识图谱实际上还是没有一个上下层的概念,它还是不知道,阿里巴巴和手机,根本就不隶属于一个类型,无法比较。因此我们在实体上下位关系抽取这一步,就需要去完成这样的工作,从而生成第三步的本体。

当三步结束后,这个知识图谱可能就会明白,“阿里巴巴和腾讯,其实都是公司这样一个实体下的细分实体。它们和手机并不是一类。”

某种程度上,本体可以帮你消除歧义,比如,两个苹果,一个苹果是手机企业,另一个是水果,现在有一篇文章里提到苹果,你如何分辨,通过文章更多文本信息,结合本体信息,我们可以确定文章具体讲解那个实体。

如何存储知识图谱

目前存储知识图谱的工具比较多,主要分为两类:第一类是RDF存储系统,另一类是图数据库。

RDF一个重要的设计原则是数据的易发布以及共享,图数据库则把重点放在了高效的图查询和搜索上。其次,RDF以三元组的方式来存储数据而且不包含属性信息。图数据库一般以属性图为基本的表示形式,所以实体和关系可以包含属性,这就意味着更容易表达现实的业务场景。

其中RDF存储系统一些典型的应用工具有:

RDF的存储系统有多种形式,不同的约定有不同的形式,RDF序列化的方式主要有:RDF/XML,N-Triples,Turtle,RDFa,JSON-LD等几种,其中最为明显的RDF-XML是:

<?xml version="1.0"?><rdf:RDFxmlns:rdf="/1999/02/22-rdf-syntax-ns#" ## rdf 是命名空间的简称xmlns:cd="http://www.recshop.fake/cd#"> ## cd 也是简称,属性的简称<rdf:Descriptionrdf:about="http://www.recshop.fake/cd/Empire Burlesque"> ## 直接用rdf来表示<cd:artist>Bob Dylan</cd:artist><cd:country>USA</cd:country><cd:company>Columbia</cd:company><cd:price>10.90</cd:price><cd:year>1985</cd:year></rdf:Description><rdf:Descriptionrdf:about="http://www.recshop.fake/cd/Hide your heart"><cd:artist>Bonnie Tyler</cd:artist><cd:country>UK</cd:country><cd:company>CBS Records</cd:company><cd:price>9.90</cd:price><cd:year>1988</cd:year></rdf:Description>...</rdf:RDF>

大家可能看不懂,但是写了一些备注在上面,方面大家看下。另一种就是Turtle存储方式。

@prefix person: </person/> . # 加@prefix 利用person 代替后面网址命名空间@prefix place: </place/> .@prefix : </ontology/> . # 这个还不清楚是干什么的person:1 :chineseName "罗纳尔多·路易斯·纳萨里奥·德·利马"^^string.person:1 :career "足球运动员"^^string.person:1 :fullName "Ronaldo Luís Nazário de Lima"^^string.person:1 :birthDate "1976-09-18"^^date.person:1 :height "180"^^int. person:1 :weight "98"^^int.person:1 :nationality "巴西"^^string. person:1 :hasBirthPlace place:10086.place:10086 :address "里约热内卢"^^string.place:10086 :coordinate "-22.908333, -43.196389"^^string.

对应的知识图谱就是如下所示:

直接感受就是Turtle 比 RDF-XML 更简洁了,这也是RDF目前发展的趋势,灵活简洁。

图数据库的工具排行如下:

企业级都是使用图数据库,目前比较流行的图数据的比较:

本文通过线上查询来模拟一个知识图谱的查询,平台连接:WikiData

主要是查询 “cat” ,查询语句如下:

SELECT ?item ?itemLabel ?itemDescription WHERE {?item ?label "cat"@en. SERVICE wikibase:label { bd:serviceParam wikibase:language "[AUTO_LANGUAGE],en". }}

界面如下:

现有的知识图谱

1、DBpedia

一个大规模的多语言百科知识图谱,可视为是维基百科的结构化版本。DBpedia 使用固定的模式对维基百科中的实体信息进行抽取,包括 abstract、infobox、category 和 page link 等信息。

DBpedia 目前拥有 127 种语言的超过两千八百万个实体与数亿个 RDF 三元组,并且作为链接数据的核心,与许多其他数据集均存在实体映射关系。而根据抽样评测[96],DBpedia 中 RDF 三元组的正确率达 88%。DBpedia 支持数据集的完全下载。

2、Wikidata

是一个可以自由协作编辑的多语言百科知识库,它由维基媒体基金会发起,期望将维基百科、维基文库、维基导游等项目中结构化知识进行抽取、存储、关联。Wikidata 中的每个实体存在多个不同语言的标签,别名,描述,以及声明(statement),比如 Wikidata 会给出实体“London”的中文标签“伦敦”,中文描述“英国首都”以及图 3 给出了一个关于“London”的声明的具体例子。

3、复旦大学GDM实验室中文知识图谱CN-DBpedia

国内知名中文知识图谱公开项目,相应的API,目前已经有700W+次的调用 ,有API提供http://kw./cndbpedia/apiwiki/ ,另外我们也提供了在线搜索服务 http://kw./cndbpedia/search/,当目前好像网络在维护中,暂时不能访问。

4、中文开放知识图谱联盟

中文开放知识图谱联盟(OpenKG)旨在推动中文知识图谱的开放与互联,推动知识图谱技术在中国的普及与应用,为中国人工智能的发展以及创新创业做出贡献。联盟已经搭建有 技术平台,吸引了国内最著名知识图谱资源的加入,如 Zhishi.me, CN-DBPedia, PKUBase。并已经包含了来自于常识、医疗、金融、城市、出行等 15 个类目的开放知识图谱。可以下载使用。

5、中文知识平台–楚辞

开放程度:UGC(用户创建内容),可以参考维基百科的模式。

知识表示理论:W3C Semantic Web

现状:知识量积累阶段

缺点:暂未提供API/SDK。

知识图谱的应用

智能客服

通过构建商品类目-商品信息-评论信息-促销优惠信息-支付信息-物流信息等等,这样一张大的图可以帮助我们对用户所提的问题进行解释回答,某种程度是

一些设计思路:

页面搭建

设想是将商品关联关键词,这样通过关键词来在知识图谱中找到关联商品,可实时的根据当前流行的关键词找出商品做落地页,将同类关联的商品聚合起来,放在资源落地页,实时高效。

商品推荐

通过构建买家的搜索、浏览、下单等关系,构建买家-商品两者的知识图谱,从用户出发,向一些用户推荐商品,这其实不仅仅考虑到知识图谱,更考虑如何刻画用户画像,对用户的年纪、经历的事情做一些简单的刻画,毕竟大多数人都要经过“小学 - > 初中 - > 高中 - > 大学 - > 工作租房 - > 买房 - > 结婚 - > 养育小孩”等等阶段,不同阶段的用户需求是不一样的,但别人的需求在未来就可能是你的需求,我们结合这些行为,把需求 - 商品的关系抽象化,在未来就可以重复应用在不用用户身上。

金融行业应用

1、 股票投研情报分析

通过知识图谱相关技术从招股书、年报、公司公告、券商研究报告、新闻等半结构化表格和非结构化文本数据中批量自动抽取公司的股东、子公司、供应商、客户、合作伙伴、竞争对手等信息,构建出公司的知识图谱。在某个宏观经济事件或者企业相关事件发生的时候,券商分析师、交易员、基金公司基金经理等投资研究人员可以通过此图谱做更深层次的分析和更好的投资决策,比如在美国限制向中兴通讯出口的消息发布之后,如果我们有中兴通讯的客户供应商、合作伙伴以及竞争对手的关系图谱,就能在中兴通讯停牌的情况下快速地筛选出受影响的国际国内上市公司从而挖掘投资机会或者进行投资组合风险控制。

2、反欺诈分析

通过融合来自不同数据源的信息构成知识图谱,同时引入领域专家建立业务专家规则。我们通过数据不一致性检测,利用绘制出的知识图谱可以识别潜在的欺诈风险。比如借款人张xx和借款人吴x填写信息为同事,但是两个人填写的公司名却不一样, 以及同一个电话号码属于两个借款人,这些不一致性很可能有欺诈行为

其他领域结合知识图谱还有以下:

实时推荐主数据管理:组织架构,社交网络,产品订购,IT网络欺诈检测,合成身份诈骗环基于图的搜索IT网络管理身份和访问管理地理信息系统

知识图谱的发展

知识图谱涉及的技术领域包括:知识表示、自然语言理解、智能问答、知识抽取、链接数据、图数据库、图挖掘、常识推理等等,这些都会推动这些知识图谱的发展,企业在这一块的思考就是以数据为中心,构建各类数据,以业务为重心,尽可能的发挥数据的潜力。

社招、校招内推时刻

本人在阿里巴巴工作,业余时间做了社招、校招的公众号,可以内推大家,免筛选直接面试,公众号的一些文章也帮助大学、研究生的一些同学了解校招、了解名企,工作几年的同学想换工作也可以找我走社招内推,同时大家对文章有问题,也可以公众号找我,扫码关注哦!

参考文献

知识图谱的前世今生与RDF的实践

通俗易懂解释知识图谱

知新温故,从知识图谱到图数据库

最全知识图谱介绍:关键技术、开放数据集、应用案例汇总

知识图谱在互联网金融行业的应用

阿里巴巴电商认知图谱揭秘

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。