知识应用难点在于知识推理,知识推理的难点在于知识表示。
根据复杂性从弱到强:命题逻辑(propositional logic)、一阶谓词逻辑、高阶逻辑。
定义了具有真假值的原子命题,并可通过与( ⋀ \bigwedge ⋀)、或( ⋁ \bigvee ⋁)、非(﹁)、蕴含( ⇒ \Rightarrow ⇒)、当且仅当( ⇔ \Leftrightarrow ⇔)等,将多个原子命题组合成复合命题,而推理过程则根据逻辑连接词的真值表进行推导。
X | Y | ﹁X | X ⋀ \bigwedge ⋀Y | X ⋁ \bigvee ⋁Y | X ⇒ \Rightarrow ⇒Y | X ⇔ \Leftrightarrow ⇔Y |
---|---|---|---|---|---|---|
true | true | false | true | true | true | true |
false | true | true | false | true | true | false |
true | false | false | false | true | false | false |
false | false | true | false | false | true | true |
只要推论是真,命题就一定为真;推论为假的时候,看假设是否与推论的真值一致,一致的话,命题为真,不一致的话,命题为假。
谓词逻辑分为一阶谓词逻辑和高阶谓词逻辑,主要区别:是否可以量化谓词或集合。
一阶谓词逻辑(一阶逻辑):
高阶逻辑:
该模型认为人类的记忆是由概念间的联系(语义关系)实现的,其最基本的语义单元为语义基元,用三元组形式表示:<节点1,关系,节点2>
。
框架是一种描述所讨论对象(事物、事件、概念等)属性和行为的数据结构。
框架1:<灾难>
槽1:<时间>
槽2:<地点>
槽3:<伤亡>
侧面3.1:<死亡人数>
侧面3.2:<失踪人数>
槽4:<损失>
侧面4.1:<直接经济损失>
侧面4.2:<间接经济损失>
槽5:<救援>
侧面5.1:<救援部门>
侧面5.2:<救援时间>
侧面5.3:<捐赠情况>
脚本通过一系列的原子动作来表示事物的基本行为,按照时间顺序描述事物的发生,描述动态的过程。脚本表示的知识有确定的时间或因果顺序,必须是前一个动作完成后才会触发下一个动作的开始。
特点:表示方法能力有限,因其能够描述有一定时序关系的槽信息,在AI和NLP中得以应用,eg:智能对话系统,如酒店预订、机票预订等。
在拓扑结构上可看作一个图或网络。
<影星>
<中文名>甄子丹中文名>
<外文名>Donnie Yen外文名>
<国籍>中国国籍>
<民族>汉民族>
<身高>175cm身高>
<出生>
<出生地>广州市出生地>
<出生日期>1963年7月27日出生日期>
出生>
<毕业院校>西安赵长军武术学院 毕业院校>
影星>
与框架相比:不需要对具有多个侧面的属性定义另一个框架,而是直接定义属性和属性关系建立它们之间的联系(eg:定义属性“出生”和属性“出生地”并建立一个“部分-整体”的关系链接“出生”和“出生地”)。
常用:XML(可扩展标记语言,eXtensible Markup Language)、RDF(资源描述框架,Resource Description Framework)和OWL(网络本体语言,Web Ontology Language)
提出:为了解决动态信息的显示问题,以及HTML在数据表示和描述方面混乱的问题而提出的技术标准。但其通用性受到限制(不同时期或属于不同组织的语义知识需要相互兼容)。
一个标准的XML文档需包含一个 序言和若干具体内容,也可包含一个尾注。
<人物>
<名字>马克斯·普朗克名字>
<国籍>德国国籍>
<专业>物理学家专业>
...
人物>
标签是标准通用标记语言的文档类型声明,表示引用外部文件来定义本地文档中出现的名字,url.dtd
标记了要引用文档的路径。RDF假设任何复杂的语义都可以通过若干个三元组的组合来表达,并定义这种三元组的形式为“对象 — 属性 — 值”
或“主语 — 谓语 — 宾语”
,其中需要公开或者通用的资源,都会绑定一个可识别的通用资源标识符(universal resource identifier, URI)
示例:
"Max Planck"@en
<马克斯·普朗克,国籍,德国>
当需要表示的参数超过两个,常通过RDF定义的一组二元谓词来表示,但增加了复杂性,也加大了后续处理的难度。示例如下:
马克斯·普朗克1919年获得诺贝尔奖。
转换为 ==》
<获奖信息87,人物,马克斯·普朗克>
<获奖信息87,时间,1919年>
<获奖信息87,名称,诺贝尔奖>
查询语言:SPARQL
RDF Schema(RDFs)是一种用于描述RDF的轻量级语言,主要关注类别和属性的层次结构以及继承关系等,可限制子类和属性层次及其属性的定义域、值域,便于不同知识内容的交互和融合。
OWL建立在RDF和RDFs上,主要包括头部和主体两部分。
使用命名空间中预定义的标签来形成本体的头部,其中预定义命名空间包括 xmlns:owl
、xmlns:rdf
、xmlns:rdfs
、xmlns:xsd
等等。示例:物理学家
本体可用如下头部表示
<owl:Ontology rdf:about="">
<rdfs:comment>一个本体的例子rdfs:comment>
<rdfs:label>物理学家本体rdfs:label>
owl:Ontology>
表示本模块描述当前本体
用于描述本体的类别、实例、属性之间相互关联的部分。示例如下,包括但不限于此。
owl:ObjectProperty
表示对象类型属性,rdfs:domain
和rdfs:range
表示该属性的定义域和值域。
owl:subProperty
表示记录属性间的从属关系。<owl:Class rdf:ID="物理学家">
<rdfs:subClassOf rdf:resource="科学家"/>
<rdfs:label xml:lang="en">physicistrdfs:label>
<rdfs:label xml:lang="zh">物理学家rdfs:label>
...
owl:Class>
<owl:ObjectProperty rdf:ID="国籍">
<rdfs:domain rdf:resource="人物"/>
<rdfs:range rdf:resource="xsd:string"/>
...
owl:ObjectProperty>
owl:TransitiveProperty
owl:SymmetricProperty
owl:FunctionalProperty
owl:inverseOf
owl:Restriction
owl:equivalentClass
和 owl:equivalentProperty
示例:只有获得过诺贝尔奖的物理学家才被称为诺贝尔物理学家
<owl:Class rdf:about="诺贝尔物理学家">
<rdfs:subClassOf rdf:resource="物理学家"/>
<owl:Restriction>
<owl:onProperty rdf:resource="获奖名称"/>
<owl:allValuesFrom rdf:resource="诺贝尔奖"/>
owl:Restriction>
owl:Class>
在语义网络中,对节点和边的描述没有标准,用户按需自行定义,会导致:
语义网基于W3C制定的标准,利用统一的形式对知识进行描述和关联,利于知识的共享和利用。
语义网通过语义具化(Semantic Grounding),让每个概念(实体、类别、关系、事件等)都有一个唯一的标识符。
待补充
语义计算
特征工程
1957年,Firth对分布假说进行进一步阐述和明确:词的语义由上下文决定。
词空间模型(Word Space Model)==》词的分布表示(Distributional Representation)
基于张量分解
基于能量函数