内容
1. 语义网表示法
1.1 语义网概述
1.2 资源描述框架RDF
1.3 本体语言OWL
1.4 规则与推理
2. 知识图谱中的知识表示
2.1 DBpedia知识表示
2.2 Wikidata 和 Freebase的知识表示
2.3 知识图谱的多元关系表示方法
3.分布式知识表示
3.1 分布式表示概述
3.2 知识表示学习方法
3.3 典型分布式知识表示方法及其实现
1. 语义网表示法
1.1 语义网概述
1 从万维网开始
Lee创造了万维网(1989-1990)
统一资源定位符(URL)
超文本标记语言(HTML)
超文本传输协议(HTTP)
特征:
文本/网页之间能够通过超链接进行关联
触发了Google等web搜索引擎
2 Web 1.0 — Web 3.0
1.0 服务商产生内容,用户被动接受
2.0 用户在服务商平台生成和贡献内容
维基百科、社区问答(百度知道)等典型应用诞生
1.0 与 2.0存在问题
网页内容以人为本,缺乏语义标记
web数据难以重用,计算机难以理解HTML文档内容
3.0 : 语义网,赋予web信息明确的含义,使计算机和人更好的协同工作
2 语义网是万维网的变革与延伸,是web of documents向 web of data的转变,目的是让计算机能够自动识别和理解万维网上的内容。
自然:
以web数据的内容为核心,用计算机能够理解和处理的方式链接起来海量的分布式数据库;
特征:
web上的事物有唯一的URI
事物通过链接相关联(例如任务、事件等)
事物之间的联系明确存在并且具有不同的语义类型
3 语义网体系结构(为描述数据而设计的表示语言和工具,形式化描述一个知识领域的概念、术语、关系)
(1)第一层: Unicode 和 URI(Uniform resourse identifier,通用资源标识符),是整个语义网的基础
Unicode: 实现信息的统一编码(处理资源的编码);
URI: 负责标识资源,支持网上对象和资源的精细标识
(2)第二层: 语法,用于表示数据的内容和结构
用XML标记语言或其他格式记录网络资源信息。
(3)第三层: 数据交换层,是网络数据语义描述的基础
通过RDF抽象语言,以“资源 – 属性 – 属性值” 的三元组形式描述网络资源
(4)第四层: 分类
RDFS扩展了RDF语言,提供了类、实例、子类等关系描述,便于构造一个分类体系
(5)本体和规则
使用OWL更丰富地扩展了RDFS,揭示资源本身及相互之间更为复杂和丰富的语义表示
使用RIF定义了人工规则的表现格式
4 XML
HTML: 用于显示数据,侧重于如何表现信息;
XML: 用于存储和传输数据,侧重于如何结构化地描述信息
XML元素: 代表XML文档所描述的事物,比如书籍、作者等
元素:由开始标签、元素内容和结束标签组成
标签名称,用户可以随意选择,限制很少
例如:
<author> Thomas B. Passin </author>
元素具有嵌套结构,对嵌套深度没有限制
<author>
<name> Thomas B. Passin</name>
<gender> Male</gender>
<phone> +61-7-3875<phone>
</author>
XML 优点: 结构化的数据表示方式,使数据内容与其形式分类;
良好的可扩展性,用户可以创建和使用自己的标记,可以定义行业特定的标记语言,并进行数据共享和交换
文档类型声明,其数据可被任何XML解析器提取、分析、跨平台使用
XML缺点: 容易产生冲突、混乱
数据库不具备数据库管理系统的全部功能
树状结构存储、插入、修改困难
只定义了文档结构和数据类型,没有定义数据语义,机器无法理解文档的内容,因此就需要RDF(Resourse Description Framework, RDF)
1.2 资源描述框架RDF
1 资源描述框架: 利用当前多元数据标准,描述各种网络资源,形成人机可读,并可由机器自动处理的文件。
2 核心思想: 使用Web标识符(URI)来标识事物
通过指定属性和对应的值来描述资源的性质或资源的关系
3 RDF数据模型
包括:资源、属性、语句
资源:一切能够以RDF描述的对象都叫资源,用唯一的URI来表示;
属性:用于描述资源的特性或资源之间的关系,每个属性都有特定的含义;
陈述: 特定的资源加上一个属性和相应的属性值就是一个陈述,其中资源是主体(subject),属性是谓词(predicate),属性值是客体(object).
4 RDF Schema
是RDF 的扩展,在RDF基础上提供了一组建模原语,用来描述类、属性及它们之间的关系。
Class, subClassof : 描述类别层次结构
Property, subPropertyOf: 描述属性层次结构
domain, range: 声明属性所用的资源类和属性值类
type: 声明一个资源是一个类的实例
5 RDFS词汇表: 允许定义自己的词汇表,类别集合和属性结合,与其他词汇表中词汇的关系。
6 RDF Schema示例
7 RDF、RDFS和XML区别
(1)RDF 不是一种语言,只是一种书写规范;
(2) RDF是一个抽象的数据模型,其基本构造为陈述,“资源-属性-属性值”三元组,表示这是一个什么事物,有什么属性,属性有什么属性值。
(3)XML是这种抽象的数据模型的具体书写方法。
(4)预定义的词汇不够用就使用RDFS来自定义词汇。
8 RDFS优点: 简单(三元组)、易扩展、包容性、易综合
RDFS缺点: 不能准确描述语义,没有推理模型,不具备推理能力(解决方案: OWL)
1.3 本体语言OWL
1 本体(Ontology): 是共享概念模型的明确的形式化规范说明
概念模型(conceptualization): 本体通过抽象客观世界的概念而得到的模型,独立于具体的环境状态;
明确性(explicit): 使用的概念及使用这些概念的约束都有明确定义;
形式化(formal): 计算机可以处理的,不是自然语言;
共享(shared): 共同认可的知识,反应的是相关领域公认的概念集合
2 本体通过对概念的严格定义和概念与概念之间的关系的描述来确定概念的精确含义。是一套完整的知识体系。
包括:类或概念、类的实例、实例的属性值。
3 OWL(Web Ontology Language,web本体语言)是在语义网上表示本体的推荐语言,作为RDFS的扩展。
提供更多原语,支持更丰富的语义表达,支持推理。
4 OWL子语言:
OWL Lite: 轻量级的,提供一个分类层次和简单属性约束;
OWL DL: 提供推理系统,保证计算完备性和可判定性,与描述逻辑(DL)密切相关。
OWL Full: 支持完全自由的RDF语法,但不具备可计算性保证;
5 OWL: 独特的描述结构,包括头部和主体两部分。
Head:使用命名空间;预定义的标签形成本体的头部并声明本体
如形容一个篮球运动员本体,以XML形式书写:
<OWl: Ontology rdf:about="http://www.example.com/basketballPlayer">
<rdfs:comment> 一个本体的例子</rdfs:comment>
<rdfs:label>篮球运动员本体</rdfs:label>
</owl: Ontology>
主体: OWL核心,描述本体的具体内容,定义类、个体、属性、约束和关联
“篮球运动员”主题:
6 OWL类定义: owl:class 和 rdfs:subClassOf 标签
<owl:Class rdf:ID=“运动员”/>
<owl:Class rdf:ID=“篮球运动员”>
<rdfs:label xml:lang="en">basketballPlayer</rdfs:label>
<rdfs:label xml:lang=”jp"> バスケットボール選手 </rdfs:label>
<rdfs:subClassOf rdf:resource=“#运动员” />
</owl:Class>
OWL基类: owl:Thing
OWL空类: owl:Nothing
7 OWL个体实例化: 必须基于某个类
<篮球运动员 rsf:ID="姚明"/>
等效定义
<owl:Thing rdf:ID=“姚明”/>
<owl:Thing rdf:about=“#姚明”>
<rdfs:type rdf:resource=“#篮球运动员”/>
</owl:Thing>
8 OWL属性,指二元关系,需标明定义域和值域
域:属性属于哪个类;
范围:
数据型属性(DatatypeProperty): 连接个体和数据类型
<owl:DatatypeProperty rdf:ID=“运动员身高”>
<rdfs:domain rdf:resource=“#运动员”>
<rdfs:range rdf:resource=“&xsd;unsignedLong”/>
</owl:DatatypeProperty>
对象属性(ObjectProperty):连接个体和另一个个体
<owl:ObjectProperty rdf:ID=“对应教练”>
<rdfs:domain rdf:resource=“#运动员”>
<rdfs:range rdf:resource=“#教练员”/>
</owl:ObjectProperty>
9 OWL属性特征: 传递性、对称性,通过type标签指定OWL预定义的属性特征(并非OWL强制要求,但尽量多的属性特征描述有助于推理算法的实现)
<owl:ObjectProperty rdf:ID=“队友”>
<rdfs:domain rdf:resource=“#运动员”>
<rdfs:range rdf:resource=“#运动员”/>
<rdf:type rdf:resource="&owl;SymmetricProperty" />
</owl:ObjectProperty>
<运动员 rdf:ID=“易建联”><队友 rdf:resource=“赵继伟”/></运动员>
<运动员 rdf:ID=“赵继伟”><队友 rdf:resource=“易建联”/></运动员>
10 OWL属性限制: 属性的值域可以在某个类的定义中以继承的方式进一步限制,仅对这个类的个体有效,限制包括基数限制等。 owl:Restriction
<owl:Class rdf:ID=“篮球队”>
<rdfs:label xml:lang="en">basketballTeam</rdfs:label>
<rdfs:subClassOf rdf:resource=“#球队” />
<rdfs:subClassOf>
<owl:Restriction>
<owl:onProperty rdf:resource=“#现役球员"/>
<owl:cardinality rdf:datatype="&xsd;int">12</owl:cardinality>
</owl:Restriction>
</rdfs:subClassOf>
</owl:Class>
11 其他OWL建模原语(Primitives)
12 OWL 小结
OWL是RDF的扩展,提供了更广泛的定义RDFS词汇的功能,可以定义词汇之间的关系、类与类间的关系,属性与属性间的关系。。
1.4 规则与推理
1 RIF(Rule Interchange Format)规则
是W3C定义的一套针对规则的抽象语言,与OWL兼容,可结合OWL公理进行推理
RIF规则是一个文档,其中有多个组,每个组是多条规则的合取,单条规则往往包含“如果…那么”
2 RIF 统一可扩展的语言族
规则语言分为两类:
声明性类:一阶逻辑和子集
生产课程:计算机语言说明
3 SPARQL 是一套针对RDF数据的查询语言;
SPARQL可对任何RDF三元组进行筛选;
4 语义网挑战:
是一个非常雄心勃勃的宏观概念;
当前的语义网革命不是科学的革命性突破,而主要是工程挑战。标准化、规模化和用户交互都是语义网技术面临的挑战。
2. 知识图谱中的知识表示
2.1 DBpedia知识表示
1 起源于Google,除Google之外,很多机构有自己的知识图谱:
对学术界开放的: Freebase、 YAGO、 DBPedia、 Wikedata、 ConceptNet
百度之心、搜狗智粗坊、阿里藏经阁
这些知识图谱的建模大致遵循语义网的层次结构
除XML之外,也用大量其他存储格式,如: Turtle/NTriples/JSON
都使用图结构进行表示,均可视为RDF相似的三元组进行抽象
可以搜索
一般不提供规则和推理算法
2 DBPedia是众包社区,从维基百科中尽可能多地抽取信息,构建一个开放领域知识图谱,并以Linked Data形式公开出来,用SprQL客户端远程访问。
3 DBPedia本体数据以OWL文档形式保存,可以单独下载;
尽可能与其他知识库对齐并提供映射数据
多语言知识图谱,保持一致的本体结构
4 DBPedia 本体的头部
类别列表
:llhttp://mappings.dbpedia.org/server/ontology/classes/#ConcentrationCamphttp://mappings.dbpedia.org/server/ontology/classes/#ConcentrationCamp类别:
Planet类的属性列表
Planet类属性
个人:
2.2 Wikidata 和 Freebase的知识表示
1 整个Freebase 数据库是一张大图,每个节点都使用type/object定义,边使用 type/link 定义。每个条目称之为一个 Topic,一个 Topic 有很多属性。比如对于某一个人,可能有姓名、性别、出生日期、个人经历、职业等属性。在 Freebase 中,每一个实体都有一个编号,称为 MID
2 Freebase 中也并不局限于三元组原子知识表示,它创造了一个虚拟的节点结构,被称为组合值类型(Compound Value Type,CVT),对多元关系进行表示
对于“姚明”的婚配情况信息的记录“fb:m.0j688yq”就是一个类型为“fb:people.marriage”的 CVT 对象
3 例子(没有使用XML语言形式)
2.3 知识图谱的多元关系表示方法
1 RDF用三元形式表示二元关系,现实中的复杂情形都需要转换为对应的二元关系,才能有知识图谱的表示
将一元关系转换为二元关系:
例如“牛顿终生未婚”这样的事实就没有第三元可言。知识库可以将三元组第三元置空,存储为形如“(牛顿,配偶,null)”的形式。
方法:
WikiData 通过将值节点的对应属性值设置为“novalue”来实现。
在描述逻辑中,“底层概念⊥”也可以用来将属性值表示为一个空集。
多重关系:
方法:
RDF Reification将某种语法归为一种语义现象,再用其他语法来描述这个对象
YAGO2 为每个三元组都补充了时空信息形成五元组,就是使用RDF Reification 的方法;
针对时间信息,YAGO2 定义了occursSince和occursUntil两个特殊谓词表示时间的起止,若二者相同则表示一个具体时间点;
针对空间信息,YAGO2 定义了occursIn 谓词为三元组配置事实对应的地点。
Davidsonian方法
Davidson 也引入了虚拟节点,并将其称为事件(event),每个事件可具有任意多种属性,因此也能包括N 元方法
3.分布式知识表示
3.1 分布式表示概述
1 知识库是一个有向图
多关系数据、节点、边、关系事实(head, relational, tail)
2 知识图谱: 符号主义典型代表
分布式表示:连接主义的典型代表
在自然语言处理和知识图谱中使用数值来表示词、实体、概念及其关系,通过数值进行语义计算和知识推理。
3 特征工程: 数据预处理 — 特征提取 — 特征抽取(分部进行)
特征学习(Representation Learning)数据预处理——特征提取——特征提取(综合表示)
4 词表示: 独热表示、分布式表示(低维稠密向量、潜在语义分析LSA、神经词嵌入(基于预测方式,基于计数方式(共现矩阵分解)))
3.2 知识表示学习方法
1 词表示学习 ——>知识表示学习
词表示学习:表示学习的词表现出明显的位移关系,相同的词经过线性运算后一致;
类比知识表示学习:
2 知识图谱的数值表示
将知识库的实体和关系表示为低维空间中的对象(向量)和操作(空间变换)
事实收集 -> 学习实体和关系的低维表示 -> 事实推理
表示学习:从原始数据中学习概念的潜在表示
3 分布式知识表示主要过程:
符号实体和关系在低维连续向量空间中表示,在最大程度上保留原始图结构的同时简化了计算。
表示向量空间中的实体和关系;
定义一个评分函数来衡量每个三元组持有的可能性
构建优化问题以学习实体和关系的低维连续向量表示。
4 打分函数:
位移距离模型(translational distance models): 基于位移假设,头尾实体的表示存在位移关系,基于头尾实体的位移与关系表示的距离的打分函数,来衡量三元组成立可能性;
模型:TRANSE
语义匹配模型(semantic matching models): 直接利用头实体、关系和尾实体的数值表示进行计算,采用相似度打分函数来衡量三元组成立可能性。
模型:RESCALe及其变种
模型训练:
封闭世界假设(Closed World Assumption,CWA) 但凡未在知识图谱中出现的事实都是错误的;
开放世界假设:知识图谱只包括真实的事实,那些没有出现在其中的要么是假的,要么是缺失的。
3.3 典型分布式知识表示方法及其实现
1 基于位移模型详解: Transe
表示方法:用向量表示“头尾”实体和关系;
关系事实 = (head, relation, tail) ,简写为(ℎ,𝑟,𝑡) ,对应的向量表示为(𝒉,𝒓,𝒕)
评分功能:
对于真实的事实三元组(ℎ,𝑟,𝑡),𝒉+𝒓=𝒕是必需的;对于假三元组,不满足此条件。
目标函数:
让正例分数小于负例分数,至少更小𝛾。
负样本生成策略:
随机选择实体集中的实体ℎ′(或𝑡′),替换(ℎ,𝑟,𝑡)中的ℎ(或𝑡),生成负样本(ℎ′,𝑟,𝑡)或(ℎ,𝑟,𝑡′)
参考:国立科技大学-知识图谱课件
版权声明:本文为博主努力学习中….原创文章,版权归属原作者,如果侵权,请联系我们删除!
原文链接:https://blog.csdn.net/qq_40671063/article/details/123398595