I
I
摘 要
摘 要
当前,如何让计算机理解人类的自然语言,并运用人类的自然语言模拟语言 交际过程,实现“人机对话”,已经成为人工智能的一个重要研究领域——自然语 言处理。一旦计算机系统实现了人机对话、机器翻译、自动文摘,或能够抑扬顿 挫地、带有感情地朗读文章等语言信息处理功能,计算机屏幕前枯燥的气氛必然 会大大改变,计算机的应用环境将变得更加引人入胜。
问答系统是集自然语言处理、知识表示、信息检索于一体的研究课题,它建 立在文本检索的基础上,但又不同于传统的搜索引擎。传统的搜索引擎要求用户 输入一些关键字的组合,且对于用户提交的查询只能定位出文献,用户必须依靠 自己去筛选需要的有用信息;而问答系统允许用户以自然语言的形式输入一个问 句,最终返回给用户的也是自然语言形式的简短而准确的答案。目前,国外已有 很多科研机构参与了英文问答系统的研究,甚至已经有相对成熟的英文问答系统, 但是国内参与中文问答系统的研究不多,因为中文问答系统对相关领域的研究要 求更高,例如:中文词语之间没有空格;汉语的句法分析和语义理解更为困难等, 这些都造成了中文问答系统的发展缓慢。
本文正是对中文问答系统的一个探索,系统包括三个主要组成部分:问题处 理、信息检索和答案抽取。对于用户提交的问题,首先要掌握用户的提问意图, 对问题进行分类,同时确定答案需要满足的要求,并提取用户提问中的关键词及 其扩展。信息检索阶段的任务是:对系统已经读入的文章,首先进行文档预处理 并建立信息索引,然后用问题处理阶段提取出来的关键字及其扩展搜索出相关的 段落。由于问答系统需要返回的是简短的答案,所以要将信息检索模块搜索出来 的相关信息提交到答案抽取模块去提炼答案。答案抽取是问答系统最重要的部分, 在答案抽取部分,本文应用了建立话语结构树的方法和计算句子语义相似度的技 术,同时针对句中的事件是“抽改”类动词的情况进行了详细分析,以实现对涉 及实体间抽象关系改变后的自动问答。最后本文还介绍了整个基于自然语言处理 的问答系统的实现和试验结果及其评价与分析。 关键词:问答系统,信息检索,答案抽取,话语结构树
II
II
ABSTRACT
ABSTRACT
At present, how to make the computer understand the human natural language, and use the human natural language to simulate language-communication course, realize “man-machine dialogue”, has already become an important research field of artificial intelligence——Natural language processing. Once the computer system can realize some language information processing functions, such as man-machine dialogue, machine translation, automatic digest, or read aloud cadencedly and passionatly etc, the uninteresting atmosphere will be inevitably changed greatly in front of the screen of the computer, the applied environment of the computer will become more fascinating.
Question-answering system is a research topic which collecting natural language processing, knowledge expressing and information retrieving to one body. It establishes on the text retrieval foundation, but it is different from the traditional search engines. The traditional search engines request user input the combination of keywords, and then locate the literature for the inquiry of which the user submitted, users must depend on himself to filter the useful information that he needs; while question-answering systems enable users to input a question in natural languages, finally give users concise and accurate answers also in natural languages. Presently, many scientific research institutes have been investigated English question-answering systems, some mature English question-answering systems have been widely recognized, but few institutes are doing research on Chinese question-answering systems, for the Chinese question-answering system demands much higher to the correlation domain research request, for example, there is no blank space between Chinese words,Chinese syntax analysis and semantic understanding is more difficult, all of these have made the Chinese question-answering systems development slowly.
This article is an exploration to Chinese question-answering system. This system is composed of three primary aspects: problem processing, information retrieving and answer extracting.When user submit a question in natural language, firstly we need to clarify the intention of the user’s question, classify the questions, affirm the request that the answer must meet, extract the keywords and their extensions of the user’s question.
PAGE
PAGE IV
ABSTRACT
The task at stage of the information retrievaing is: read article that entered already, carry on precondition to the article and set up information index at first, then retrieve paragraphs related to the keywords and their extensions generated during the question processing. Because question-answering systems need to return brief answers, the answer extraction module shall accept the relevant paragraphs that searched out by the information retrieval module to refine the answer. Answer extraction module is the most important part of a question-answering system. During the answer extracting, this article has applyed the method of setting up structural tree of words and the technology of calculating the degree of semantic similar, at the same time carries on detailed analyse when the event is “ATRANS” in the sentence, to realize automatic question-answering after the abstract relational changed among the entities .This article finally also introduced the whole realization of the question-answering system based on natural language processing, the test results, appraises and analyzes.
Key words: question-answering system, information retrieval, answering extraction, words structure tree
目 录
目 录
摘 要 I
ABSTRACT II
目 录 IV
第一章 概论 1
1.1 问答系统的研究现状 1
1.2 问答系统现有的类型 2
1.2.1 聊天机器人 2
1.2.2 基于知识库的问答系统 3
1.2.3 问答式检索系统 4
1.2.4 基于自由文本的问答系统 5
1.3 现有问答系统存在的问题 5
1.4 问答系统的组成模块 6
1.4.1 问题处理 6
1.4.2 信息检索 7
1.4.3 答案抽取 8
1.5 本文的主要内容 8
1.6 本章小结 9
第二章 知识的表示 10
2.1 知识的定义 10
2.1.1 知识的特性 11
2.1.2 知识的分类 12
2.1.3 知识的表示 12
2.2 语义网络 13
2.2.1 语义网络知识表示法 14
目 录
2.2.2 语义网络的构建 16
2.3 本章小结 22
第三章 问题处理 23
3.1 问句预处理 23
3.2 问题类型及答案要求 24
3.3 关键词及其扩展 26
3.4 本章小结 27
第四章 信息检索 28
4.1 信息检索的定义与发展 28
4.2 信息检索的统计模型 29
4.2.1 布尔模型 30
4.2.2 向量空间模型 31
4.2.3 概率模型 33
4.3 本系统中信息检索模块的设计 33
4.3.1 文档预处理和信息索引 33
4.3.2 段落选取 34
4.4 本章小结 35
第五章 答案抽取 36
5.1 话语结构分析 36
5.2 概念依从理论 38
5.3 答案生成 40
5.3.1 事件是“抽改”类动词 41
5.3.2 事件不是“抽改”类动词 44
5.4 本章小结 46
第六章 问答系统的实现与测评 47
6.1 系统设计思想 47
目 录
6.2 系统框架 49
6.3 系统的设计与实现 51
TOC \o 1-1 \h \z \u HYPERLINK \l _TOC_250002 6.3.1 问题处理模块(QPM) 51
HYPERLINK \l _TOC_250001 6.3.2 信息检索模块(ISM) 54
HYPERLINK \l _TOC_250000 6.3.3 答案抽取模块(AEM) 57
6.3.4 系统整合 62
6.4 系统测试与评价 63
6.4.1 摘要信息的提问测试 63
6.4.2 “抽改”类动作提问测试 65
6.4.3 非“抽改”类动作提问测试 67
6.5 本章小结 68
全文总结 69
参考文献 71
致 谢 73 附录 问题处理模块中用到的规则 74
PAGE
PAGE 1
第一章 概论
第一章 概论
早在 20 世纪 60 年代人工智能研究刚开始的时候,人们就提出了要让计算机像 人一样用自然语言来回答人们的问题,实现“人机对话”,这就是问答系统[1]。问 答系统在 20 世纪 80 年代的自然语言处理领域曾风行一时,因为 Turing[2]实验告诉 人们:如果计算机能够像人一样与人对话,就可以认为计算机有智能,所以研究者 们为了探索语言理解技术,纷纷研究基于自然语言处理技术的自动问答系统。但是, 由于当时的条件限制,所有的实验几乎都是在受限的领域,甚至是在固定段落上进 行的。此后,由于大规模文本处理技术的兴起,问答系统的研究受到了冷落。最近 几年,随着信息技术和网络的迅猛发展,人们想高效地获取信息的愿望在不断增强, 又重新促进了问答系统的发展。问答系统允许用户以自然语言的形式进行提问,而 不需要像使用传统的搜索引擎那样把自己的问题分解成关键字。接收了用户的提问 以后,问答系统又能结合自然语言处理技术,通过对问题进行分析处理,借助一定 的算法,为用户直接返回简单精练的答案,而不是相关的网页。所以问答系统能比 传统的搜索引擎更高效地为用户提供服务。
1.1 问答系统的研究现状
所谓问答系统,是指对于用户用自然语言提出的问题,能够给出尽可能简洁、 准确的答案。问答系统有着比较悠久的历史, 1950年著名的英国数学家 图 灵 (A . M . Turing) 发 表 了 具 有 里 程 碑 意 义 的 论 文 “ Computing Machinery and Intelligence”,他在文中提出了判断计算机是否具备智能的实验方法——“图灵 测试”,也就是通过自然语言问答的方式,判断机器是否具备人类所具有的智能, 因此可以将“图灵测试”看作是问答系统的蓝图。后来,John Searle提出了“中 国人房子问题(Chinese Room)”,质疑图灵测试对测定计算机智能的意义有多大。 陆汝钤院士认为,“图灵测试”永远不可能在图灵定义的层面上真正地实现。Jaseph Weizenbaum在1966年实现的“Eliza”是第一个问答系统。1969年,ROBERT F.SIMMONS 指出:数据集的规模不同,开发问答系统所用的方法也是不同的,他同时还提出了 模式推理的思想。TREC(text retrieval conference)会议是国际上文本信息检索 领域最重要的会议之一,自从1999年TREC开设QA Track以来,自动问答(Question
PAGE
PAGE 2
电子科技大学硕士学位论文
Answering Track)就是最受关注的主题之一。许多单位参与了比赛,涌现出了许 多优秀的问答系统。
在2000年10月召开的ACL2000国际计算语言学学术会议上,有一个专题讨论会, 题目是“Open-Domain Question Answering”。目前,国外已经开发出一些相对成 熟的问答系统:麻省理工(MIT)开发出的问答系统Start,从1993年开始就发布在 Internet上,它可以回答一些有关地理、历史、文化、科技、娱乐等方面的简单问 题。另外还有一个比较成熟的问答系统AnswerBus,AnswerBus是一个多语种的问答 系统,它不仅可以回答英语的问题,还可以回答法语、西班牙语、德语、意大利语 和葡萄牙语的问题。所有这些参加TREC QA TRACK的系统,所用方法都不尽相同, 但大都基于日臻成熟的IR、IE技术,并且一般经过如下处理过程:分析问题形成查 询请求、判断问题所期待答案的类型、相关文档查询、候选答案片断抽取、以及答 案选取等。国内也有一些研究机构参与了自动问答技术的研究:中科院计算所、复 旦大学、香港科技大学等,但是参与中文问答技术研究的科研机构相对国外来讲还 比较少,而且基本没有成型的中文问答系统。
1.2 问答系统现有的类型
随着国内外越来越多的机构投入到问答系统的研究,目前自动问答技术已经取 得了一定的成绩,出现了许多优秀的问答系统,其现有类型主要有:聊天机器人、 基于知识库的问答系统、问答式检索系统,以及基于自由文本的问答系统等。
1.2.1 聊天机器人
1966年实现的“Eliza”是第一个聊天机器人,它运用自然语言以聊天的方式 与人交互。Eliza扮演一个心理学者的角色,往往用反问来应对用户的提问。1973 年,有人做了模仿精神病人的图灵测试的实验,所编的程序为PARRY,PARRY没有语 法分析部分,只是通过大约6000条模式匹配规则来实现它的功能,但能够成功地欺 骗很多人。近年来出现的聊天机器人,多是以通过“图灵测试”为目的参加“Loebner” 比赛的程序,如A1ice(2000年和2001年的第1名)。但迄今为止,没有任何一个程序 通过“图灵测试”。目前典型的聊天机器人还有:Jabberwock、FRED系列、Eugene、 Talk-Bot、Ultra Hal、Niall、Kate等。
聊天机器人几乎是全部采用模式匹配的方法来寻找问题最合适的答案,它们没 有经过严格证明的定理、晦涩的数学公式,甚至没有复杂的算法。它们的共同特点
第一章 概论
是:在与用户的交谈过程中,都是基于谈话技巧和程序技巧,而不是根据常识来回
答问题。在它们的对话库中,可以存放多个句型、模板,但几乎没有常识库,而要 成功地进行图灵测试,除了要研究对话过程中的语义和语用分析以外,一个很重要 的因素就是:要使计算机拥有足够多的常识知识,并具有联想能力。对于知道答案 的问题,聊天机器人往往给出人性化的回答;对于不知道答案的问题,通常有三种 回答方法:①猜一个答案;②老实说不知道;③用转移话题的办法回避。目前的聊 天机器人,由于其知识库规模有限、甚至没有知识库,所以面对用户提出的许多专 业性问题,通常是用转移话题的办法来回避。知识的缺乏使得聊天机器人目前还不 能解决太多的实际问题,而仅仅只是和用户“聊天”,许多情况下,它更像是玩具 而不是工具。但是聊天机器人所体现出来的一些技术特色却很值得我们注意,例如, 正确理解用户的询问,从用户的输入中进行学习,使得答案更加人性化、更加合乎 逻辑等。
1.2.2 基于知识库的问答系统
拥有存储一个或多个领域知识的知识库,并利用检索、推理等技术,来求解用 户问题的问答系统,称为基于知识库的问答系统。知识的数量与质量是一个基于知 识库的问答系统性能是否优越的决定性因素。知识与信息不一样,知识是信息经过 加工整理、解释、挑选和改造而形成的。一阶逻辑公式、内涵逻辑公式、语义网、 框架、脚本、概念图以及知网、HNC等,都是知识表示的不同方式。
人工智能大师费根鲍姆通过实验和研究证明了:实现智能行为的主要手段在于 知识,在多数实际情况下是特定领域的知识。费根鲍姆也曾强调知识的大量积累可 以使计算机的智能发生质变。国际上建立大规模知识库的诸多努力中,最有名的是 Doug Lenat于1984年在“美国微电子和计算机技术公司(MCC)”发起的CYC研究项 目,该项目经过11年的努力,耗费200人年的工作量,到1995年左右,建立起了一 个拥有50万断言的知识库,并在此基础之上研究了自然语言理解、学习、问题求解 等人类智能活动的机理。中国科学院从20世纪80年代开始也组织了有关科学知识库 的研究,并拨专项经费给予支持。目前已经建立起了涉及物理、化学、生物等领域 的十几个科学数据库,在科研工作中发挥了积极的作用。例如,陆汝铃院士主持开 发的“Pangu”、曹存根研究员率领的课题组正在建立的NKI(国家知识基础设施) 海量知识库,以及在此基础上搭建的NKI问答系统、宋柔教授率领的北京语言文化 大学计算机系语言信息处理研究所正在进行的百科词典的知识提取工作等。但是,
电子科技大学硕士学位论文
现有的知识库还存在一些问题,如:知识获取的瓶颈问题、知识库维护困难,以及
知识库的不完备性和不确定性问题等。 现有基于知识库的问答系统大致包括:基于本体的问答系统、自然语言界面的
专家系统、基于受限语言的数据库查询系统等。所有这些问答系统都有一个共同的 特点:它们都是基于一个或者多个知识库(数据库),通过自然语言的形式与用户 进行交流。和聊天机器人不同的是,这类系统擅长于知识问答,对于不能回答的问 题,就回答“不知道”,而不是故意转移话题。
基于知识库的问答系统性能优良,对于用户提出的许多问题,能够给出准确的 答案,甚至可以进行一定程度的推理计算。由于是基于知识库的,所以系统具有良 好的可扩展性,但是其局限性同样也很明显:如果用户的问题落入系统的知识库范 围之内,系统可以轻松地解决问题;一旦超出这个范围,系统地性能将很快下降为 零,由此可见,目前这类系统的适用范围非常狭窄。从知识库的角度分析其弱点的 来源,可以发现系统的知识库规模不足、知识获取困难、知识库维护困难等问题, 即存在知识库的瓶颈问题。
1.2.3 问答式检索系统
根据以自然语言方式提交的用户查询,从系统文档集合或web中,检索出相关 文本或网页,并将其返还给用户,这种系统称为问答式检索系统,也称问答式搜索 引擎或者智能搜索引擎。当前,比较典型的问答式检索系统主要有:AskJeeves、 Encarta、Start、IONAUT、尤里卡、AnswerBus、Lamp等,微软中国研究院曾开发 了一个问答式检索系统“小百灵”,中科院计算所也曾开发出一个问答式检索系统 “小灵通”。
问答式检索系统主要涉及两种技术:用户查询处理技术和信息检索技术。信息 检索技术目前已经比较成熟,因而如何正确理解用户用自然语言提出的查询,如何 准确无误地理解用户查询的语义成了问答式检索系统的关键问题,目前的解决方案 主要有两种:一种是对用户查询进行浅层分析,识别出其中的关键词,然后利用查 询扩展技术,借助语义词典,将关键词的同义词、近义词等一并提交给后继的检索 系统。这种方法虽然允许用户使用自然语言查询,但并没有充分利用用户查询的信 息,尤其是语义信息,其能力等同于一般的词表法;另一种是使用问句模板, AskJeeves就是这样的系统,系统拥有一个问句模板库,并且为这些问句模板构造 有页面作为答案。如果系统面向的领域非常狭窄,那么数量很少的问句模板就可以
第一章 概论
覆盖绝大多数的用户提问方式,但是如果系统面向的领域非常广阔,甚至是开放领
域,那么模板库和模板答案的数量就非常多,维护工作就非常大,可见这种方法也 存在不足。
从技术上来说,在处理用户查询方面,问答式检索系统主要是抽取用户查询中 的关键词,并利用语义词典对关键词进行扩展,从而得到一组描述用户需求的关键 词。然而,最清楚用户需求的是用户自己而不是系统,用户自己给出的关键词往往 要比系统分析得出的关键词准确得多。因此,与现有搜索引擎相比,问答式检索系 统的优势并不明显。一系列测试结果表明,无论是速度还是准确性,Google都要比 现有大多数问答式检索系统高出许多。并且,问答式检索系统返还给用户的只是和 用户查询相关的文本或网页,而不是短小精悍的答案,所以严格说来,问答式检索 系统还不算是一个真正的问答系统,只是一个信息检索系统。
1.2.4 基于自由文本的问答系统
自由文本又称原始文本或者非结构化文本,它是指未经人工处理的文档、网页 等。基于自由文本的问答系统,是指接受用户以自然语言提交的问题,然后利用信 息检索等技术,从自由文本库中检索出相关的文档,最后利用答案抽取等技术,从 这些检索出来的自由文本中抽取出问题的答案并提交给用户的系统,它可分为三个 步骤:处理用户查询、检索相关文本、抽取答案。它所涉及到的技术包括:信息检 索(IR)技术、信息抽取(IE)技术、文本挖掘、文本聚类、文本摘要、模式推理 和几乎所有的基本NLP技术(词法分析、句法分析、语义分析、指代解析、消歧等), 是这些技术的集大成者。
基于自由文本的问答系统的特点是:不需要建立大规模知识库,而是基于自由 文本进行知识问答,节省了大量的人力物力;并且由于系统返还给用户的是具体的 答案,而不只是和用户查询相关的文本或网页,所以基于自由文本的问答系统代表 着问答系统的发展方向,现有的绝大多数问答系统都属于这一类。
1.3 现有问答系统存在的问题
问答系统缺乏推理能力[3],这是目前问答系统存在的重要问题。Montague认为, 自然语言和逻辑人工语言没有实质的区别,自然语言和逻辑人工语言本质上是相通 的,作为符号系统,它们都遵循共同的结构规律,这是所谓的通用语法的思想。把 用户的问题解析成为Prolog能够推理的地步,然后利用prolog作为工具进行推理,
PAGE
PAGE 10
电子科技大学硕士学位论文
从用户问题中抽取出需要的信息,即通过谓词逻辑推理,来获取用户的提问意图,
这种方法的局限性在于:语序变化的多样性以及谓词构造的复杂性。谓词构造主要 是靠关键词,而关键词的语序又是变化的。在基于文本的问答系统中,人们还引进 了结构级别的推理技术,如推理规则:“X writes Y”→“X is the author of Y”, 但推理规则的归纳通常是一个人工整理的过程,依靠的是语言学家的语言知识,而 靠人工的方法只可能产生一些共性规则,不可能产生数量较多的针对个别情况的个 性规则,个性规则尽管应用范围小,但也是保证正确率的重要手段,另外,人工方 法产生规则的准确率有待验证。
自然语言语义的形式化问题很困难,因为目前数学和逻辑学都没能为之提供一 个令人信服的工具。首先,自然语言的句法和语义纠缠在一起,几乎在所有的层面 上,二者都是不可分割的。其次,为描述自然语言而构造的句法和语义无歧义的形 式语言的描述能力值得怀疑。
1.4 问答系统的组成模块
问答系统包括三个组成模块:问题处理、信息检索和答案抽取。如何在问题处 理阶段充分领会用户的提问意图,如何在信息检索模块中把包含相关信息的段落搜 索出来,以及如何在答案抽取模块中准确地生成用户需要的答案,这三个问题是问 答系统需要解决的主要问题。
问题处理
问题处理是问答系统中一个必不可少的步骤,这个模块是问答系统首先进行的 分析工作,其分析效果对后面的处理过程有着重要的影响。问题处理部分需要完成 的工作主要有:问句预处理、问题类型及答案需要满足要求的确定、提取出问题的 关键词,以及依据问题的类型等因素对关键词进行适当的扩展。
问句预处理阶段要进行的工作是:对于用户以自然语言形式提交的问题,我们 需要提取出对后面的检索有用的信息,但并不是问题中所有的词都是有助于信息检 索的,例如,问句中的一些前缀(如“请问”)和一些常用的“吧、了、吗”等助 词对段落的检索起不到什么作用,在处理中应将其滤去。
接着要确定问题的类型以及答案需要满足的要求:对于任意一个问句而言,疑 问词是确定问题类型及答案要求的依据,但疑问词又分为“通用疑问词”和“专用 疑问词”,这两类疑问词的辨别能力是不相同的,对于通用疑问词,往往需要借助
第一章 概论
于问句中的另一个称作“问题焦点”的词才能正确地知道用户是对什么进行提问。
问题类型不同,答案的形式往往也不同:答案可能是句子,也可能是摘要的形式。 我们规定对事件和人物等的描述性答案为摘要的形式,以便使用户能够清楚地了解 这个事件而又不显累赘,其余的答案形式为单个的句子。
将用户提问中的关键词提取出来送给后面的信息检索模块是问题处理模块的 关键任务,这部分的性能将影响信息检索的效果以及最终答案的抽取。关键词主要 由名词、动词、形容词、限定性副词等组成。关键词分为一般性关键词和“必须含 有”的关键词,“必须含有”的关键词对问题有很强的限制作用,不包含“必须含 有”性关键词的段落几乎不会有正确的答案。
但是答案段落里的词往往不是提问时出现的关键词,而是其同义或近义扩展。 对关键词进行扩展主要从两个方面来考虑:
①利用《知网》的语义词典,将所有词的同义词作为扩展的关键词:如果两个词在 语义词典中的英文词和解释相同,则认为它们是同义词;
②根据问题类型扩展关键词:例如,询问地点时,把“在”、“位于”、“地处”等作 为关键词进行扩展;询问原因时,把“之所以”、“是因为”作为关键词进行扩展等。
信息检索
问答系统中的信息检索模块将利用问题处理模块输出的关键词及其扩展来搜 索相关的段落。信息检索模块分为两个部分——信息索引以及段落选取。对系统已 经读入的文档,首先进行预处理,即进行分词、词性标注以及特征项的提取等工作, 并对文档建立相应的信息索引,其目的是为了根据用户提问中的关键词迅速找到包 含特定关键词的段落。
信息检索技术的基础是对原始文档预处理后,将基本元素的位置信息记录在索 引表中。通常以词表为基础建立索引库。信息索引就是创建文档的特征记录,通常 以倒排表的方式建立。对文档进行预处理并建立信息索引是由系统预处理模块事先 进行的。用户提问时,将依据系统抽取的关键词从索引表中找出满足条件的所有段 落取交集返回。由于索引结构常驻内存,因而检索速度快,而且一旦定位到段落, 就可以作进一步的语义分析和处理。
信息索引建立完后,检索的过程就是对相关段落按权重大小排序后依次输出, 段落权重的计算方法为:首先,由词性为问题处理模块输出的关键词(包括其扩展) 设置权重;其次,根据类似IDF的定义为各关键词分配权重;最后,依据权重的大
电子科技大学硕士学位论文
小对检索出来的段落进行排序,依次送给答案抽取模块。
答案抽取
对信息检索模块得到的与问题相关的段落进行提炼,并根据答案的不同形式生 成正确的答案是答案抽取阶段的主要任务。由目前国内问答系统主要是对文本中静 态知识进行回答的不足,本系统在答案抽取阶段提出:先由表示话语结构的关联词 建立段落的话语结构树,再用同样的方法针对每个实体建立结构树,目的是从整体 结构上把握内容;然后依次对实体结构树中的事件进行分析,比一般的问答系统增 加了对含有“抽改[4]”类动词问题的分析与回答。问答系统中答案抽取模块主要分 为两部分:话语结构分析和答案生成。
进行话语结构分析的目的是:依据段落中的关联词生成段落的话语结构树,并 用同样的方法对实体建立树结构。话语结构树在给出各文本单元之间修辞关系的同 时,也为抽取段落或实体对应的简单的摘要信息提供了方便:树的根节点对文本信 息具有重要的作用,将根节点对应的语句抽取出来,去掉句中表示话语结构的关联 词后,就可以得到对应文本最短的摘要信息。
由于概念依从理论中的“抽改”类动词影响着实体之间的抽象关系,其余基本 都是对实体某种属性或固有特征的具体描述,不牵涉动态属性或特征的迁移,实体 执行“抽改”类动作后,主要体现在拥有物品数量的改变。因此生成答案时要根据 事件是否为“抽改”类动词而分两部分来进行处理:
①如果事件是“抽改”类动词:依次取出事件对应的主体和受体,建立实体表, 每个实体节点有一个扩展属性,存放他们执行“抽改”类动作后的结果。
②事件不是“抽改”类动词时,查看答案的形式:如果要求输出摘要信息,则 在去掉句中的关联词后,直接从树结构中选取根节点对应的语句输出,否则,计算 出各候选答案的权重后,对满足答案要求的句子按权重值的大小进行排序,将权重 最大的语句作为答案输出。
1.5 本文的主要内容
问题处理、信息检索和答案抽取是问答系统的三个主要部分。在问题理解阶段 充分理解用户的提问,掌握其提问意图是问答系统的基本任务。问题处理包括:问 句预处理、问题类型以及答案需要满足要求的确定、关键词提取及其扩展。对于问 题理解阶段产生的关键词,信息检索模块要快速地搜索出相关的段落,交给答案抽
第一章 概论
取模块。答案抽取是问答系统中难度最大的一部分,需要研究的问题很多。问答系
统返回的答案形式多样,可以是一个句子也可能是摘要的形式。考虑到概念依从理 论中的“抽改”类动词影响着实体之间的抽象关系,在应用中主要体现在实体拥有 物品数量的改变。因此,在答案抽取阶段,需要针对事件是“抽改”类动词的情况 进行特殊处理,当实体涉及的事件不是“抽改”类动词时,如果答案要求摘要形式, 则根据话语结构树提取摘要信息,否则,从候选答案包括关键词的权重以及句子与 问题的语义相似度这两个方面来计算候选答案的权重,然后将权重最大的句子作为 答案返回给用户。本文正是通过对这三个主要模块的研究,设计并实现了一个中文 自动问答系统,并对这个自动问答系统进行了基本的性能评测。
1.6 本章小结
本章首先介绍了当前国内外问答系统的研究状况,对问答系统现有的类型以及 各自的特点进行了相关的介绍,接下来分析了本系统的三个组成模块,同时对各个 模块要实现的功能以及所用到的相关技术分别进行了简单的阐述,在以后的章节 里,我们将详细介绍这三个模块的功能、技术及其设计方案。
对于中文问答系统来说,要对用户提出的问题进行正确的回答,其根本就是要 在机器内部实现对文本涉及到的相关知识的正确有效的表示,使人类的知识转化成 计算机能够处理的形式,因此在第二章将详细介绍“知识的表示”这一内容。
电子科技大学硕士学位论文
第二章 知识的表示
知识[5]是人们在改造客观世界的过程中积累起来的经验及其总结升华的产物。 知识是一切智能行为的基础,是人工智能的重要研究内容。要使计算机具有智能, 就必须使它具有知识。适当选择和正确使用知识表示方法可以极大地提高人工智 能问题求解的效率。人类之间互相交往都是用自然语言来描述和表达的,要使计 算机来理解人类的思维并能够借助于知识进行相关的推理,就必须将自然语言知 识化,变成计算机能够使用的形式。基于自然语言处理的问答系统就是以计算机 为工具,利用知识以及知识推理等技术来求解问题的知识系统,它是人工智能应 用研究的主要领域,知识越丰富,正确回答问题的能力就越强。
2.1 知识的定义
现实世界中每时每刻都产生大量的信息,但是只有用一定形式表示出来的信 息才能被记载和传递,尤其是在借助计算机进行信息的存储及处理时,更需要用 一组符号及其组合来对信息进行表示。像这样用一组符号及其组合表示的信息称 为“数据”。数据是记录信息的符号,是信息的载体和表示。信息是对数据的解 释,是数据在特定场合下的具体含义。数据又不同于信息,相同数据在不同的环 境下可以表示不同的含义、蕴涵不同的信息,而且不是所有的数据都蕴涵有信息, 只有那些有格式的数据才有意义,不同格式的数据蕴涵信息的多少也是不一样的, 比如图像数据所蕴涵的信息量大,而文本数据所蕴涵的信息量比较少。
信息在人类社会中占有十分重要的地位,但是只有把相互关联的信息组合到 一起时才会有实际的意义。通常把相关信息组合在一起所形成的结构称为“知识”。 对数据、信息、知识等之间的层次关系可以用图2-1的结构表示如下:
第二章 知识的表示
元知识 知识 信息 数据 噪音
图 2-1 知识的结构
在图2-1中,底层的“噪音”是包含不相关或关联性很小的数据以及模糊数据, 顶层的“元知识”是关于知识的知识,它包括怎样使用规则、解释规则、检验规 则、解释程序结构等知识。“知识”是把相关的信息组合在一起所形成的结构, 知识在人们的日常生活中所涉及的内容是十分广泛的,有些是多数人日常所熟悉 的一般性的知识,而有的只是相关领域专家才能够掌握的专业性的知识。
知识的特性
知识的特性主要有四个方面,即知识的相对正确性、知识的不确定性、知识 的可表示性以及知识的可利用性。
⑴、知识的相对正确性:任何知识都是在一定环境下才相对正确,而并非绝 对正确,知识的相对正确性随环境的不同而发生变化;
⑵、知识的不确定性:“信息”与“关联”是构成知识的两个要素,由于现 实世界的复杂性,“信息”可能是精确的,也可能是非精确的、模糊的,而“关 联”可能是确定的,也可能是不确定的,因而知识有时不能被完全确定是真还是 假,即在“真”和“假”之间存在很多中间状态,也就是存在“真”与“假”的 程度问题。因而产生了不确定性知识表示方法和推理方法;
⑶、知识的可表示性:知识是可以用形式化的东西表示的,如:语言、文字、 图表、公式、数字等。正因为具有此特性,所以知识才能被存储并得以传播;
⑷、知识的可利用性:即能够利用所获取的知识,通过相关的处理,对遇到 的各种复杂的问题进行相应的求解或制定相关的规划或决策,如诊断疾病、回答
电子科技大学硕士学位论文
问题等。
知识的分类
对知识的分类可以从不同的角度来进行,因而具有不同的分类结果: 角度一:从知识的作用范围来划分,
常识性知识:也称通用性知识,是人们普遍所知的,适用于所有领域; 领域性知识:是专业性的知识,它面向某个具体领域,只有相关专业的人员才能
掌握,并运用它来求解该领域中的有关问题。 角度二:从知识的确定性可以将知识分为:
确定性知识:是逻辑值为“真”或者“假”的知识,也称为精确性知识; 不确定性知识:是不精确知识、不完全知识和模糊性知识的总称。
角度三:从人类的思维以及认识知识的方法划分: 逻辑性知识:即反映人类逻辑思维过程的知识,例如:人类的经验性知识,该类
知识一般具有因果关系以及难以精确描述的特点,通常是基于专家 的经验以及对一些事物的直观感觉而建立起来的知识;
形象性知识:通过事物的形象而建立起来的相关事物或者概念的知识; 角度四:从知识的作用及表示来划分:
叙述性知识:描述有关概念、事实、事物的属性、状态等的知识,是静态知识, 它可以为人们共享,是可以公开获得的公认的知识。例如:“一年 有四个季节”;
过程性知识:是指有关系统状态变化、问题求解过程的操作、演算和行动的知识; 控制性知识:又称深层知识或元知识,是关于如何运用已有知识进行问题求解的
知识,即有关如何选择相应的操作、演算和行动的比较、判断、管 理和决策的知识,是“关于知识的知识”。
知识的表示
要使计算机能够像人一样对问题进行求解并做出正确的回答,就必须使它具 有知识,并能够处理知识,因此首先必须解决知识表示的问题。“知识的表示” 可以看成是对一组事物描述的约定,是一种把人类知识表示成机器能够处理的用 于描述知识的数据结构。“知识的表示”是研究用计算机来表示知识的可行性、 有效性的一般方法,是数据结构与系统控制结构的统一。
第二章 知识的表示
知识表示的研究既要考虑知识的表示与存储,又要考虑知识的使用。选取何
种知识表示方法来表示知识,不仅取决于知识类型,还要考虑到很多其他因素的 影响:
因素1——表示知识的能力:能否将问题求解所需要的知识正确有效地表示出 来是知识表示的能力,它要求表示的内容范围广泛,而且能够高效地表示领域知 识,要便于该领域知识的推理。另外,由于自然界的信息具有先天的模糊性和不 精确性,所以能否表示不确定性知识和模糊性知识也是需要考虑的重要因素,也 就是要考虑对知识的不确定性和模糊性的支持程度。因此,许多知识表示方法往 往要经过改造,如:确定性方法、主观贝叶斯法等对证据和规则引入了不确定性 度量,就是为了能够表示不精确的知识。
因素2——与推理方法的匹配:表示知识最终的目的是为了有效地利用知识, 利用知识是指使用表示了的知识进行推理,以求解现实中遇到的各种复杂问题。 为了使一个智能系统能有效地求解领域内的各种问题,除了必须具有足够的知识 以外,还必须要使其表示形式便于对知识进行推理而利用之,否则势必影响系统 的推理效率而降低问题的求解能力。
因素3——知识与元知识的一致:知识与元知识是属于不同层次的知识,使用 统一的表示方法可以简化对知识的处理,而且人们的知识往往是不精确的,所以 需要在元知识(即控制知识)中加入一些控制信息,也就是通常所说的启发信息。
因素4——便于知识组织、维护和管理:在增加新知识、修改、删除已有知识 时,要能够保证知识的一致性和完整性。
知识的表示有多种方式,采用哪一种取决于是否方便系统分析问题。一阶谓 词逻辑表示法、产生式表示法,以及状态空间表示法等,都是知识表示的不同方 法。这些方法各有优点,但它们对知识信息的表示都太过于固定、孤立,使知识 点支离破碎,很难彼此建立联系,而不适合问答系统,因为问答系统不仅仅有要 能抽取现成的答案,而且要能够在相应的文本中搜索相关的答案点,(答案点是 知识信息,即蕴含着知识的信息),然后组织成完整的答案,这就要求各知识点 之间要有一定的联系,因而本系统将采用语义网络表示法来进行知识的表示。
2.2 语义网络
语义网络是由结点和结点间的有向弧所组成的有向图。结点用于表示物理实 体、概念或状态,弧用来表示它们之间的关系。
电子科技大学硕士学位论文
语义网络是一种用实体及其语义关系来表达知识的一种网络图,它一般由语
义基元(最基本的语义单元)组成,语义基元是由有向图表示的三元组(结点1, 弧,结点2),语义基元可简单地表示为:
语义关系
结点1 结点2
图 2-2 语义基元
其中,结点代表实体,弧是有方向和标注的,弧的方向体现结点所代表的实 体间的主次关系,弧线上的标注表示它所连接的两个实体之间的语义关系。
当把多个语义基元用相应的语义联系关联在一起时,就形成了一个语义网络, 图2-3为命题“某学校的学生坐车去春游”的语义网络图。
属于 动作目的
某学校 学生 春游
动作方式
坐车
图 2-3 “某学校的学生坐车去春游”的语义网络图
由语义网络的结构特点可以看出,语义网络不仅能表示事物的属性、状态、 行为等,而且更适合于表示事物之间的关系和联系。图2-3既表示了小学生的所属
(性质),又表示了小学生于“春游”、“坐车”之间的关系。
2.2.1 语义网络知识表示法
知识可以分为叙述性知识和过程性知识,其中叙述性知识包括对有关领域内 的概念、事实、事物的属性、状态及关系的描述,过程性知识主要涉及对事件、 情况以及动作等的表示。
在用语义网络表示知识时,主要按照以下的步骤来进行:
⑴、首先确定问题中的所有对象,以及各对象的属性;
⑵、分析并确定语义网络中所讨论对象的关系;
⑶、根据语义网络中所涉及的关系,对语义网络中的结点和有向弧进行分析 和整理,包括增加结点或弧,以及归并结点等。
例如:“我的饭桌有白色方形的桌面、四条灰色的桌腿”中要说明的对象是:
第二章 知识的表示
“我的桌子”、“桌面”、“桌腿”;各自的属性分别是:我的饭桌是一个桌子,
桌面的颜色是白色的,桌面的形状是方形,桌腿的数量是四条,颜色是灰色的, 因此,可以用图2-4来表示其对应的语义网络:
我的饭桌
ISA
桌子
AKO
家具
Part-of Part-of
桌腿 桌面
Number Color Color form
四条 灰色 白色 方形
图 2-4 “我的饭桌是一张桌子,它有白色方形的桌面、四条灰色的桌腿”的语义网络图
在图 2-4 中,对于每个结点,分别用有向弧来表示其属性,弧上的标注表示 属性关系,弧指向的结点具体描述了属性值。
有些表示知识的语句涉及的动词既有主语,又有直接宾语和间接宾语,即句 子中既有发出动作的主体,又有接受动作的客体和动作所作用的客体,在用语义 网络表示这样的知识时,既可以把动作设立成一个结点,也可将所发生的动作当 成一个事件,设立一个事件结点,动作和事件结点也有一些向外引出的弧,用于 指出动作的主体与客体,或指出事件发生的动作以及该事件的主体与客体。
此外,语义网络还可以表示逻辑关系反映的知识:命题间的连接词通常有 “与”、“或”、“非”等,当用语义网络表示该类知识时,可以分别引入相应 的“与”、“或”、“非”结点来表示对应的逻辑关系,即通过这些结点引出的 弧构造多元关系语义网络图。当命题中存在变元和量词时,也可以用语义网络来 进行表示。量词包括存在量词和全称量词。当用语义网络表示存在量词时,可以 借助于有向弧 ISA,即 ISA 弧线从一个特定的实体出发,它指向的结点是一个普遍 的概念结点;对于全称量词,则可采用亨德里克提出的网络分区技术,该技术的 思想是:把一个复杂的命题划分为若干子命题,每个子命题用一个较简单的子语 义网络来表示,称为一个子空间,多个子空间构成一个大空间,每个子空间看作 是一个大空间中的一个结点,称作超结点,空间可以逐层嵌套,子空间之间是用 弧线来连接的。
电子科技大学硕士学位论文
例如:“每个学生都学习 Java 语言”可以表示为如下的语义网络:
GS 学生 学习 程序设计语言
是一个
是一个 是一种 是一种
FORM
?
主体 客体
G S L Java
图 2-5 “每个学生都学习了 Java 语言”的语义网络图
由于这里所指的“学生”是“每个学生”,所以把这个特定的断言认作是断 言 G,断言 G 有两个部分:第一部分是断言本身,它说明所断定的关系,叫“格 式(FORM)”;第二部分是代表全称量词的特殊弧 ??,一根弧 ??可以表示一个全 称量化的变量,GS 结点是一个概念结点,它表示具有全称化的一般事件,G 是 GS 的一个事例。此时只有一个全称量化的变量 S,它可代表“学生”这类实体中 的每一个成员,而其他变量则被理解为存在量化的变量,图 2-5 表示每个学生都存 在一种“学习”事件,“学习”这一事件的主体是“每个学生”,学习的客体是“Java 语言”。
2.2.2 语义网络的构建
语义网络能够把事物的属性以及事物间的各种语义联系显式地表现出来,是 一种结构化的知识表示法。在这种方法中,下层结点可以继承、新增和变异上层 结点的属性,从而实现信息共享。通过与某一结点连接的弧,能够很容易地找出 相关信息,而不必查找整个知识库,这样可有效避免搜索时的组合爆炸问题。语 义网络表示把各结点之间的联系以明确、简洁的方式表示出来,是一种直观的知 识表示方法。语义网络着重强调事物间的语义联系,体现了人类思维的联想过程, 符合人们表达事物间关系的习惯,因此能够较为容易地把自然语言转换成语义网 络。由此可见,语义网络的构建是知识表示的一个重要问题,我们主要从以下几 个方面来考虑语义网络构建的问题。
(一)、汉语的“意合性[6]”
第二章 知识的表示
汉语的“意合性”最早是由王力先生提出来的。世界上各民族的语言按照其
思维方式和编码体系分为两种类型:一种以英语为代表的“句法型语言”,句子 结构的线性序列是“主语——谓语”,语言单位的组合手段是“形态变化”;另 外一种是以汉语为代表的“语义型语言”,句子结构的线性序列是“话题——述 题”,语言单位的组合手段是“意合法”。
例如:①他在山坡上种菜。②他在地上找盒子。这两句的语法结构关系相同, 但语义结构式不同:①=他在山坡上+他种菜;而②=盒子在地上+他找盒子,可 见仅靠语法分析显然无法解释两句的不同。又如“他们一个也不要”中“一个” 的语义可以指向“他们”,也可以指向“要”省略的宾语“东西”,不同的场合 可以有完全不同的解释。这些都说明语义可以超越句法结构的层次与关系,体现 了语言的非线性特点,但是组成句子的语义块是有固定含义的,因此,语义分析 可以从“语义块”入手。
(二)、语义块[7] 语义块就是一个句子中有固定含义的一部分,它是语句的下一级语法和语义
构成单位,即句子是由语义块构成的。语义块可以是一个词、一个短语,甚至可 以包含另外一个句子,或是由另一个句子退化而来。
汉语句子中词的顺序灵活多变的,但语义块的内部结构是相对稳定的。例如 “小明今天下午读完了这篇文章”,也可以说成“今天下午小明把这篇文章读完 了”。这两句话中,词的顺序完全不同,但是其中语义块(即词组)的结构是固 定不变的,这些词组就是一个个语义块。
寻找一个句子中的语义块,可以借助于句中的语义块指示符来进行,常用的 语义块指示符有:
1)指示符 0:逗号和/或句号对;
2)指示符 1:助动词;
3)指示符 2:指代词;
4)指示符 3:语义上不可能联系的“跳跃”;
5)指示符 4:介词;
6)指示符 5:“的、地、得”结构;
7)指示符 6:“是、把、被、有”。
其中的 6)和 7)是汉语特有的,因为对于汉语而言,某些虚词,例如:“的、 地、得”都是很重要的语义块指示符。从语法上讲,“的”可以作为一个名词性 词组的标记,可以与其前面的名词词组、动词词组、数量词词组、介词词组、形
PAGE
PAGE 18
电子科技大学硕士学位论文
容词词组等组成一个相当于名词成分的“的”字结构,“地”和“得”的用法也 有相似的情况。所以,应该将“的、地、得”结构作为语义块的指示符。此外, 一些特殊的字,例如:“把”、“是”、“有”、“被”等有明确的语法和语义 含义,也应该看作是语义块指示符。所以,汉语的语义块指示符,除了与英语相 同的前 5 类以外,还包括有“的、地、得”结构以及“是、把、被、有”等所表
示的指示符。在本文种,语义块的提取可以借助于划分 11 段的思想来进行。
(三)、划分11段的思想 对语言符号的研究一般分三个层次:语法层(研究语言符号之间的关系)、语
义层(研究语言符号和所指事物之间的关系)和语用层(研究语言符号和使用者之 间的关系)。语法层的分析对任意文本而言都是研究的基础。以语法分析为基础, 将句子划分为11段,每段存放句子的不同成分,为加强语义层的研究创造了条件, 实现了从语法层向语义层的过渡。
词是自然语言中最小的能独立活动的有意义的语言成分,而汉语的书面表达 方式是以汉字[8]作为最小单位的,没有类似于英文空格之类的显式标示词的边界标 志[9] [10],因而,识别出这些隐含的词语边界是汉语文本分析处理中首先要做的工 作,只有经过了这道基本“工序”,中文处理系统才可称得上初步打上了“智能” 的印记,构建于词平面之上的各种后续语言分析手段才有展示身手的舞台。
根据汉语句子的特点,分词和词性标注工作结束后,对每个句子划分 11 段,
如图 2-6 所示:
0 段
1 段
2 段
3 段
4 段
5 段
6 段
7 段
8 段
9 段
10 段
背景
主语中心词 主语部分
谓语中心词 谓语部分
宾语中心词 宾语部分
标点
图 2-6 将句子划分为 11 段
11 段的思想是在语法分析的基础上,把句子分成背景、主语部分、谓语部分、 宾语部分以及标点符号五个部分。其中,主、谓、宾三个部分又分别占用三个段, 每部分的前后两段分别是修饰中心词的定语、状语等内容。由于在自然语言中, 句内嵌套从句的现象是比较普遍的,因而,主语部分和宾语部分往往又会是一个 主、谓、宾的结构,分别分布在三段中。
划分11段的方法是:首先将句子中的主动词放入第5段,再以此为界将句子分 为前后两块,然后在这两块中按词性标注及短语在句中所起的作用分别放入对应
PAGE
PAGE 19
第二章 知识的表示
的段中,句末的标点符号放在第10段。句中每两段之间需插入一条竖线,若某段 内容为空,则该段前后两竖线相临,例如:
||郭柏灵26 院士1 |||是linkv ||我国数理学界8.1 著名的ap |科学家1 ||。40
(注:其中的数字及字母分别为词性标注及短语的类型标注。) 句子被划分11段后,每段被标记为sSegi(0=i=10),它是WList类的对象的
一个单元,WList类存放句子划分11段后的结果,它是一个由sSegi组成的动态数 组,而sSegi是一个由汉语“短语”(我们将单个的词语和由几个单独的词汇组成 的短语统称为“短语”)构成的动态数组。由于这里所说的“短语”可能是单个 的词语,也可能是由几个单独的词语组成的短语,为了在实际应用中便于对其进 行语法和语义的操作,我们需要保存短语的内容、短语类型以及短语是否还有一 些底层信息,如果该短语有底层信息,则需要保存该短语的构成信息,即它是由 哪些单个的词语组合而成的,这些词语的内容和词性又分别是什么等,因此,我 们对“短语”这个对象设计数据结构如下:
Word {
String chars; //存放短语的内容,例如,“人工智能”; String type; //存放短语的类型,例如,np(名词短语)等;
WList wal; //存放该短语的组成成分,例如,“人工”,“智能”, 以方便对组成短语的各个单个词语的提取;
}
在11段中,第5段是谓语动词,通常不为空,第0段存放的背景内容,语义上 一般也可认为是修饰谓语动词的状语的一部分;第10段存放的标点符号表明了句 子的类型。
自然语言文本是知识的主要载体,利用自然语言理解技术,借助深层次的推 理机制,是人们获取知识的理想方法。但目前自然语言理解的水平还比较低,由 这种途径获取的知识往往只是显性的、浅层的。句子划分11段后,充当一定成分 的结构都被限定在特定的位置上,因而可以使用关键词和词类进行粗粒度的知识 提取。
利用11段可以迅速从句中抽取短语。例如,某句划分11段后,“计算机科学” 将作为名词性短语出现在句中某一段内,因而可对其快速定位并抽取。同时,利 用11段中短语的结构,还可以知道这个短语又由哪些单个的词语组成。另外,11 段的思想还有助于特定知识的抽取。尤其对“把”字句和“被”字句而言,关键 词“把”和“被”后的成分是往往直接参与动作的执行,抽取出“把”和“被”
电子科技大学硕士学位论文
后的词语将有助于对文本的浅层理解。
(四)、构建语义网 语义网络的构建方法有三种:手工建造、机器自动生成以及手工和机器相结
合的方法。手工构建语义网络主要是通过熟悉某领域知识的专业人员来进行的, 其准确性高,能够比较客观地体现各个单元之间的语义关系,但可能不全面或不 正确;由机器自动建立一个网状知识结构是非常困难的,可以通过简化,把网状 结构简化为树状结构,由机器自动生成关系树。同时在一个局部范围出现的实体 具有很强的相关性(如:同时在一个小节中),而在上层和下层出现的实体则体现 出一种“上——下位关系”或者“部件——整体关系”,机器自动构建语义树相 对来说比较粗糙,但实现较简单;手工和机器相结合的方法可以很好地弥补相互 的不足,机器自动生成语义树可以弥补手工的不全面性,大大减少人工构建的复 杂度,同时以人工构建为主,也避免了机器自动生成的不准确性。
把语义网络的理论和方法运用于汉语的自然语言处理,就要立足汉语的特点, 充分地揭示汉语中的语义关系。因此,后来人们对语义网络作了改进,如鲁川的 意合网络,它是“语义组合系统”的形式化图解,也是计算机的“知识表示”。
(五)、基于语义网络的推理 语义网络表示的问题求解系统由两部分组成,即语义网络构成的知识库以及
求解问题的解释程序。其中,语义网络构成的知识库是由已知事实构成的语义网 络,求解问题的解释程序,也可称为推理机。推理方法一般有两种:匹配和继承。
1)、匹配推理:其推理步骤为: A、根据提出的待求解问题,构造一个局部网络或网络片段,其中有的结点或
弧标注是空的,表示有待求解的问题,称作未知处。 B、根据这个局部网络或网络片段到知识库中寻找可以匹配的语义网络,以便
求得问题的解答(匹配可以近似)。 C、当问题的局部语义网络与知识库中的某种语义网络片段匹配时,则与未知
处相匹配的事实就是问题的解。
例:假设已知在语义网络中的知识库里有如图2-7所示的语义网络,现要求解 该语义网络中的“飞儿”是什么颜色。
第二章 知识的表示
飞儿
owns
ISA
金黄色
color 小燕子
ISA
翅膀
Part-of 鸟
ISA ISA
小朱 中学生 学生
go
学校
图 2-7 小燕子“飞儿”的语义网络图
该例中对应的目标语义网络如图 2-8 所示:
color 飞儿
X=?
图 2-8 目标语义网络图
在求解过程中,将目标语义网络与事实语义网络进行匹配,可以得到图 2-9 所示的语义推理图:
color
飞儿 X=?
目标
事实
金黄色
color
X=金黄色
ISA
飞儿 小燕子
图 2-9 语义推理图
从图 2-9 中可以看出,在进行推理时,首先匹配“飞儿”结点,由于目标和
电子科技大学硕士学位论文
事实语义网络图中都有这个结点,所以匹配成功,但事实语义网络一方“飞儿”
结点没有 color 这个指针,则必须通过 ISA 指针指向“飞儿”的上层概念结点“小 燕子”,该结点具有 color 指针,且指向“金黄色”结点,将“金黄色”代入目标 变量 x 中,即“x=金黄色”,于是匹配成功,所以最终答案是:“飞儿”是金黄色。
2)、继承推理:继承推理是在具有类属关系的对象中所进行的推理,即下层 结点(实例)可以从上层结点(概念)继承一些属性。继承推理又包括值继承和 过程继承。值继承也称为属性继承,它适用于语义联系 ISA/AKO 等;过程继承, 也叫方法继承,即语义网络中下层结点的某些属性并不是从上层结点直接继承下 来的,而是需要通过计算才能得到。
2.3 本章小结
在日常生活中,人类利用自然语言来表达和传递信息,并凭借平时积累的知 识来解决各种复杂的现实问题。知识是一切智能行为的基础,要使计算机具有智 能,能像人一样思维,并能借助于知识进行相关的推理,首先必须使它具有知识, 将自然语言知识化,变成计算机能够使用的形式。基于自然语言处理的问答系统 就是以计算机为工具,利用知识以及知识推理等技术来求解问题的知识系统,知 识越丰富,系统正确回答问题的能力也就越强。
现实世界存在有大量的信息,用一组符号及其组合进行表示的信息是数据, 数据是记录信息的符号,是信息的载体和表示。信息是对数据的解释,是数据在 特定场合下的具体含义。将相互关联的信息组合在一起形成的结构就是知识。要 使计算机能够像人类一样智能地运用知识进行问题的推理和求解,并给出正确的 回答,就必须能够将知识表示成机器能处理的、用于描述知识的数据结构。知识 的表示可以看成是对一组事物描述的约定,是一种把人类知识表示成机器能处理 的用于描述知识的数据结构。知识的表示有多种方式,由于问答系统不但要求能 抽取现成的句子作为答案,而且要能够在相应的文本中搜索出相关的蕴涵有知识 的答案点,并利用这些相关答案点之间的关系,组织完整的答案,这就要求各知 识点之间具有一定的联系,而语义网络是一种直观的知识表示方法,它着重强调 事物间的语义联系,能够动态地把事物的属性以及事物之间的各种语义联系显式 地表现出来,符合人们表达事物间关系的习惯,因此本系统采用语义网络表示法 来进行知识的表示。
第三章 问题处理
第三章 问题处理
对用户提出的问题进行处理是问答系统中必不可少的一个模块,是系统对问 题进行正确回答的前提,这个过程分析的效果对整个处理过程有着重要的影响。 问题处理一般来说有两种方法,即基于规则的方法和基于统计的方法。基于统计 的问题处理方法的基本思想是:利用大量的训练语料,让计算机自动地统计这些 语料中经常出现的疑问短语,从而将这些统计出来的疑问短语作为对问题进行分 类的依据。基于统计的方法能够避免因为人的主观性所带来的影响,但是它需要 大量的训练语料,由于目前缺乏大规模的训练语料,所以这种方法得到的结果尚 不能运用到实际的系统当中去。本文的问题处理采用的是基于规则的方法。基于 规则的问题处理的方法,是目前的问答系统领域中运用比较广泛的方法,它基本 上能够取得较为令人满意的结果,但规则的制定依靠的是人的先验知识,具有很 大的主观性,缺乏一定的客观性。
问题处理模块需要完成的工作有:对用户的自然语言形式的提问进行分词、 过滤停用词、划分 11 段等预处理之后,确定问题的类型[11] [12]和最终答案需要满足 的条件,同时将生成的一系列关键词以及根据语义资源对关键词所作的扩展,一 并提交给信息检索模块以便搜索出相关的段落。
3.1 问句预处理
汉语与西方拼音文字不同,汉语是表意文字,词是自然语言中最小的能独立 活动的有意义的语言成分,而汉语的书面表达方式是以汉字作为最小单位的,没 有类似英文空格之类的显式标示词的边界的标志,因而,识别出这些隐含的词语 边界,是汉语文本分析处理中首先要做的工作。然而,西方语言文字大多有形态 的变化,汉语却缺少形态的变化,而且目前汉语语法尚未形成规范化,这些都为 汉语文本的处理增加了难度,汉语文本的自动处理是多学科的,它需要语言学的 成果。
经过分词处理之后的文本是一个词串,而根据汉语本身的特点,其中每一个 词都可能包括多种词性和词义,如何根据上下文的语言环境确定出当前每个词的 词性就是词性标注所要做的工作。词性标注的正确与否将直接影响到问题的语义
电子科技大学硕士学位论文
分类和答案匹配的结果。词性标注的方法可以分为基于规则的方法和基于统计的
方法两种。早期的词性标注工作多为基于规则的方法,效果一般;后来采用基于 统计的方法,正确率有了很大的提高。近年来,人们试图把两种方法结合起来而 提高词性标注的准确性。本文分词和词性标注的工作是在本教研室已有的平台上 进行的。
当用户向系统提交一个问句时,系统首先要对问句进行分词和词性标注,对 中文文本进行分词处理,这在中文信息处理中是一个至关重要的工作,分词的准 确性将直接影响到系统的性能。分词过程完成以后,本系统还将对每一个汉语句 子划分 11 段,以方便提取用户提问中的关键词。借助于 11 段的思想来提取词汇 的方法前面已有介绍。
在用户输入的问句中,我们需要提取出对后面的检索有用的关键词。关键词 的提取将直接影响到后面的检索结果。但并不是问题中所有的词都可以作为关键 词,经过大量的统计可以发现,很多疑问词、语气词、助词,以及问句中的一些 前缀(如“请问”)等,他们对于文档段落的检索起不到什么作用,在处理中,可 以将这些词作为停用词而直接滤去。去除停用词依靠的是一张停用词表,凡是在 停用词表中出现的词都将作为停用词被过滤掉。表 3-1 列出了停用词表中的部分停 用词。
表 3-1 部分停用词
吧
哎呀
哎哟
按照
根据
罢了
本着
比如
比方
彼此
总共
后来
根据
另外
还有
最终
不如
那么
边
不过
别的
不光
不只
然后
利用划分 11 段的方法提取出用户提问中的词汇,并借助于停用词表滤去对段
落检索不起作用的停用词以后,用户以自然语言形式提出的问题将被转换为一系 列的关键词,但为了提高信息检索模块的召回率,有必要对提取出来的关键词作 适当的扩展。
3.2 问题类型及答案要求
为了能对用户的提问作出正确地回答,首先需要知道用户是针对什么进行提 问,也就是问题的类型是什么,同时还要明确最终给出的答案应该满足哪些要求。
第三章 问题处理
问题类型的识别是问题处理模块中的一个重要工作,由它可以确定所要找的答案
的语义类型以及答案的形式。问题类型的识别方法有很多,例如句法分析、启发 式算法(基于规则的算法)、基于机器学习的算法等。句法分析的方法可以根据问 题的语法信息判断出问题的类型,但是当前的句法分析器效果不是很好,尤其对 中文句法分析器而言更是如此。基于规则的方法可以达到很高的正确率,但是手 工构造规则的代价比较高。基于机器学习的方法不需要繁重的手工劳动来构建各 种规则,但是其正确率相对较低。本文使用的是一个简单的基于规则的分析方法。
问题类型的分析对问答系统有着至关重要的影响,因此越来越多的问答系统 都对该模块引起了高度的重视。当问题的类型以及答案需要满足的条件确定以后, 一旦候选段落中所要找的实体类型与之相匹配,则在答案抽取模块中,将很容易 确定候选答案中哪一个更符合用户的要求。
疑问词是确定问题类型及答案要求的主要依据,因此在确定问题类型时,首 先要找出问句中的疑问词,根据疑问词分析可能的答案类型。但是各疑问词的辨 别能力并不相同:由疑问词“哪里”可知是对“地点”进行提问,它是“专用疑 问词”,但如果句中出现“什么”,就不能仅靠疑问词来判断类型,因为很多类型 的问题都有这种“通用疑问词”,必须借助于问句中的另一个词(称为“问题焦点” 或“疑问修饰词”)才能进行正确的判断。所谓“问题焦点”,就是问题中说明问 题主要内容的一个名词或名词性短语,而问题的主要内容就是我们想要找到的答 案需要满足的条件。那么如何来确定“问题焦点”呢?一般情况下,问题中的第 一个名词或名词短语是问题焦点的可能性很大。问答系统的问句一般是由一句话 构成,首先取出该句中所有的名词,然后根据疑问词与句中名词的位置信息进行 判定,通过对大量问题的观察和统计,可以归纳出含有通用疑问词时问题类型的 判断规则如下:
(1)如果疑问词后紧跟着名词或名词短语,则可以将该名词或名词短语看作是 问题焦点;
(2)如果疑问词处于句子的末尾,则与该疑问词距离最近的名词或名词短语可 以看作是问题焦点;
(3)如果疑问词后为动词(如“是、为”等),则句子中最后出现的名词或名 词短语可以看作是问题焦点。
例如:“苹果落地的原因是什么?”中的“什么”是通用疑问词,它处于句子 的末尾,与该疑问词距离最近的名词是“原因”,因此将“原因”看成是问题焦点, 从而可以判断出问题的类型是“询问原因”。问题类型及答案要求的对应关系如表
PAGE
PAGE 26
电子科技大学硕士学位论文
3-2 所示。
表 3-2 问题类型及答案要求的对应关系
问题类型
疑问词举例
答案要求
询问时间
何时,哪一年,?
必须含时间信息
询问地点
哪里,哪个国家?
必须含地点信息
询问人物
谁,哪个同学?
对人物的描述
询问原因
为什么,为何,?
必须含原因信息
询问数量
多少,几,?
必须含数量信息
询问一般名词
什么+一般名词,?
对该名词的描述
询问状态
多+形容词:多长?
对状态的描述
询问动作
如何/怎样+动词?
对动作的描述
询问定义、事件
怎么回事?
必须为摘要形式
问题类型不同,答案的形式往往也不同:答案可能是句子,也可能是摘要的
形式。我们规定对事件和人物等的描述性答案为摘要的形式,其余为单句。例如, “9.11 事件是怎么回事?”它的答案应该是一段摘要信息,从而使用户能够清楚 地了解这个事件而又不显累赘。另外,需要注意的是,在对人物进行提问时,即 当用户的提问中含有疑问代词“谁”时,例如:“谁是??”或者“?是谁?”,这 类问题最终返回给用户的答案中,首先必须含有标注为人名的实体,而且,这类 问题的答案有时候不能仅仅只包括人名。例如:“贝多芬是什么人?”这个问题的 答案应该是对人名“贝多芬”的一段描述信息,这种信息有时候可能是对应人名 实体所进行一系列动作以后得到的摘要信息。
3.3 关键词及其扩展
问句关键词的提取将影响检索的效果,关键词主要由名词、动词、形容词、 限定性副词等组成,不包含提问中的疑问词。关键词分一般性关键词和“必须含 有”的关键词,“必须含有”的关键词指专有名词、限定性副词(“第一、最高” 等)、时间、数词等,对问题有很强的限制作用,不包含这类关键词的段落几乎不 会有正确答案。在这里,我们主要借助于划分11段的思想来提取关键词。
但是答案段落里的词往往不是提问时出现的关键词,而是其同义或近义扩展, 为了提高检索系统的召回率,需要对关键词进行扩展。例如“2008年奥运会在哪 里举行?”,答案可能是“2008年奥运会将在中国北京举办。”问句中用的是“举行”, 答案中却使用了“举办”,这可能会造成关键词的查找失败,可见对关键词进行扩
第三章 问题处理
展很有必要。对关键词进行扩展以后,虽然提高了系统的召回率,但如果扩展不
适当会极大地降低检索的准确率,因此一般的问答系统对关键词的扩展都是很谨 慎的。一般的方法是使用同义词扩展、语义扩展等,我们从两方面来进行关键词 的扩展:
(1)利用《知网》的语义词典,将所有提取出来的关键词的同义词作为扩展的 关键词:如果两个词在语义词典中的英文词和解释相同,则认为它们是同义词;
(2)根据问题的类型来扩展关键词:询问地点时,把“在”、“位于”、“地处” 等作为关键词进行扩展;询问时间时,把“年”、“月”、“日”等作为关键词的扩 展;询问原因时,把“之所以”、“是因为”作为关键词进行扩展;询问数量时, 把单位量词作为关键词的扩展;
3.4 本章小结
对问题进行处理的方法主要有两种:一种是基于规则的方法,另外一种是基 于统计的方法。基于统计的问题处理方法是利用大量的训练语料,让计算机自动 地统计出语料中经常出现的疑问短语,并将它们作为确定问题类型的依据,这种 方法能避免人的主观性带来的影响,但由于目前缺乏大规模的训练语料,所以本 文的问题处理模块使用的是基于规则的方法。基于规则的问题处理的方法是在问 句预处理、问题类型及答案需要满足的条件的确定、关键词的提取和关键词的扩 展等内容上来进行的。
问题处理模块的输入是用户以自然语言的形式提出的问题,它的输出是问句 的类型和答案需要满足的条件,并把这些关键词及其扩展提交给后面的信息检索 模块来搜索相关的段落。为了提高检索的召回率,增加得到正确答案的机会,往 往需要根据语义资源来对关键词语进行扩展,所以该模块的输出不仅包含问题中 的关键词,还包括根据语义资源等进行扩展后得到的关键词。
电子科技大学硕士学位论文
第四章 信息检索
所谓信息检索[13],就是将信息按照一定的方式组织存储起来,并根据用户的 查询字串,从一系列表示信息的非结构化数据(特别是非结构化的文本数据)中, 搜寻与查询字串相关信息的过程。“信息检索”这一称谓最早是 1952 年由 Calvin N. Mooers 提出的,其原意包括海量信息的存储和查找两方面的内容,现在这个概念 通常更加侧重于信息的查找方面。目前,信息检索是一个相对比较成熟的技术。 随着因特网的迅猛发展和信息时代的到来,用户经常需要在信息海洋里查找信息, 信息检索技术就是在这个环境下出现的,它能够帮助用户高效而准确地进行相关 信息的定位。
在中文问答系统中,信息检索模块将利用问题处理模块输出的关键词及其扩 展来搜索相关的段落,同时按照权重的大小依次将相关段落交给答案抽取[14] [15]模 块。在信息检索模块中,具体的处理过程包括信息索引[16]和段落选取两个阶段。 系统在读入文档以后,首先将对文档进行预处理,即进行分词、词性标注以 及特征项的提取等处理,然后根据特征项对文档建立相应的索引,其主要目的是
便于实现对包含特定关键词段落的快速定位。 信息检索的基础性工作是:对原始文档预处理后,将基本元素的位置信息记
录在索引表中。信息索引就是创建文档的特征记录,通常以倒排表方式建立。当 用户提问时,系统将根据问题处理模块的关键词进行搜索,将搜索出来的段落取 交集输出。索引结构建立完以后,信息检索的任务就是对相关段落按权重大小排 序,然后依次输出。
4.1 信息检索的定义与发展
信息检索技术起源于人们为方便查询和访问,而将文献资料重新整理与分类 的手工劳动。信息检索技术产生于 20 世纪 50 年代,经历了长期缓慢的发展阶段。 现代信息检索技术则是在计算机技术和通信技术迅猛发展的基础上建立起来的。 利用计算机进行信息检索具有速度快、效率高等特点,目前已经成为人们获取信 息的主要手段之一。从 20 世纪 90 年代开始至今,随着国际互联网技术的诞生和 发展,信息检索技术和自然语言处理技
- VIP免费下载
- 下载文档
- 收藏
- 分享 赏
- 0
文档评论(0)