Ch17 什么是意义?
四种常见的表示:
- 音位表示
- 形态表示
- 句法表示
- 意义表示
意义表示(meaning representation):通过形式化结构捕捉语言语段的意义。
意义表示语言(meaning representation language):指定意义表示的句法和语义框架。
语义分析(semantic analysis):创建意义表示,并将创建的意义表示指派给语言输入的过程。
四种常见的意义表示:
- 一阶逻辑(first-order logic)表示(Ref:Sec17.3)
- 语义网络(semantic network)表示(Ref:Sec17.5)
- 概念依存(conceptual dependency)图表示(Ref:Ch19)
- 基于框架(frame-based)的表示(Ref:Ch22)
上述表示基于相同的基础:一个意义表示由特定符号集合或者表达性词汇表上的组合结构组成。适当地安排这些符号,可以使这些符号结构对应到对象、对象的属性以及这些对象在特定状态下的关系。
看待上述表示的两个视角:
- 一方面看成是特定语言输入的意义表示
- 一方面看成是某个世界中事件状态的表示
本章的重点:句子字面意义的表示。
17.1 意义表示的计算要求
- 为什么需要意义?
- 意义表示能够将句子的意义与现实的世界连接建立起连接关系。
- 意义表示的最基本要求:即意义表示必须能够用于确定句子意义与我们所知道的世界之间的关系。也就是能够确定意义表示的真实性。
- 意义表示有什么用?
- 可验证能力:计算机系统需要具备的一种能力,是一种将意义表示所描述的情况与知识库中所建模的世界状态进行比较的能力。
- 输入的最终意义表示必须是无歧义的。
- 规范形式(canonical form)理论:表达同样事情的所有输入应该具有相同的意义表示。
- 优点:合理地为每个不同提问所蕴涵的命题指派同样的意义,从而保证系统简单。
- 缺点:使语义分析任务变得更加复杂。
- 实现:从不同单词的不同用法中选取相同的意义,就可以把同样的意义指派给包括这些单词的短语。
- 单词具有不同词义,不同单词的某些词义之间具有同义关系。
- 意义表示如何处理有歧义的情况?
- 基于上下文选取正确词义的过程称为词义排歧(word sense disambiguation),或称为词义标注,与词性标注相似。(Ref:Ch19,Ch20)
句子指派意义(Ref:Ch18)
- 基于上下文选取正确词义的过程称为词义排歧(word sense disambiguation),或称为词义标注,与词性标注相似。(Ref:Ch19,Ch20)
17.1.4 推理与变量
推理:计算机系统根据输入的意义表示以及存储的背景知识做出可靠结论的能力。
即使一些命题在知识库中没有显式的表示,具有推理能力的系统也能通过基于当前已知命题进行逻辑推导的方式对其真假做出判断。
推理过程中需要具备处理变量的能力,从而满足处理语言输入不确定性提及的需要。
17.1.5 表达能力
表达能力:一个意义表示框架应该具备足够的表达能力来处理各种广泛的题材,能够充分地表达任何有意义的自然语言语段的意义。(Ref:17.3节将介绍如何使用一阶逻辑来表达意义)
17.2 模型论语义学
模型:是一种形式化结构,用于代表世界事件的特定状态。使用特定意义表示语言的表达式能够被系统地映射为该模型的元素。模型能够表示事物、事物的属性以及事物间关系。
模型包括:
- 域:需要表示的应用或事件状态中的事物的集合。
- 属性:事物的属性的集合。
- 关系:事物间的关系就是域元素的有序列表集合或“元组”(tuple)集合,这些列表或元组中的域元素都参与了对应关系。属性和关系的表示方法是一种外延式的方法。
例子:P462 图17.2
意义表示的词汇:
- 非逻辑词汇(non-logical vocabulary):是开放的名称集合,代表事物、属性以及关系。在各种(意义表示)方案中基于谓词、结点、链接标记或框架槽标记等形式实现。
- 逻辑词汇(logical vocabulary):是封闭集合,包含符号、运算符、量词、链接等。在意义表示语言中,提供了对表达进行组合的形式化手段。
指示(denotation):非逻辑词汇中的每个元素在模型中的固定且定义明确的对应部分。
解释(interpretation):能够将意义表示中的非逻辑词映射到模型中恰当的所指的函数。
真值条件语义学(truth-conditional semantics):意义表示中针对约定连接运算符的处理。以组成部分的意义(基于模型参照)及通过参照真值表得到的运算符意义为依据,确定复杂表达式真值的方法。
17.3 一阶逻辑
一阶逻辑(First-Order Logic,FOL)是一种灵活方便、易于理解、可计算处理的知识表示方法。基于模型论语义学,满足可验证性、推理和表达能力的计算基础。
17.3.1 一阶逻辑的基础
一阶逻辑基础项(表示事物的一种手段):
- 常量:描述世界的特定事物。
- 函数:相当于英语中用所属格表示的概念。
- 变量:使系统具备不指向任何特定已经命名的事物的情况下对事物做出判断并进行推断的能力。
- 对匿名事物进行论断的能力
- 对特定未知事物进行论断
- 对某个任意世界中的一切事物进行论断
- 对匿名事物进行论断的能力
实现组合表示的三种基础能力:
- 基于引用事物的能力
- 对事物的事实做出论断的能力
- 把事物相互联系的能力
通过逻辑连词把更大的组合表示结合在一起。
17.3.2 变量 和 量词
变量的两种用法:
- 引用特定的匿名事物(存在量词),必须保证至少有一个替换满足句子为真。
- 引用一个集合中的全部事物(全称量词),必须保证所有可能的替换都满足句子为真。
17.3.3 λ表示法
λ 表示法:提供一种从具体的FOL公式进行抽象的方法,特别适合语义分析。λ表示法扩充了FOL句法。
λ 化简(λ-reduction):一种处理方式,通过将 λ 表达式用于逻辑项时生成新的FOL表达式,新的FOL表达式中的形参变量可以由指定的项来绑定。
柯里化(currying):将多论元谓词转换为一系列单论元谓词的技术。
当在分析树中一个谓词的论元并不都作为谓词的子结点出现时, λ 符号提供了一种增量式的收集一个谓词论元的方法。
17.3.4 一阶逻辑的语义
一阶逻辑(FOL)知识库中的各种事物、属性以及关系的意义通过它们与知识库所建模外界世界中的事物、性质和关系之间的对应关系获得。
对于包含逻辑连词的公式,可以把公式中的成分意义与它们所包含的逻辑连词的意义结合起来,从而解释整个公式的意义。
17.3.5 推理
意义表示语言必须支持推理(inference)或推论。也就是给知识库增加可靠的新命题,或者确定没有包含在知识库中的命题的真假的能力。
取式推理(modus ponens):FOL提供的被最广泛实现的推论方法。如果蕴涵规则左手边为真,那么这个规则的右手边也为真。左手边为前提,右手边为结论。(Ref:取式推理的应用在Ch21)
取式推理的两种典型应用方式:
- 正向链(forward chaining):当一个单独的事实加到知识库中的时候,取式推理用这种事实来激发所有可以应用的蕴涵规则。优点:在需要时,有关事实已经表示在知识库中;缺点:所引用或者存储的事实可能永远不被使用。
- 反向链(backward chaining):取式推理按照相反的方向来证明特定的命题(亦称为查询)。首先,根据查询是否已经存储在知识库中来判定其是否为真;如果不在知识库中,那么就搜索在知识库中有没有可应用的蕴涵规则。
产生式系统(production system):在认知模型研究中被大量使用的正向链推理系统,该系统增加了额外的控制知识,用来决定哪些规则需要激发。
常见的推理方法介绍:
正向链:是一种可靠的推理方法。是非完备的推理方法。
反向链:是从查询到已知事实的推理方法。是可靠的推理方法,是非完备的推理方法。
向后推理:是从已知结果到未知前提的推理方法。不是一种可靠的推理方法。是一种经常使用、似是而非的推理形式。亦称为诱导法(abduction)或“溯因推理”。
归结法(resolution):是替换推理技术,是可靠而且完备的。但是计算代价高。
因此,大多数系统还是采用某种链式推理的形式,而把建设系统的主要工作放到用于支持推理的建模知识的开发上。
17.4 事件与状态的表示
事件和状态的表示构成了语言中所需要捕获的大部分语义信息。
状态是在一定时间段内保持不变的状况或属性;
事件则表示一些事务状态的改变。
事件表示方法:
- 意义假设(meaning postulates):
- 存在规模扩展性问题。
- 相同谓词:
- 做了太多的假设;
- 缺乏引用问题中特定事件的办法,无法将事件个体化。
- Davidsonian事件表示:增加事件变量作为任何事件表示的第一个论元。
- 要为每个谓词确定一组固定的语义角色,再借助额外的谓词捕获其他辅助的事实。
- Neo-Davidsonian事件表示:
- 对于给定的表层谓词,无须预先确定论元的具体数目,不管在输入中出现多少角色和填充项都可以连接到表层谓词上。
- 只要在输入中提到角色,不需要再对角色进行意义假设。
- 有密切联系的例子之间,只要使用逻辑连接就可以把它们联系起来,无须意义假设。
17.4.1 时间表示
时序逻辑(temporal logic):如何用一个有用的形式表示时间信息。
时态逻辑(tense logic):使用动词时态传达时间信息。(Ref:Ch22 时间表达式的表示与分析)
参照点:用于处理背景中隐藏着另外一个没有命名的事件。在简单时间处理方法中,时间流中的当前时刻等于说话的时间这个当前时刻作为事件发生时的参照点(在之前、在当时、在之后)。参照点的概念是与说话时间和事件时间分开的。
参照方法的时间来表示事件的时间。
17.4.2 体
体(aspect):涉及相关话题的一个聚类,包括一个事件是否结束,一个事件是否进行,一个事件是发生在一个时间点上还是在一个时间段上,是否世界上的某一个特定状态会由于这个事件的到来而发生。
事件的表示分为4个体:
- 静态体(Stative)表示:表示事件的参与者在一个给定时间点具有特定的属性,或者处于一个状态之中。即一个单独的时间点上的世界被捕捉的特定侧面。
- 行动体(Activity)表示:表示参与者所参与的事件,同时该事件没有特定的结束时间点。行动体的行动是发生在时间的某一个片段上。
- 终结体可能事件(telic eventualities):因为完成体表示与达成体表示的结果都导致特定状态,因此可以结合起来作为一类单独的体。
- 完成体(Accomplishment)表示:描写的事件有一个自然的结束点,并且导致特定的状态。事件是发生在某个时期之内,当期望状态达到的时候,事件就结束了。
- 达成体(Achievement)表示:以一个状态为结束,但是事件是立即发生的。
17.5 描述逻辑
意义表示方法:
- FOL方法:一阶逻辑方法。(Ref:Sec17.3)
- 语义网络(semantic networks):事物用图的结点表示,事物之间的关系用有名字的连接边来表示。
- 框架(frames)方法:也称为槽填充(slot-filler)表示法。在基于框架的系统中,事物用特征结构来表示(Ref:Ch15)或者用图来表示。特征叫做槽,槽的值或者填充值可以用原子值来表示,也可以用另一个嵌套的框架来表示。
以上这些方法表示的意义在原则上都可以转换为等价的FOL表示。
描述逻辑
描述逻辑是为了更好地理解和说明结构化网络表示的语义,也同时提供了适合于特定类型的领域建模的一种概念框架。描述逻辑是一个方法族,对应FOL的一个变化子集。对描述逻辑表达施加的各种限制都为了确保各种重要类型推论的可靠性。使用描述逻辑对某个应用领域进行建模时,着重表达类别、属于类别的个体和个体间的关系这些知识。
构成一个特定应用领域的类别或概念的集合,被称为专业术语(terminology)。
一个知识库中专业术语的部分被称为TBox;包含关系个体事实的部分被称为ABox。
专业术语被组织成名为本体知识体系(ontology)的层次结构,用于捕获类别之间包含与被包含的关系。
捕获术语间的层次关系的方法有两种:
- 直接声明类别之间的层次化关系;
- 为概念提供完整的定义,再通过定义来推导层次关系。
描述逻辑中的关系是典型的二元关系,通常被称为角色或角色关系。
逻辑推理
描述逻辑中的重点在于类别、关系以及个体,是逻辑推理的一个受限子集。
逻辑推理系统没有使用FOL允许的全套推理,而是关注两个紧密耦合的问题:
- 包含(subsumption):作为推理的一种形式,是基于专门术语中的事实声明两个概念间是否存在子集∕超集关系的一项决策任务。
- 实例检验(instance checking)决定一个个体是否是一个特定类别的成员,给定关系这个个体和这个类别的事实。
包含和实例检验隐含的推理机制不仅仅是对专门术语中包含关系的简单检验,而是必须使用专门术语的关系型声明来地推理,以得到适当的包含关系和成员关系。
一个基于基础包含推理的相关推理任务,是在给定专门术语类别事实的条件下获取专门术语的隐含层级结构(impli
hierarchy)。
实例检验是判定一个特定个体是否可以被分到一个特定类别的一项任务。
描述逻辑的主要实现技术是建立在可满足性的基础之上,并且依据于基于模型的语义。(Ref:Sec
17.2)
Web本体语言和语义网络
语义网络:是一种描述网络内部语义的方法。关键部分是对不同应用领域中本体知识的创建与开发。描述逻辑是语义网络开发的一部分。用来表示知识的意义表示语言就是Web本体语言(Web
Ontology Language,OWL),其本身包含了一种描述逻辑。
17.6 意义的具体化 与 情境表示方法
过程性语义模型:
- 意义即行动(meaning as action):话语被看成行动,话语的意义来自于话语导致的行为步骤。所有的语言使用都是激发听者行动程序的一种手段。
- 执行图式(executing schema)模型或X图式(x-schema)模型:事件语义的各个部分都是基于感知——行动过程的图式描述的。这个模型通过Petri网的概率自动机来表示事件在“体”方面的语义。
通过隐喻表示抽象概念,这些隐喻可以在以感知或行动基元为基础的概念间建立联系。
17.7 小结
- 形式化的意义表示(formal meaning representation)是计算语言学中意义表示的主要方法,用于捕捉与输入内容(语言)有关的意义。目的是实现语言到世界常识之间的映射。
- 意义表示语言(meaning representation language)是说明意义表示的语法和语义的框架。它的各种变体被广泛地应用于自然语言处理和人工智能。
- 意义表示需要能够支持语义处理的计算要求,
- 确定命题的真值
- 支持无歧义的表示(unambiguous representations)
- 表达变量(variables)
- 支持推理(inference)
- 充分的描述力(expressive)
- 人类语言使用特征来传达意义。表达谓词论元结构的能力是最为重要的特征。
- 一阶逻辑(First-Order Logic,FOL)是一种容易理解的、在计算上可循的意义表示语言。
- 一阶逻辑可以捕获语义表示的重要元素:状态和事件。
- 一阶逻辑可以表达语义网络和框架。
- 描述逻辑由完整的一阶逻辑中的子集构成,这个子集满足有用的、计算上可处理的要求。