时间:2024-05-04
唐忠 刘珊珊 刘华阳 李大舟
(沈阳化工大学计算机科学与技术学院 辽宁省沈阳市 110142)
语义分析是自然语言理解的一个重要研究内容,目的是将自然语言转换为计算机能够处理的逻辑形式,并使计算机能够理解自然语言的意义。
初期的语义分析,利用GeoQuery 等数据库中预定义的谓词或本体等作为逻辑表示,通过手工标记的数据来训练,实现语句到逻辑形式的转换[1]。针对转换过程中过少的谓词和繁重手工标记,近年来通过半监督、远程监督等方法将语义分析扩展到如Freebase、Yago2 和Wikipedia 等更大的知识库和Web 文本中[2],并采用本体匹配[3]、Schema 匹配[4]、中间结构[5]、语句结构重写[6]和双重学习[7]等方法将语句匹配到谓词公式,提高分析的准确度。由于这些研究中预先定义的谓词数量有限,而且注重的是语句到谓词公式的转换,没有深入到语义的层面,所以并没有真正地理解句子的语义。
句子的语义是由组成句子词语的意义及其相互关系体现的。由于汉语词语通常有多个释义,词类和语法成分之间也没有一一对应关系,仅凭语法结判定句子的语义会产生歧义。
语义是现实世界中的事物在头脑中所产生的概念。人在理解自然语言语句的语义时,除了分析句子中的字词和语法结构,还会利用头脑中有关事物的常识和知识。目前虽然已经建立了若干类型的知识库,但它们在处理语义联系方面还都存在一定的局限。本文将根据自然语言语义的本质,依据人的认知概念建立语义关系知识库,指导语义分析,使计算机更好地理解自然语言。
知识库是表达认知内容和进行语义分析的重要工具,目前的语义分析研究中大都采用以百科知识为主的在线语义知识库。其中,Freebase 知识库采用结构化数据的形式,分为Domain、Type 和Topic 三层,以词条的形式描述本体的主要特征,包括实体、关系和性质等[8]。YAGO 从Wikipedia 的类别体系和信息框中抽取事实,然后和WordNet 的语义关系对应串联在一起,构成了大量的实体和关系[9]。DBpedia 也从维基百科页面的信息框中抽取事实,并使用信息框里面的词汇作为语义关系名。
此外,还有基于词典的知识库。WordNet 使用同义词集合来描述词汇,每个同义词集合代表一个基本的语义概念。同义词集在语义上的联系还包括:上下位、整体部分、反义和蕴涵关系等[10]。Verbnet 是以动词为中心的词汇知识库,它定义动词的句法框架、论旨角色和选择限制,体现了动词句法和语义的互动关系,具有相同句法行为的动词往往属于同一个语义类。FrameNet 是一种基于框架语义学的词汇知识库,适合描述情景型知识。框架由框架名、框架描述、框架元素和所包含的词组成。语义关系通过框架与词之间、框架元素之间和框架之间的关系来体现[11]。ConceptNet 是一个大型的常识性语义网络,用不同类型的链接描述物体、事件以及人物之间的关系。语义知识网络通过大量的有向线段将节点连接在一起,从而构成了语义关系的本体知识系统[12]。知网(How Net)是一种中文语义知识库,用于描述汉语词语所代表的概念,以及概念与概念之间、概念与其自身所具有的属性之间的关系。概念之间以及概念和属性之间的关系组成一个复杂的网状结构。
基于百科的知识库,以实体、本体等作为主体,通过预定义的属性和关系作为特定的谓词。这类知识库虽然将事物相关的内容组织在一起,但其预定义的谓词有限,覆盖程度不够,因此不能支持更广泛的语义分析。基于词典的知识库,以词条的形式来组织词汇,并通过同义、反义、上下位等关系来联系词语,但词条间缺乏语义联系,事物间的关联难以在知识库中体现,也无法进行全面的语义分析。
现实世界由各种事物构成,包括主观和客观的事物。每个事物具有各自不同的性质、特征、状态、行为等属性。事物间是相互联系、相互影响的。每个事物在一个特定的环境中都保持某种状态。在受到自身和外界某些因素的影响后,事物状态会发生变化,再影响其他事物,从而形成了世界的变化和发展。
认知概念就是现实世界中的事物在人头脑中的反映。我们在此建立模型(T, P, R, M, L)来表示认知概念。其中,T 为事物,P 为事物的属性状态等,R 为事物间的联系,M 为事物属性状态和联系的修饰,L 为事物变化发展的逻辑关系。认知模型用规范的关系结构表示认知世界,以下为认知模型中的主要关系类型:
性状关系:
联系关系:
逻辑关系:表示事物的发展变化及其因果关系和相互影响,由各种命题演算的联结词将性状和联系关系连接在一起,如
还有一种在主体关系之外,对性状和联系修饰的修饰关系:
自然语言的语义就是词语、句子中所表达的实际意义。从语义学角度来看,语义是现实世界中的事物在头脑中所产生的概念,反映的是客观事物及其属性、状态、联系和规律,以及心理、情感、思维和推理等主观活动,与所描述的世界具有一致性,即传统语义学所认为的“文字符号与世界的统一”,也即认知语言学所认为的“意义以特定的结构形式存在,与客观世界之间存在着映射关系”。
词是汉语中最小的最小语义单位。事物及其性质、状态、行为等属性是世界在人们头脑中形成的最基本概念,词的作用就是符号化这些基本的认知概念。任一个事物以及每个事物各种属性的概念在自然语言中都有对应的词语表示,不同类型的概念用不同的词类来表示。
句子是由词或短语构成的语言的基本运用单位,表达一个完整的意思,可以分为单句和复句。句子表达的语义是认知概念中的事实、判断和过程等,还描述事物之间相互影响、联系和事物的发展、变化及其因果关系和过程。
句子的语义通过其中词语、短语的语义和它们之间的语法关系来体现。句子主语表示陈述的对象。谓语是用来陈述主语的,说明主语的性状、行为等。宾语是动词性成分所涉及的人或事物。定语是用来修饰、限定、说明人或事物的性状、数量、领属等。状语用来修饰、限制动词或形容词,表示状态、方式、时间、处所、条件、对象、肯定、否定、范围、程度或语气等。补语是动词或形容词后起补充说明作用的成分,补充说明情况、结果、程度、趋向、情态、时间、处所、数量、性状等。汉语复句有多种,其中假设、因果、条件、目的复句反映了句子间的逻辑关系。
语句也可以通过相应的模型来表示其结构。如最基本主谓单句的语义模型可以表示为:
主谓结构:< s, p >∈S × P,
主谓宾结构:< s, p, o >∈S × P ×O
其中,S、P、O 分别为能做主语、谓语和宾语的词或词组类型。
自然语言与认知概念存在着构成元素和组织结构上的对应和一致,因此可以描述和表达对现实世界的认知。然而,由于自然语言中的一些词语具有多种词性和释义,句子的语法也有很多灵活的特性,同一个词可以充当不同的语法成分,同一语法成分可以由不同词性的词语和词组充当,因此在根据词语词性和语法规则分析句子语义的时候,就常常会出现歧义。例如,“打伞”、“打水”、“打墙”,“打”在不同的宾语搭配中,具有不同的释义;“他身体好”和“他明天来”,这两句话都是“代词+名词+形容词”构成的句子,但最终的语法结构却不同,表达语义的关系也不同。
根据汉语词语和语法结构来确定句子的语义常常会出歧义,这也会影响自然语言处理的语义分析效果。人在理解句子语义的时候,除了分析句子的组成词语和语法结构外,还会根据词语间的语义关系来理解句子的实际含义。因此,我们基于认知概念,根据事物与其行为、性状、属性以及其他事物间的固有联系,建立结构化的语义关系库,并由此确定词语间的语义联系,解决语义分析过程中词语和句子结构的歧义问题。
语义关系库存储着人的认知概念,反映现实世界中的所有事物,以及事物的各种性质、特征、状态、行为等属性和事物间的相互联系、相互影响和发展变化。语义关系库的结构也来源于认知概念模型。语义关系库由语义元素组成,语义元素之间有相应的语义关系。语义元素和语义关系对应着词语和词语之间的语义联系,可以用来指导语句的语义分析。
(1)语义元素是语义关系库中最基本的语义单位。在认知概念的中,它对应着一个事物或其属性、行为;在自然语言中它就是一个有明确语义的词语。
语义元素一般由汉语中的实词充当,即名词、动词、形容词等。数词、量词和代词可以转换为所指代的名词。副词有一定的实词特性,修饰事物的性状和行为,也可以作为语义元素。介词虽然是虚词,但它组成的介词短语表达具体的意义,也可以构成语义元素。
(2)语义集由相同类型或共同属性的语义元素构成,最顶层的语义集与认知模型的组成是一致的,包括:事物集T、属性状态集P、事物间联系集R、事物属性状态和联系的修饰集M 等。各种语义集下还可以包含不同层次的子集和实例。
(3)语义元素有唯一的词性和释义。如果一个词具有多个释义,分别把它们看作是不同的语义元素。语义元素的释义由词典给出,有如下方式:①同义释义,语义由同义词解释,如“学”作为的动词释义之一为“学习”;②近义释义,语义由几个近义词组合解释,如“欢畅”的释义为“高兴,痛快”; ③细化释义:对语义进行详细的描述,如“学舌”的释义为“模仿别人说话”;④说明释义:给词语以属性、能力、类属组成等方面的描述,如“马”的释义为“哺乳动物,头小,面部长……”。
语义关系,就是语义元素按一定顺序关联在一起,表达认知概念中一个正确的语义。如“鸟—飞翔”表达鸟的动作,是一个语义关系。从认知的角度看,语义关系表示了事物及其性状行为、发展变化和相互联系,是对现实世界的描述。从语言的角度看,语义关系是词语的搭配组合,形成短语或简单语句,表达一定的意义。基本的语义关系主要有:
(1)性状关系:对应认知模型中的性状关系或汉语中的主谓结构,语义上表示事物的性质、状态、行为等。表示为Rp={
(2)联系关系:对应认知模型中的联系关系或汉语中的主谓宾结构,表示事物的动作和涉及的对象。表示为Rr= {
(3)修饰关系:对应认知模型中的修饰关系,汉语中的状谓和谓补结构,是对谓语成分的修饰和补充说明;表示为Rm= {
复合语义元素,即语义元素本身就是一个基本语义关系。复合语义元素及其构成的语义关系与汉语的复杂语法结构对应,例如:
(1)复合事物元素:即事物语义元素本身是一个语义关系,它对应的性状语义关系的形式为{<
(2)复合性状或联系元素,即性状或联系语义元素是一个修饰语义关系,它对应的联系语义关系的形式为Rr= {
(1)层次构成。语义元素通过语义关系相互关联,形成一种有层次的网状结构。联系语义元素“是”和“一种XX”构成事物间的类属关系,用B A 表示。“是”和“一个XX”构成事物间实例关系,即a∈A。联系语义元素“有”等构成事物间的领属关系,表示事物组成。
动词性联系元素也有类似的特性,通过细化和说明性释义构成层次关系,如“走”的释义是“人或鸟兽的脚交互向前移动”,表示“走”是一种具有特定属性的“移动”。
修饰元素可以根据其词语的语义,可以将它们归入时间、范围、程度、方式、频率以及肯定或者否定等类别。介词结构根据所关联词语的语义,可以确定它所表示的处所、时间、状态、方式、原因、目的、比较对象等类别。这些元素通过所属的类别构成相应的层次。
(2)语义继承。具有层次关系的语义元素,对应的语义关系有一定的关联性:下层元素继承上层的一些语义关系,同时可以修改上层原有的语义关系并增加新的语义关系。从认知概念的角度,就是下层事物继承上层的一些通用属性和行为等。类属关系的语义继承表示如下:
∈ T ×P ∧B A ⇒ ∈ T ×P
∈T × R ×T ∧B A ⇒ ∈T × R ×T
语义关系之间具有认知概念中的逻辑关系,表示事物发展变化的因果关系和相互影响:
如:<天气,凉了> → <我,换上,棉衣> → <我,暖和了>,<孩子们,回来了> → <屋里,又热闹了>。
在具有继承关系的语义元素间,上层元素的逻辑关系同样可以被下层所继承。
语义关系来源于对现实世界的认知概念,反映了事物的性状、行为、属性和相互联系,可以用来指导对语句语义的分析。
(1)语义元素主要来自于词典,词典中任何一个词条的不同释义都对应一个语义元素。语义元素还来自于词典以外的常识、百科或专业知识等各种文字材料,任何一个有语义的词语,都有语义元素和它对应。
(2)语义关系的来源与语义元素相同,在任何文字材料中获取的词语间的关联,如果具有符合认知概念的意义,都可以建立对应的语义关系。建立语义关系首先要分析语句的语法结构,然后根据认知概念模型建立,以保证语义关系的规范。特别复杂和有问题的语句,语义关系需要手工和有监督地建立。
(1)对汉语句子进行分词,得出组成句子的词语及其可能的词性和释义;
(2)根据分词结果,对句子进行词法和语法分析,得出可能的语法结构;
(3)对句子进行语法变换,按语义替换代词、补充省略成分、转换特殊的语法结构;
(4)在语义关系库中查询得到句子中词语对应的语义元素;(5)匹配和确定语义元素间的语义关系,并根据语义关系得出句子结构。
词语所对应的语义元素在语义关系库中有直接的语义关系。例如,“人”和“呼吸”是两个语义元素,它们在语义关系库中有语义关系。如果有“人呼吸”这样的句子或词组,“人”和“呼吸”可以匹配到直接的语义关系。
两个语义元素没有直接的语义关系,而是通过其他语义元素或语义关系间接地关联。
一种方式是通过语义元素间纵向的继承关系关联。如 <人,吃,食物>是基本的语义关系;“他吃西瓜”中“他”是人的实例,西瓜是食物的一种;通过实例和类属之间的继承,可以获取间接语义关系<他,吃,西瓜>。
再有一种是通过隐含的属性元素获得语义关系。例如,“今天星期一”,在语义关系库中,“今天”和“星期一”分别是“天”和“星期”的实例,而“星期”是“天”的属性,所以“今天”和“星期一”是事物和属性值的关系,由判断联系关系连接,句子的语义是“今天的星期是星期一”。又如,“我们北京见”中,“我们”和“见”是一个行为语义关系;“北京”按照其类属关系是一个地点,可以作为动词的属性,与“见”构成修饰关系。
一些通过语法结构关联的词语间并没有语义关系,而是特定的语法形式和使用习惯。其语义人们可以理解,但依此进行语义分析就会出错。这些语义元素间的实际语义关系要根据潜在的语义扩展获得,并且可能会改变句子原有的语法结构。例如,“我们吃食堂”,“吃”和“食堂”间不是动宾语义关系,“食堂”是“机关、团体中供应本单位成员吃饭的地方”,所以句子的语义为“我们吃在食堂”。再如,“写”的语义是“用笔在纸上或其他东西上做字”,那么“他写字”自然包含了“用笔”的语义。还有,“玻璃擦了”,根据“玻璃”和“擦”的语义关系,句子结构应该是“人擦玻璃了”。
我们利用词典、中小学教材和百科常识知识建立了一些小型、限定领域的语义关系库,定义语义元素和语义关系,并对相关汉语语句中的各种语法结构进行分析,以验证基于语义关系的语言分析和理解能力。我们建立的语义关系库包括“医生”、“学生”等领域的小型语义关系库和小学语文、初中几何等学科中的基本语义关系库。在这些知识库中,我们共建立了300 多个语义元素,500 多条语义关系,200 多条逻辑关系。下面是语义关系库中的一些实例:
语义元素的简要示例:
医生:名词,掌握医药知识、以治病为业的人
病人:名词,生病的人
三角形:由不在同一条直线上的三条线段首尾顺次相接所构成的图形
语义关系的简要示例:
<医生,是一种,人>、<医生,掌握,医药知识>、<医生,治疗,疾病>
<病人,是一种,人)、<病人,发生,疾病>
<△ABC 的边,是,{线段AB,BC,CA}>
逻辑关系的简要示例
<病人,发生,疾病>→<病人,去,医院>→<医生,治疗,疾病>→<病人,痊愈>
<两个三角形三边,对应相等>→<两个三角形,全等>
根据语义关系库中的定义,可以进行语句结构和语义的分析。比如根据语义关系“<医生,治疗,疾病>”,得出“治疗”分别和“医生”和“疾病”关联,因此在分析语句“李明治疗湿疹”时,除了匹配出句子的结构和语义外,我们还可以得出:“李明是医生”、“湿疹是疾病”这样的语义。而语句“李明治疗有效”则不符合这样的语义关系,“有效”不是“疾病”,该句子是另一种语法结构。
(1)汉语的词语及其对应的语法成分可以通过语义元素表示出来:构成主语和宾语的词语和词组表示句子所陈述的事物和事件,是语义关系库中的事物语义元素。动词和形容词等作为谓语,在语义关系库中作为表示性质、状态、行为、动作等的语义元素。定语限定事物的数量、时间、处所、领属等属性,或描写性质、状态、特征、用途、质料、职业等方面,可以作为表示事物性状的语义元素。状语和补语成分作为谓语成分的修饰语义元素。
(2)不同的语义元素根据语义可以联结成相应的语义关系,语义关系与汉语词语间的语法结构对应,因而可以根据语义关系确定句子的语法结构。
(3)在进行语义分析时,利用这种对应关系也可以方便地获取谓词和客体,从而将句子转换成谓词公式。这样可以将语义分析扩展到更大更全面的领域当中。
(4)一些特殊的汉语句式和语法结构,还可以通过语义关系分析、确定它的真实语义。例如,宾语包括受事、施事、结果、工具、处所、目的原因、存现和说明等类型,可以通过和谓语部分的语义关系得出实际的语义。又如,名词性谓语、主谓谓语与主语的语义元素间没有直接的语义关系,可以在语义关系库中搜索匹配,分别得到它们的间接语义关系和领属、支配语义关系。再如,一般动词、形容词、一般名词和动宾、主谓、谓补等词组作状语时,与谓语间没有直接甚至间接的语义关系,可以根据状语所表示的状态、方式、时间、处所、条件、对象、肯定、否定、范围、程度或语气等方面的语义,补充缺失的成分,然后再确定其语义关系。如“发展地看”实际语义为“用发展的方式看”,即动词作方式状语。
我们利用所建立的小型语义关系库,共计对上述的领域范围内的800 多条语句进行了语义分析。我们用转换率来评价谓词转换结果,即:
转换率=正确转换的语法成分个数/句子中的语法成分总数。
直接通过语义关系来分析确定汉语句子的语法结构时,转换率为80%左右。而与语法规则结合,句子的转换率可以达到95%以上。
不同领域语义关系库的分析结果也不尽相同。小学语文非诗词类课文语句的转换率在70%左右。这是因为课文的语言生动形象,有大量拟人童话、比喻等修辞,还有隐含的知识、寓意以及个人感受等,语义知识库中缺少对应的语义关系。初中几何语句的转换率接近90%,这是因为几何语言规范、清楚,语法结构完整,问题是缺少常识知识。而“医生”等特定领域中语句的转换率也比较高,在90%以上,但需要有预先定义好的语义元素和语义关系,否则转换率就会明显下降。
实例分析结果表明,使用基于认知概念的语义关系,可以比较有效地获得有歧义句子的语法结构和语法成分、理解句子语义。
与现有的知识库相比,语义关系库基于认知概念建立了一种更为规范和结构化的语义和知识体系。语义关系库中既包括了静态概念和属性等不同类型的语义元素,也包括了动作、联系、过程、事件等动态和情景式的语义关系,具有更完善的表达能力,同时又更贴近语法结构,便于计算机处理。另外,语义关系库中的语义元素通过释义和继承关系,建立和纵向的层次结构和横向的关联结构,构建起一个与认知概念对应的知识体系。
(1)汉语中有大量的省略用法,有的是为了避免语言表达的冗余,有的则是语言的特点,必须通过上下文和语境来确定语义元素。
(2)有的语法成分间的语义关系比较特殊,比如动词和名词做状语和定语,这样的语义关系需要从更深度的语义角度来建立,甚至需要利用语用学的知识进行指导。
(3)语义关系库覆盖的知识不够全面。语义元素难以包括现实世界中无穷尽事物、事件的实例,需要根据相关知识和信息补入;语义元素对应语义关系也难以完善和全面,建立完整的语义关系需要大量的知识,并且是一个庞大的工程。
(4)语义关系库中,过程、活动、事件等只作为一种特殊的语义元素,虽然可以表示其相关属性和语义联系,但其具体过程、细节和组织还需要有完善的表示和支持。语义关系库中存储的只是认知世界的抽象概念性语义,对于具体事实、过程和事件的表示能力还不够。
语义关系库基于认知概念,以一种结构化和规范的方式表示现实世界的事物及其属性、行为、相互联系和影响,从认知角度建立了词语间的语义关联,能解决语义分析过程中的歧义问题,得到更准确的句子结构。这也是自然语言理解和语义分析的一个新思路。
然而汉语语法极为灵活,有些词语的搭配组合具有非常复杂的语义关系,修辞、成语、典故等语义以及人的主观思想的表示也非常困难。另外,如何将现实世界中对应的事物、事件都加入到语义库当中,如何有效地管理、查询这样一个庞大的知识库,都还需要进一步深入的研究。
我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!