@ -14,7 +14,7 @@ tags=["Knowledge Graph","repost"]
知识图谱( Knowledge Graph) 以结构化的形式描述客观世界中概念、实体及其关系, 便于计算机更好的管理、计算和理解互联网海量信息。通常结构化的知识是以图形式进行表示, 图的节点表示语义符号( 实体, 概念) , 图的边表示符号之间的语义关系( 如图 1 所示),此外每个实体还有一些非实体级别的边(通常称之为属性),如:人物的出生日期,主要成就等。
![图1 知识图谱的示列 ](https:// ipfs.sea.tube/ipfs/QmQDQQGL9hFvzRcF8WXwZRVHGSVvKhCijWDE7fH2gRUEz2? 640.png)
![图1 知识图谱的示列 ](https:// bafybeiay3otxyx3vf2l4cgotu3rj45d3gsmz5bnjsrrhfzpibig55jpfzm.ipfs.w3s.link/ 640.png)
TEG-AI 平台部的 Topbase 是专注于通用领域知识。数据层面, TopBase 覆盖 51 个领域的知识,涉及 226 种概念类型,共计 1 亿多个实体,三元组数量达 22 亿多。技术层面, Topbase 已完成图谱自动构建和更新的整套流程, 支持重点网站的监控, 数据的及时更新入库, 同时具备非结构化数据的抽取能力。此外, Topbase 还连续两次获得过知识图谱领域顶级赛事 KBP 的大奖,分别是 2017 年 KBP 实体链接的双项冠军,以及 2019 年 KBP 大赛第二名。在应用层面, Topbase 主要服务于微信搜一搜,信息流推荐以及智能问答产品。本文主要梳理 Topbase 构建过程中的重要技术点,介绍如何从 0 到 1 构建一个知识图谱,内容较长,建议先收藏。
@ -22,7 +22,7 @@ TEG-AI 平台部的 Topbase 是专注于通用领域知识。数据层面, TopB
TopBase 的技术框架如图 2 所示, 主要包括知识图谱体系构建, 数据生产流程, 运维监控系统以及存储查询系统。其中知识图谱体系是知识图谱的骨架, 决定了我们采用什么样的方式来组织和表达知识, 数据生产流程是知识图谱构建的核心内容, 主要包括下载平台, 抽取平台, 知识规整模块, 知识融合模块, 知识推理模块, 实体重要度计算模块等。Topbase 应用层涉及知识问答(基于 topbase 的 KB-QA 准确率超 90%) , 实体链接( 2017 图谱顶级赛事 KBP 双料冠军),相关实体推荐等。
![图2 知识图谱Topbase的技术框架 ](https:// ipfs.sea.tube/ipfs/QmNpfRXtd5ZMSzh3f1vEEUWaZsiNDeSESUVL1Mb8jMyUZ9?640.png )
![图2 知识图谱Topbase的技术框架 ](https:// bafybeig3vqxid3lmtcf5ogy7fxqvlsk4nqeuql55uvf6awcipd6copzsfy.ipfs.w3s.link/640(1).png )
1. ** 下载平台-知识更新**:下载平台是知识图谱获取源数据平台,其主要任务包括新实体的发现和新实体信息的下载。
@ -52,7 +52,7 @@ TopBase 的技术框架如图 2 所示,主要包括知识图谱体系构建,
知识更新主要包括两方面内容,一个是新出现的热门实体,需要被及时发现和下载其信息,另一个是关系属性变化的情况需要对其值进行替换或者补充,如明星的婚姻恋爱关系等。知识更新的具体流程如下图所示:
![图3 Topbase知识更新流程图 ](https:// ipfs.sea.tube/ipfs/Qmd2tAxfPCJB3fSTsZHagx8TCUafXWTa3dwybYvRfRYHFZ?640.png )
![图3 Topbase知识更新流程图 ](https:// bafybeih7w7sep3dcq2w5ukmi46pzyibbscdntuw6nra54d7ccyvkosqs5i.ipfs.w3s.link/640(2).png )
@ -72,7 +72,7 @@ TopBase 的技术框架如图 2 所示,主要包括知识图谱体系构建,
* 从相关实体中更新,如果某个热门实体信息变更,则其相关实体信息也有可能变更,所以需要获得热门实体的相关实体,进行相应更新。
![表 1 最近 7 日下载数据统计情况 ](https:// ipfs.sea.tube/ipfs/QmZ4WpZ21EQJzApaWFMLPcjv8s6JMzfhX1yExT1aPyvGva?640.png )
![表 1 最近 7 日下载数据统计情况 ](https:// bafybeiefnu7jrsrte6stig7hqrvrikf4mk4lgqe6rmlifmn5i4qej2gfie.ipfs.w3s.link/640(3).png )
2.针对其他关系属性易变的情况,我们针对某些重要关系属性进行专项更新。如明星等知名人物的婚姻感情关系我们主要通过事件挖掘的方式及时更新,如:离婚事件会触发已有关系“妻子”“丈夫”变化为“前妻”“前夫”,恋爱事件会触发“男友”“女友”关系等。此外,基于非结构化抽取平台获得的三元组信息也有助于更新实体的关系属性。
@ -84,7 +84,7 @@ Topbase 的抽取平台主要包括结构化抽取,非结构化抽取和专项
许多网站提供了大量的结构化数据,如(图 4 左)所示的百科 Infobox 信息。这种结构化知识很容易转化为三元组,如:“< 姚明,妻子,叶莉>”。针对结构化数据的抽取,我们设计了基于 Xpath 解析的抽取平台,如(图 4 右) 所示, 我们只需要定义好抽取网页的种子页面如: baike.com,然后从网页源码中拷贝 Infobox 中属性的 xpath 路径即可实现结构化知识的自动抽取,入库。通过结构化抽取平台生成的数据准确率高,因此无需人工参与审核即可直接入库,它是知识图谱的重要数据来源。
![图4 Topbase结构化抽取平台的xpath配置界面 ](https:// ipfs.sea.tube/ipfs/QmXrNNCBgBXwJmFJuSdAPh13EA5vE3vPoxyFkon8R6L3KS?640.png )
![图4 Topbase结构化抽取平台的xpath配置界面 ](https:// bafybeicojcg5gue7d6dl3yvcn7l6pityrfh6c3pz44st4vsirhsnx6mwbm.ipfs.w3s.link/640(4).png )
@ -93,7 +93,7 @@ Topbase 的抽取平台主要包括结构化抽取,非结构化抽取和专项
由于大量的知识是蕴含在纯文本中,为了弥补结构化抽取信息的不足,我们设计了非结构化抽取平台。非结构化抽取流程如图 5 所示:
![图5 Topbase非结构化抽取平台的技术框架 ](https:// ipfs.sea.tube/ipfs/QmNjV9cZsAnmkWr288Lb3tgCAAS6cRPh14qffgoj6gMq3c?640.png )
![图5 Topbase非结构化抽取平台的技术框架 ](https:// bafybeiharzwoupv7pmhn2lgqknc6pom2jp7nmg7bk4myvb2ezkdqs5fqx4.ipfs.w3s.link/640(5).png )
首先我们获取知识图谱中重要度高的实体名构建 Tri 树,然后回标新闻数据和百科正文数据,并将包含实体的句子作为候选抽取语料(新闻和百科数据需要区别对待,新闻数据往往包含最及时和最丰富的三元组信息,百科数据质量高,包含准确的知识,且百科摘要或正文描述相对简单,抽取结果的准确率高)。
@ -110,7 +110,7 @@ Topbase 的抽取平台主要包括结构化抽取,非结构化抽取和专项
* 基于序列标注模块:此外,还有许多属性值是无法进行 mention 识别,因此针对这类属性,我们采用一种序列标注的联合抽取方式来同时识别实体的属性值以及属性。这类属性主要有人物的“主要成就”信息,人物的描述 tag 信息,以及一些数值型属性信息。
![图6 Topbase的非结构化抽取服务 ](https:// ipfs.sea.tube/ipfs/QmZ4iojwdavYSrcnx4nxETgzpH49KkiijPsZFP9csrYzXp?640.png )
![图6 Topbase的非结构化抽取服务 ](https:// bafybeidyxm6ihj77patwxv6ssxariik4zyfwzn5h7eotjj7r6w4tfkt2wi.ipfs.w3s.link/640(6).png )
@ -120,15 +120,15 @@ Topbase 的抽取平台主要包括结构化抽取,非结构化抽取和专项
**1 ) 上位词抽取**: 上位词可以理解为实体细粒度的概念,有助于更好的理解实体含义。图 7 是构建上位词图谱的一个简要流程图,其中主要从三路数据源中抽取上位词数据,主要包括:知识图谱的属性数据,百科人工标注 Tag, 纯文本语料。由于抽取得到的上位词表述多样性问题, 所以需要在抽取后进行同义上位词合并。此外, 抽取生成的上位词图谱也会存在着知识补全的问题, 所以需要进一步的进行图谱的连接预测, 进行上位词图谱的补全。
![图7 上位词抽取流程 ](https:// ipfs.sea.tube/ipfs/Qmby9c8keZdoSUb5ytCh694Z8UdffG5JP6MWaWVuFcgDwd?640.png )
![图7 上位词抽取流程 ](https:// bafybeia3bzbmp3ccnemk7mkzcacofoumf325vuhjkjnuwk36ryxrawppra.ipfs.w3s.link/640(7).png )
**2) 实体描述 tag 抽取**: 实体描述 tag 是指能够描述实体某个标签的短句,图 7 是从新闻文本数据中挖掘到的实体“李子柒”的部分描述 tag。描述 tag 目前主要用于相关实体推荐理由生成,以及搜索场景中实体信息展示。描述 tag 抽取的核心模块以 QA-bert 为主的序列标注模型, query 是给定的实体信息,答案是句子中的描述片段。此外,还包括一系列的预处理过滤模块和后处理规整过滤模块。
![图8 描述tag的示列说明 ](https:// ipfs.sea.tube/ipfs/QmWNsYZBFa9KtCeexXkdUWVmNuhSLYUZZNo7uPkVQa1CwF?640.png )
![图8 描述tag的示列说明 ](https:// bafybeihmdms6576z5t6iuhvqukxglgjx7q56uu374puztdt26nt2hdyt7i.ipfs.w3s.link/640(8).png )
**3)事件抽取:** 事件抽取的目的是合并同一事件的新闻数据并从中识别出事件的关键信息生成事件的描述。事件抽取的基本流程如图 8 所示。
![图9 Topbase的事件抽取流程框图 ](https:// ipfs.sea.tube/ipfs/QmeoGTruyaPAUL9QRPhPZm88pYNQhKYzB35L8aJMmcMhLR?640.png )
![图9 Topbase的事件抽取流程框图 ](https:// bafybeigl7xd2foox4cm5rtxkcja6lyennjsxqjm72vxo7744pg5xqu45aa.ipfs.w3s.link/640(9).png )
@ -145,7 +145,7 @@ Topbase 的抽取平台主要包括结构化抽取,非结构化抽取和专项
知识规整目的是将实体数据映射到知识体系,并对其关系属性等信息进行去噪,归一化等预处理。如图 9 所示,左侧是从百科页面获取的武则天人物信息,右侧是从电影相关网站中获得的武则天信息,那么左侧的“武则天”应该被视为“人物类--历史人物--帝王”,右侧“武则天”应该被视为“作品--影视作品--电影”。左侧人物的“民族”属性的原始名称为“民族族群”,所以需要将其规整为 schema 定义的“民族”,这称之为属性归一。此外,由于不同来源的数据对实体名称会有不同的注释,如豆瓣的“武则天”这部电影后面加了一个年份备注,所以我们还需要对实体名进行还原处理等各种清洗处理。知识规整的核心模块是如何将实体映射到知识体系,即实体分类。
![图10 数据规整的示列说明 ](https:// ipfs.sea.tube/ipfs/QmdDtaAQ1KoFH9ZcSbjUab7yPB7g9kA9RGUr1UfeLDeeeU?640.png )
![图10 数据规整的示列说明 ](https:// bafybeibbipu3h6bu5qnyyfj4qz34u3qiz2b3p4hykbstgl4vx47cvfoge4.ipfs.w3s.link/640(10).png )
@ -156,14 +156,14 @@ Topbase 的抽取平台主要包括结构化抽取,非结构化抽取和专项
* 实体属性存在歧义:
![图11 实体分类中属性歧义问题 ](https:// ipfs.sea.tube/ipfs/QmUg3BYWa81Y5t154tqxqFiorZABU7p2ugzEpB83vjLgeY?640.png )
![图11 实体分类中属性歧义问题 ](https:// bafybeieb22lzzjqojj3o32lehmtajt4cls7hfvv7q2rrk7itxlnd2y3oba.ipfs.w3s.link/640(11).png )
* 实体名称或者实体简介信息具有迷惑性:例如实体"菅直人"是一个政治家,其名称容易和民族类别混淆,电影“寄生虫”简介如下图所示,其内容和人物概念极其相似。
![图12 实体分类中简介迷惑性问题 ](https:// ipfs.sea.tube/ipfs/QmPsHKURxCZga43GZ2h4GLVKuuuefGD3Zpo5QY8PppzHEv?640.png )
![图12 实体分类中简介迷惑性问题 ](https:// bafybeifzo3zmdjkbyhjyi532uhpohkrrlao4crhfk7pt34fkqvzbpugxki.ipfs.w3s.link/640(12).png )
@ -171,14 +171,14 @@ Topbase 的抽取平台主要包括结构化抽取,非结构化抽取和专项
**1 )实体分类的训练样本构建**:
![图13 实体分类训练数据构建流程 ](https:// ipfs.sea.tube/ipfs/QmYgFKkB6rSKEq6YATzeALEwxRgtpewCcag4DpEbEordBJ?640.png )
![图13 实体分类训练数据构建流程 ](https:// bafybeifbmenrdunhebvd4m5brfrzrcnfmaajeoyg3qdjul77xrf6qttk3y.ipfs.w3s.link/640(13).png )
* ** 属性规则模块**:每个实体页面包含了实体结构化属性信息,利用这些属性字段可以对实体进行一个规则的分类。如:人物类别的实体大多包含民族,出生日期,职业等字段,歌手类实体的职业字段中可能有“歌手”的属性值。通过构建正则式规则,可以批量对实体页面进行分类。基于规则模块得到的类别信息准确率高,但是泛化能力弱,它的结果既可以作为后续分类模型的训练数据 1 也可以作为实体分类的一路重要分类结果。
![图14 Topbase中用于实体分类的属性规则配置页面 ](https:// ipfs.sea.tube/ipfs/QmbMycZVorXcbXQahZ4FtxijBgUCqCNi2ZrpCsYrbUmchN?640.png )
![图14 Topbase中用于实体分类的属性规则配置页面 ](https:// bafybeifuhee3yvhblsv3nrgf2ehwohl546f6vdl7qqejf3yblqxgsx3naq.ipfs.w3s.link/640(14).png )
@ -187,7 +187,7 @@ Topbase 的抽取平台主要包括结构化抽取,非结构化抽取和专项
* ** 自动构建的训练数据去噪模块**:基于规则和简介分类模块可以得到部分分类样本,但是这些训练样本不可避免的会引入噪声,所以我们引入 N-折交叉训练预测自清洗数据,进一步保留高置信的训练样本,清洗思路如下图所示。
![图15 实体分类训练数据自清洗流程 ](https:// ipfs.sea.tube/ipfs/QmWcJz9RFUU9awpkPWohTbrSrW2wzJ1PxdRHrpottBwwzd?640.png )
![图15 实体分类训练数据自清洗流程 ](https:// bafybeihsxfgeg2arc4ekl4jog4xepdlr7oi3lu74gpzjm66gczaygo33mu.ipfs.w3s.link/640(15).png )
@ -208,13 +208,13 @@ Topbase 的抽取平台主要包括结构化抽取,非结构化抽取和专项
* 模型架构:基于 bert 预训练语言模型的多 Label 分类模型
![图16 实体分类基础模型 ](https:// ipfs.sea.tube/ipfs/QmZQNRECagmSUbQaHgSFpDzyvi3cEcf1FSkpn3rFJ9qkBt?640.png )
![图16 实体分类基础模型 ](https:// bafybeiddd7surhhmuchcedt64cfpsswgcupcyqi5wooqmwzzp2htqxh2kq.ipfs.w3s.link/640(16).png )
* 模型输入:我们针对上述特征进行拼接作为 bert 的输入,利用\[sep\]隔开实体的两类信息,每一类信息用逗号隔开不同部分。第一类信息是实体名称和实体简介,刻画了实体的一个基本描述内容,第二类信息是实体的各种属性,刻画了实体的属性信息。例如,刘德华的输入形式如下:
![图17 实体分类模型的输入形式 ](https:// ipfs.sea.tube/ipfs/QmPkByTJRjegeT2FQnkKT5Zpi6rZpV3yreWBuN5fdMU9dH?640.png )
![图17 实体分类模型的输入形式 ](https:// bafybeie7ayolnhrkhtqe6iirnmqfwlv2ftyt3nhu5i3d5lpkvzd5d6hpe4.ipfs.w3s.link/640(17).png )
@ -227,9 +227,9 @@ Topbase 的抽取平台主要包括结构化抽取,非结构化抽取和专项
知识融合的目的是将不同来源的数据进行合并处理。如从搜狗百科,体育页面以及 QQ 音乐都获取到了"姚明"信息,首先需要判断这些来源的"姚明"是否指同一实体,如果是同一个实体(图 18 中的搜狗和虎扑的姚明页面) 则可以将他们的信息进行融合, 如果不是( QQ 音乐的姚明页面)则不应该将其融合。知识融合的核心是实体对齐,即如何将不同来源的同一个实体进行合并。
![图18 知识融合示列说明-1 ](https:// ipfs.sea.tube/ipfs/QmStYinLsFy7swbtQth4Pc6pMBaSf1HUfTbiCUKPGT9H5k?640.png )
![图18 知识融合示列说明-1 ](https:// bafybeigj2uqtjhiklixfu3n6xwmxwe2jmje3atddozju465h5ogw7gijuu.ipfs.w3s.link/640(18).png )
![图18 知识融合示列说明-2 ](https:// ipfs.sea.tube/ipfs/QmZwhK21LgyFf8GK3fQAeNVVc1dD7CHcJ5ufp6ncxztz9E?640.png )
![图18 知识融合示列说明-2 ](https:// bafybeig4ex7dnospheuoe4fdzymeob2qbjwlfnmhdfpk2xl6cpck4ipibi.ipfs.w3s.link/640(19).png )
@ -238,20 +238,20 @@ Topbase 的抽取平台主要包括结构化抽取,非结构化抽取和专项
* 不同来源实体的属性信息重叠少,导致相似度特征稀疏,容易欠融合;
![图19 来自于百科和旅游网站的武夷山页面信息-1 ](https:// ipfs.sea.tube/ipfs/QmfK4TCZVdBJzpRzWpwdR8Bur1yhAv7FKPMmzcPkNHZtzg?640.png )
![图19 来自于百科和旅游网站的武夷山页面信息-1 ](https:// bafybeiahj4ndgvnurlktdihr3nydpwnggxugv5loa6rj7z2lrzbbgym2da.ipfs.w3s.link/640(20).png )
![图19 来自于百科和旅游网站的武夷山页面信息-2 ](https:// ipfs.sea.tube/ipfs/Qmd37f2K6YRGsn6HBTxG2UJ6HjL27j5bQbtYL5VtVBYM8R?640.png )
![图19 来自于百科和旅游网站的武夷山页面信息-2 ](https:// bafybeiegizrgisje2ld64pczajwt4np6du7oxyapo6go4jyvo7mt2tl3xe.ipfs.w3s.link/640(21).png )
* 同系列作品(电影,电视剧)相似度高,容易过融合,如两部还珠格格电视剧
![图20 两部还珠格格的信息内容-1 ](https:// ipfs.sea.tube/ipfs/Qmd8dRnNgpWM8pePBzHYq6nNk55C556Z2sj1R9RqFyWChZ?640.png )
![图20 两部还珠格格的信息内容-1 ](https:// bafybeiamrlvhiyko5wo7reu2yzci7uussqhabasgzohkp4nuhdlr7xqpom.ipfs.w3s.link/640(22).png )
![图20 两部还珠格格的信息内容-2 ](https:// ipfs.sea.tube/ipfs/QmR4mB51nLoBWk3in26vdjRryNgjh5TPtCJJqueELLSNXo?640.png )
![图20 两部还珠格格的信息内容-2 ](https:// bafybeig54vdhxhmplz54y5mv47q7noayjypez4htnp3m74cejbof4z6dfi.ipfs.w3s.link/640(23).png )
@ -262,7 +262,7 @@ Topbase 的抽取平台主要包括结构化抽取,非结构化抽取和专项
实体对齐的整体流程如图所示,其主要环节包括数据分桶,桶内实体相似度计算,桶内实体的聚类融合。
![图21 Topbase实体对齐流程图 ](https:// ipfs.sea.tube/ipfs/QmfJmBh56ajJJQM97XWLn15gniDkV6VhsM8rEuv3GTATpA?640.png )
![图21 Topbase实体对齐流程图 ](https:// bafybeid3h7nf6ply6py7txyvluntmumrddmxzbzmg7my672d7ntex6dnka.ipfs.w3s.link/640(24).png )
@ -273,7 +273,7 @@ Topbase 的抽取平台主要包括结构化抽取,非结构化抽取和专项
* 异构网络向量化表示特征:每个来源的数据可以构建一个同源实体关联网络,边是两个实体页面之间的超链接,如下图所示,百科空间可以构建一个百科实体关联网络,影视剧网站可以构建一个影视剧网站的实体关联网络。不同空间的两个实体,如果存在高重合度信息,容易判别二者相似度的两个实体,可以建立映射关系(如影视剧网站的梁朝伟页面和百科的梁朝伟页面信息基本一致,则可以认为二者是同一个实体,建立链接关系),这样可以将多源异构网络进行合并,梁朝伟和刘德华属于连接节点,两个无间道重合信息少,则作为两个独立的节点。然后基于 deepwalk 方式得到多源异构网络的节点向量化表示特征。
![图22 多源异构网络关联图 ](https:// ipfs.sea.tube/ipfs/QmURu99Rnvwfcdq1pAQRjPxjBEiXmzpcxSGXJBLQcSvkyy?640.png )
![图22 多源异构网络关联图 ](https:// bafybeidgj7miymmsykif76ianu3gozhtzzwtsx4nu45sqkiplk36a5woka.ipfs.w3s.link/640(25).png )
@ -286,7 +286,7 @@ Topbase 的抽取平台主要包括结构化抽取,非结构化抽取和专项
* 最后,按照下图结构将上述相似度特征进行融合预测两两实体是否是同一实体;
![图23 实体对相似度打分模块 ](https:// ipfs.sea.tube/ipfs/QmNLgSF8NhUtvR89X8f615jVEXj9EGDAkCvcDNHedEMK1f?640.png )
![图23 实体对相似度打分模块 ](https:// bafybeial4plvq5hqsrraib3vdsvyq5m7mtxyhjxruclnkha3bkuzaq53ie.ipfs.w3s.link/640(26).png )
@ -303,7 +303,7 @@ Topbase 的抽取平台主要包括结构化抽取,非结构化抽取和专项
**知识关联(链接预测)**是将实体的属性值链接到知识库的实体中,构建一条关系边,如图 24 所示“三国演义”的作者属性值是“罗贯中”字符串,知识关联需要将该属性值链接到知识库中的实体“罗贯中”,这样实体“三国演义”和“罗贯中”之间存在一条“作者”的关系边。
![图24 基于超链接关联的示列说明 ](https:// ipfs.sea.tube/ipfs/QmYFhkrtt4RVj6HG4LfX96hz7eb6xn7iLdeFgmnYB2NFk8?640.png )
![图24 基于超链接关联的示列说明 ](https:// bafybeie2e5l4nd237ink7gzmqcrzwb4kreocrvmcibb73ukayqgksnijaq.ipfs.w3s.link/640(27).png )
Topbase 的知识关联方案分为基于超链接的关联和基于 embedding 的文本关联两种方式。超链接关联是 Topbase 进行关联和推理的第一步,它是利用网页中存在的超链接对知识图谱中的实体进行关联,如百科“三国演义”页面中,其“作者”属性链接到“罗贯中”的百科页面(如图 24 所示),基于这种超链接的跳转关系,可以在 Topbase 的实体之间建立起一条边关系, 如该示列会在实体“三国演义”与“罗贯中”之间生成一条“作者”关系, 而“曹操”并没有该超链接, 所以三国演义的主要人物属性中的字符串“曹操”不会关联到具体的实体页面中。在进行超链接关联之前, Topbase 中的实体是一个个孤立的个体,超链接关联为知识图谱补充了第一批边关系,但是超链接关联无法保证链接的覆盖率。
@ -311,40 +311,40 @@ Topbase 的知识关联方案分为基于超链接的关联和基于 embedding
当前采用的嵌入模型是 TextEnhanced+TransE, 模型结构如图 25 所示。TransE 是将实体与关系映射到同一向量空间下,它是依据已有的边关系结构对实体之间的边关系进行预测,对孤立实体或链接边较少的实体预测效果较差。为了引入文本信息,解决模型对孤立实体预测的难题,模型使用 TextEnhanced 对文本信息进行嵌入。TextEnhanced 通过 NN 模型对文本信息嵌入后,利用 Attention 机制将文本信息嵌入到 Trans 系列的实体向量中,进而对尾实体进行预测。
![图25 TextEnhanced+TransE结构图 ](https:// ipfs.sea.tube/ipfs/QmbBNssNaEy3MzjkMZhrrLCgpZiwFhKuX6AAN9VSdohBUm?640.png )
![图25 TextEnhanced+TransE结构图 ](https:// bafybeidp7oj7vvycusq7ne7udohg6c6setkg4n6srnuw46aggzdygmq3cy.ipfs.w3s.link/640(28).png )
由于知识关联是在已知属性值的前提下, 通过名称匹配的方式得到关联实体的候选集, 所以知识关联无法补充缺失属性值的链接关系。如上图中“三国演义”的信息中并没有“关羽”, 知识推理目的是希望能够挖掘“三国演义”和“关羽”的潜在关系。为了保证图谱数据的准确率, Topbase 的知识推理主要以规则推理为主,具体的规则方法可以归纳为以下几类:
* ** 伴随推理**是在已经被链接的两个实体之间,根据两个实体的属性信息,发现两者间蕴含的其它关系。例如实体 A 已经通过“配偶”关系与实体 B 相连,实体 A 的性别为“男”,实体 B 的性别为“女”,则伴随推理会生成一条“妻子”关系边,将实体 A 与实体 B 链接在一起,代表 B 为 A 的妻子。伴随推理的规则可以通过统计同时关联起两个实体的属性共现比例得到。
![图26 伴随推理的示列说明 ](https:// ipfs.sea.tube/ipfs/QmV5mWwMQaesW2BEFNbaMSuSdidYuGkgnXrzMEZW3rdN9n?640.png )
![图26 伴随推理的示列说明 ](https:// bafybeifcqstrjpzyvwwfu4phrqhfx36a2ytztpl33nqlgnqw5uyr7ixlsi.ipfs.w3s.link/640(29).png )
![表2 Topbase的伴随推理规则库示列 ](https:// ipfs.sea.tube/ipfs/QmPWc2HizrumQ72XPkbzLLw6VggGqmqZhsQG431uWN6wfg?640.png )
![表2 Topbase的伴随推理规则库示列 ](https:// bafybeieahqnyr6ieyyyjqkjwrxm2pr2ql65gfduldml3sndcw3mnihfadm.ipfs.w3s.link/640(30).png )
* ** 反向推理**是依据边之间的互反关系,为已经链接的两个实体再添加一条边。比如实体 A 通过“作者”边与实体 B 相连,代表实体 B 是实体 A 的作者,则可以直接生成一条从实体 B 指向实体 A 的“作品”边,代表实体 A 是实体 B 的作品,因为“作品”与“作者”是一条互反关系。反向推理与伴随推理类似,都是在已经存在边关系的实体之间,挖掘新的边关系,不同的是,伴随推理在生成边关系时需要满足一定的属性条件,如上例中的“性别”限制,而反向推理直接通过已有的边关系,无需参考其它属性值,直接生成一条互反边关系。反向推理规则可以通过统计 A-B, B-A 的属性共现数量筛选。
![图27 反向推理的示列说明 ](https:// ipfs.sea.tube/ipfs/QmbqAy2SgpSmzdBAtin1Xn9hG3mbQ8TZauMaLLUd6hVbaW640.png )
![图27 反向推理的示列说明 ](https:// bafybeibuywhvubofc7pg7dvda75pcr3avsgn6t4fvctfvi2jjkfr2jxohq.ipfs.w3s.link/640(31).png )
![表3 Topbase的反向关联规则库示列 ](https:// ipfs.sea.tube/ipfs/QmUpEvBBPzLgbibaoVFvD2aKCKLYExhGQomZYCQDDF2Q2h?640.png )
![表3 Topbase的反向关联规则库示列 ](https:// bafybeidqinqflmyupohwv45bfidv6wehykdxd7xyxg5y2ykvouq6b7gmda.ipfs.w3s.link/640(32).png )
* ** 多实体推理**是在多个实体之间挖掘蕴含的边关系, 是一种更复杂的关联规则, 如第一种形式: A 的父亲是 B, B 的母亲是 C, 则 A 的奶奶是 C, 该形式通过统计 A+PATH = C, A+R0=C, 情况得到规则 \[PATH(R1R2)=R0\];第二种形式是 A 的母亲是 B, A 的儿子 C, 则 B 的孙子是 C, 该形式通过统计: A+R1 = B, A+R2=C, B+R0=C 的情况,得到规则\[R1 & R2 = R0\]。
![图28 多实体推理的两种形式示列说明-1 ](https:// ipfs.sea.tube/ipfs/QmVWDEPXxpHHYeiNvwz5R3DFi81QaB8GrbGxiqXmKXnwA2?640.png )
![图28 多实体推理的两种形式示列说明-1 ](https:// bafybeia3644wntpjb2ahkgolrzszqtau45xgwjby6ak2f4vkwwtryutaz4.ipfs.w3s.link/640(33).png )
![图28 多实体推理的两种形式示列说明-2 ](https:// ipfs.sea.tube/ipfs/QmQcZ7tUaUm3SeZDUgEDrAVbPiv2aMmaoYFfBXS3k6e6ei?640.png )
![图28 多实体推理的两种形式示列说明-2 ](https:// bafybeibohozdfdxca455pxbya4rbgoxlnd6iybyg7m7k7cskuw3cmjkkky.ipfs.w3s.link/640(34).png )
@ -352,7 +352,7 @@ Topbase 的知识关联方案分为基于超链接的关联和基于 embedding
实体的知名度( Popularity) 指标可以用于量化不同实体的重要性程度, 方便我们更好的使用图谱数据。Topbase 知识库的 popularity 计算以基于实体链接关系的 pagerank 算法为核心,以对新热实体的 popularity 调整为辅,并配以直接的人工干预来快速解决 badcase。具体地, 首先抽取实体页面之间的超链接关系, 以此为基础通过修改后的 pagerank 算法来计算所有实体的 popularity; 对于难以通过 pagerank 算法计算的新热实体的 popularity, 再进行规则干预。最后对于仍然难以解决的 case, 则直接对其 popularity 值进行人工赋值。Popularity 计算模块的整体流程如下图所示:
![图29 Topbase实体知名度计算流程 ](https:// ipfs.sea.tube/ipfs/QmaYMGNxYf6TMp5knWwZSb9td5jUhGhqp2aCTUdmwh5PkX?640.png )
![图29 Topbase实体知名度计算流程 ](https:// bafybeic3dhzvwobsocg3whccwmb5aryo7ykepffcquzxwhhmdp34myewx4.ipfs.w3s.link/640(35).png )
@ -363,7 +363,7 @@ Topbase 的知识关联方案分为基于超链接的关联和基于 embedding
因此链接关系之间也有可信度的差别,无法做到将它们一视同仁地看待。其次,有的链接关系即使在可靠性方面完全正确,但它们对于 popularity 的正确计算不仅没有太大帮助,反而会导致 popularity 的计算结果与预期不符。修改后的 pagerank 算法的计算过程与基础 pagerank 算法基本一致,只是在进行分布概率的流转时有所区别。下面进行举例说明:
![图30 多类型边的PageRank算法说明 ](https:// ipfs.sea.tube/ipfs/QmawoczewHxJNN72ZQbfSNSSraRbKv94XHkL4ftwBevvGi?640.png )
![图30 多类型边的PageRank算法说明 ](https:// bafybeigcdovmpyrvcuf3sjxssm3k7whcade4o27pnc6pbvwbjin4detsay.ipfs.w3s.link/640(36).png )
@ -380,7 +380,7 @@ Topbase 的知识关联方案分为基于超链接的关联和基于 embedding
知识图谱是一种典型的图结构数据集合, 实体是图中的节点, 关系( 属性) 是带有标签的边。因此, 基于图结构的存储方式能够直接正确地反映知识图谱的内部结构, 有利于知识的查询。如下图所示, 红色圈代表实体, 实线是边( 妻子) , 表示实体间的关系, 如“刘德华的妻子是朱丽倩”, _虚线_是属性( 出生日期) , 表示实体具有的属性, 如“刘德华的出生日期是 1961 年 9 月 27 日”。
![图31 图数据说明 ](https:// ipfs.sea.tube/ipfs/QmXkv2BYNoC6yC4sviYB9gTvSShcBGyuo7Y8U6iv71Kbxg?640.png )
![图31 图数据说明 ](https:// bafybeib5o5sm6a2t6osjurgactdwjdqsnrsqu6rdeqnrxkluzish32bp4i.ipfs.w3s.link/640(37).png )
@ -388,7 +388,7 @@ Topbase 知识图谱的存储是基于分布式图数据库 JanusGraph, 选择
**Topbase**基于**JanusGraph**存储查询架构如下:
![图32 基于JanusGraph的存储查询系统 ](https:// ipfs.sea.tube/ipfs/Qmaew7wgPLjQNYrbk4ZvLh2uVYvaoxWW855x9V8F3P1cks?640.png )
![图32 基于JanusGraph的存储查询系统 ](https:// bafybeiaxr2umghxpxdu6ssbi3gv7lquehbb7pt663y4lpct3hr6yj5jymi.ipfs.w3s.link/640(38).png )