目录
1 知识体系构建
1.1 知识体系
1.2 构建知识体系
2 典型知识体系
2.1 SUMO
2.2 GeoNames
2.3 统一的知识体系标准:schema.org
3 知识融合
1. 知识体系(Knowledge Schema)对于知识数据的描述和定义,是描述知识数据的“元数据”(metadata)
2. 知识图谱:三元组为基本单元,以有向标签图为数据结构,从知识本体和知识实例两个层次,对世界万物进行体系化、规范化描述,并支持高效知识推理和语义计算的大规模知识系统。
3. 知识体系主要包含三个方面:
词汇、类别/概念的定义和描述
概念之间的相互关系:分类(Taxonomic relation)非分类(non-Taxonomic relation)
公理(Axioms):反向、传递、对称等规则,值的约束等
4. 知识体系:共享概念化的框架规范;
知识库:服务于知识体系规定的知识单元的载体;Knowledge base
5. 知识体系中最重要的就是概念及其属性与关系的定义,有助于实现语义理解
6. 概念是人类将万物准确归类的前提; 概念的发展使得人类以最经济有效的方式认识世界(比如你从未见过的汽车,你也能认得他是汽车); 概念是联想的重要隐含因素(看到狗,联想到猫); 概念是归纳与推理基础;
7. 常用的知识组织形式:
ontology(本体): 是信息组织的一种形式,表达、共享、重用知识的一种方法,通过对概念、术语及其相互关系的规范化描述,勾画出某一领域的基本知识体系和描述语言;使用合适的逻辑来形式化; 对某一事实结构的非正式约束规则,可以理解和表达为一组概念及其定义和相互关系; 显示化,规范化,公理化;
例子:
应用: 管理知识(定义、存储、分类);减少歧义;推理;实体搜索(给定一个概念作为查询,检索该概念的典型实体);样本增强; 文本分类; 主题分析; 用户画像;基于概念的解释; 概念归纳; 语义表示; 实体推荐; 规则挖掘;
树状结构,上下位节点是严格的IsA的关系;无法表示概念的二义性;
Taxonomy(分类体系)
领域相关,树状结构,上下位节点非严格的IsA的关系
Folksonomy/ metadata(开放标签)
概念类别冗余: 可以存在多个表征同一概念的类别语义标签,类别标签由用户提供;
类别标签开放;能够涵盖更多的概念
1. 约束:属性的定义域、值域
2. 构建过程:
确定领域及任务(限定领域内知识可以穷举;通用知识库难以实用)
体系复用;
定义术语、概念/类别
确定分类体系
确定关系、属性
定义约束
3. 本体建模工具 Protégé
用于构建域模型与基于知识的本体化应用程序;
提供了大量的知识模型框架与动作,用于创建、可视化、操纵各种表现形式的本体;
可以通过用户定制实现域友好(领域相关)的支持,用于创建知识模型并填充数据;
可以通过两种方式进行扩展:插件和基于java的API;
常见功能:类建模、实例编辑、模型处理和模型交换;
4. 基于半结构化数据的知识体系构建
通过网络挖掘获取概念、关系;
基本假设: 同一网站中页面有相似性,所设定模版可复用;
关键核心: 模版学习与挖掘:如何通过自动学习挖掘模版,和构建抽取器;
基本步骤: 半结构化信息块识别/定位; 抽取模版学习;属性名、属性值抽取;
模版置信度估计: 要对所抽取模版进行评估,构建一个Graph,利用Randomwork进行排序;
问题: 仅仅依靠已有属性名进行块定位,召回率低
改进框架:
利用结构化信息识别结构化快;
在识别的块中学习属性模版,并抽取属性名;
对模版和属性进行排序,获得高质量的模版和属性名;
利用高质量的模版和属性名进行定位和抽取;
计算属性名与所在页面之间的互信息确定类别与属性名的关联;
5. 非结构化数据的知识体系构建
术语、概念抽取
术语质量评估: N-gram出现频率越高,越被视为高质量短语;
信息量,高质量短语传达一定信息,表达一定主题或概念;完整性;
Step 1: 生成术语候选(N-grams, 基于模版抽取)
Step 2: 候选排序,过滤噪声(基于频率统计/基于主题模型/基于图排序);
基于频率统计
TF-IDF, C/NC-value, PMI, Search engine, Domain Relevance, Domain Consensus
C-value:
对于短语(multiword expression),利用C/NC构成该短语的置信度;
C-value 衡量语料中出现的高频的最长短语,考虑了词汇长度和父子短语的影响;
上述表达式中,a表示候选词长度,f(a)表示候选在语料中出现的频率, g表示预设候选最长长度,没有父短语;
C(a),包含a的候选集合,所有的父短语,表征了a的独立性,若包含一个词串的集合个数越多,表明a在多个词中都出现过,则认为a有较强的独立性,更可能是一个术语;
词串越长,是术语的可能性越大;
一个词串a,若嵌套其的词串出现的频数较高,则a是术语的可能性就越小;
f(k)出现的频数越高,表明f(k)是一个术语的可能性就越大,则a本身是一个术语的可能性就越小;
NC-value:
相对于C-value,除了考虑候选出现的频率之外,还考虑上下文信息;
Ca表示候选a中上下文词的集合, 表示t在候选a上下文中出现的频率;
f(t)表示t在语料中出现的频率,n表示语料中所有词的个数;
上下文在候选排序中也有重要作用。
PMI(point mutual Information, 点互信息), 是在抽取领域短语时常用的指标,刻画了短语组成部分之间的一致性程度。
p(x,y)表示候选X和Y联合出现的概率;
p(x),p(y)表示x与y单独出现的概率;
比如:的电影”与“电影院”都有较高的频次,但是通过PMI可以识别出“电影院”相对于“的电影”是质量更高的短语。
Search Engine:
利用搜索引擎验证当前候选词,按照短语进行搜索:加双引号;
Domain Relevance:抽取领域相关的候选
:候选t在领域出现的概率,m表示领域个数
非术语: 在不同领域中分布类似; 术语: 在目标领域内的分布具有显著性。
Domain Consensus: (信息熵)
术语选择: 非术语: 不同领域中出现概率类似,没有区分性; 术语: 不同领域中概率不同,没有明显的语义特性。
p(t|d) 表示候选t 在文档d中出现的概率。
基于主题模型方法
篇章是由主题组成,篇章中的词,是以一定概率从主题中选取生成的,不同的主题,词语出现的概率分布是不同的;术语发现: 提取不同主题中出现概率较大的词语。
LDA
PageRank:如果一个网页被很多其他网页链接到,说明这个网页比较重要;如果一个网页被一个权值很高的网页链接到,则其重要性也会相应增加
TextRank:判断两个词间是否存在相关关系,则根据词语的共现关系。实际处理时,取一定长度的窗口,在窗口内的共现关系则视为有效;
术语选择: 随机游走后,得到每个词语的重要度,按照重要度选择术语。
Step 3: 实体扩展(自动挖掘与之相关,相似的同类型实体, 同类型实体具有相似的上下文)
同义词挖掘:具有相同/相近语义的术语聚合在一起,形成概念
基于网络挖掘;基于词典挖掘(WorsNet; Hownet; 大词林; frameNet);基于聚类挖掘(将每个待聚类样本看作一类,计算两两样本之间的最小距离;将距离最小的两个类合并成一个新类;更新类间距离)
关系挖掘:上下为关系、属性抽取
1. SUMO(Suggeated Upper Merges Ontology)
目前最大的公共本体;
与Wordnet进行映射;
80000个原子;
25000个词汇;
可以作为构建新知识体系的基础。
GeoNames是一个免费的全球地理数据库。
GeoNames的目标是把各种来源的免费数据进行集成并制作成一个数据库或一系列的Web服务。
GeoNames地名辞典包含了1100万个地点将近200种语言的1100万个地名和200万种别名。地理信息还详细到坐标、行政区划、邮政编码、人口、海拔和时区。GeoNames的数据收集自(美国)国家测绘机构、国家统计署、国家邮政局,还有美国陆军。
cnSchema.org是一个基于社群的数据标准,结合中文特定应用场景的应用需求,我们连接了schema.org,WikiData等开放数据接口标准,为中文领域的知识图谱,聊天机器人,网页开发等在线服务提供数据接口标准。
1. 单一的知识图谱难以覆盖整个领域,需要整合不同领域,不同语言,不同结构,不同模态的知识资源;
2. 不同来源的知识体系具有差异性: 属性定义不统一;分类体系不统一;来源于不同知识源的共指。
3. 知识融合:
将不同知识图谱融合为一个统一、一致、简洁的形式,为使用不同知识图谱的应用程序之间的交互建立互操作性
4. 知识融合评测:
ontology Alignment evaluation Initiative(OAEI),每年举办一次,结果公布在官网上
本体匹配:侧重发现(模式层)等价或相似的类、属性或关系;
实例匹配:侧重发现指称真实世界相同对象的不同实例(实体消解、实例匹配)
语义匹配:不同字符,不同语言,不同表达(文本相似性,结构相似性)
5. 基于文本相似度的映射方法
基于字符串匹配的方法
汉明距离(Hamming Distance):存在字符串𝑥,𝑡, 则它们之间的距离𝛿 (𝑥,𝑡) 定义为:
𝛿 (𝑝𝑒𝑜𝑝𝑙𝑒,𝑝𝑒𝑟𝑠𝑜𝑛) =4/6
Substring Similarity:存在字符串𝑥,𝑦, 𝑡是𝑥和𝑦的最长公共子串,则它们之间的相似度σ 𝑥,𝑡 定义为:
𝜎 (𝑎𝑟𝑡𝑖𝑐𝑙𝑒,𝑎𝑟𝑖𝑐𝑙𝑒) =(2∗4)/13 =8/13
N-gram Similarity: 𝑛𝑔𝑟𝑎𝑚 s,𝑛 为字符串 s中长度为 𝑛的子串集合,则对于字符串s,𝑡, 它们之间的相似度σ (s,𝑡) 定义为:
𝑛𝑔𝑟𝑎𝑚 (𝑎𝑟𝑡𝑖𝑐𝑙𝑒,2 )={𝑎𝑟,𝑟𝑡,𝑡𝑖,𝑖𝑐,𝑐𝑙,𝑙𝑒}
𝑛𝑔𝑟𝑎𝑚 (𝑎𝑟𝑖𝑐𝑙𝑒,2) ={𝑎𝑟,𝑟𝑖,𝑖𝑐,𝑐𝑙,𝑙𝑒}
σ (𝑎𝑟𝑡𝑖𝑐𝑙𝑒,𝑎𝑟𝑖𝑐𝑙𝑒 )= 4/(6−2+1)=4/5
基于语言处理的映射方法
语言规范化
词切分;词形还原(Kits → Kit);短语中停用词去除(Stop words list: a, the, by, type of, their, from)
获取/学习两个图谱中元素(概念、关系、实体等)的语义向量表示,然后利用距离度量函数(例如:欧式距离)计算他们之间的相似度
利用外部资源WordNet, HowNet;
基于搜索引擎的语义相似度计算(利用搜索引擎的返回文档数,估计两个概念的相关度/相似度): 𝑁𝐺𝐷 中国,中华人民共和国 =0.799
基于语义匹配(词向量表示的)的映射方法
利用上下文信息学习词的词表示向量
基本原则:具有相同(类似)上下文信息的词应该具有相同(类似)的词表示
传统词向量表示学习:基于共现信息进行统计
➢主题模型 • Latent Semantic Analysis (LSA) • Probabilistic Semantic Analysis (PLSA) • LDA ➢ 聚类模型 • Brown Clustering • Hyperspace Analogue to Language • GloVe
神经语言模型:利用上下文预测目标词
➢ NNLM ➢ COBW ➢ Word2Vec ➢ BERT ➢ GPT-3
➢ XLNet
相似度 🆚 相关度
同义关系 vs. 搭配关系
6. 基于结构相似度的映射方法
基于内部结构的映射方法
面对实体内部结构信息:属性的domain和range;常用于对齐前的预处理,去掉明显不能对齐的实体。
基于外部结构的映射方法
基于图的拓扑结构计算两个节点的相似度:如果两个不同节点的邻居节点(父类、子类、属性等)是类似的,则这两个节点也是类似的
基于层级结构的相似度计算方法:
基于拓扑结构的相似度(Structural topological dissimilarity),给定一个本体𝑜, 𝑒,𝑒′和𝑐是该本体上的结点,则𝑒和𝑒′之间的相似度𝛿( 𝑒,𝑒′ )
基于共享父类的相似度( Upward co-topic similarity ):给定一个本体𝐻, 𝑐′和𝑐是该本体上的结点,则𝑐′和𝑐之间的相似度
基于网络表示学习的映射方法
将知识图谱中的实体和关系都映射为低维空间向量,直接用数学表达式计算各个实体之间相似度,这类方法不依赖任何文本信息
联合知识表示学习:将两个 KG 的三元组融合在一起共同训练,并已链接实体对视为具有 SameAs 关系的三元组,从而对两个 KG 的空间进行约束
7. 已有的知识图谱融合系统:
RiMOM:动态多策略对齐框架
XLORE:建立中英文百科知识
Yago:将来自于Wikipedia的知识与WordNet相对应
Zhishi.me: 融合百度百科、互动百科、中文维基百科
CogNet:融合了语言知识、世界知识、常识知识