随着社会的日益信息化,人们越来越强烈地希望用自然语言同计算机交流。自然语言理解是计算机科学中的一个引人入胜的、富有挑战性的课题。从计算机科学特别是从人工智能的观点看,自然语言理解的任务是建立一种计算机模型,这种计算机模型能够给出象人那样理解、分析并回答自然语言(即人们日常使用的各种通俗语言)的结果。
现在的计算机的智能还远远没有达到能够象人一样理解自然语言的水平,而且在可预见的将来也达不到这样的水平。因此,关于计算机对自然语言的理解一般是从实用的角度进行评判的。如果计算机实现了人机会话,或机器翻译,或自动文摘等语言信息处理功能,则认为计算机具备了自然语言理解的能力。
第一部分 了解自然语言理解技术
自然语言处理就是研究如何能让计算机理解并生成人们日常所使用的(如汉语、英语)语言,使得计算机懂得自然语言的含义,并对人给计算机提出的问题,通过对话的方式,用自然语言进行回答。目的在于建立起一种人与机器之间的密切而友好的关系,使之能进行高度的信息传递与认知活动。自然语言理解系统可以用作专家系统、知识工程、情报检索、办公室自动化的自然语言人机接口,有很大的实用价值。
自然语言处理研究在电子计算机问世之初就开始了,并于 50年代初开展了机器翻译试验。当时的研究方法还不能称作带有"智能"。到了60年代乔姆斯基的转换生成语法得到广泛的认可,生成语法的核心是短语结构规则,分析句子结构的过程就是利用规则自顶向下或自底向上的句法树生成过程。
由于认识到生成语法缺少表示语义知识的手段,在70年代随着认知科学的兴盛,研究者又相继提出了语义网络、CD理论、格框架等语义表示理论。这些语法和语义理论经过各自的发展,逐渐开始趋于相互结合。到80年代一批新的语法理论脱颖而出,具有代表性的有词汇功能语法(LFG)、功能合一语法(FUG)和广义短语结构语法(GPSG) 等。
这些基于规则的分析方法可以称之为自然语言处理中的"理性主义"。现有的手段虽然基本上掌握了单个句子的分析技术,但是还很难覆盖全面的语言现象,特别是对于整个段落或篇章的理解还无从下手。
与"理性主义"相对的是"经验主义"的研究思路,主要是指针对大规模语料库的研究。语料库是大量文本的集合。计算机出现后,语料可以被方便地存贮起来,利用计算机查找也很容易。随着电子出版物的出现,采集语料也不再成为困难。最早于60年代编制的Brown和LOB两个计算机语料库,分别具有100万词次的规模。进入90 年代可以轻易列举出的语料库有几十个之多,象DCI、ECI、ICAME、BNC、LDC、 CLR等,其规模最高达到109数量级。
对语料库的研究分成3个方面:工具软件的开发、语料库的标注、基于语料库的语言分析方法。采集到以后未经处理的生语料不能直接提供有关语言的各种知识,只有通过词法、句法、语义等多层次的加工才能使知识获取成为可能。加工的方式就是在语料中标注各种记号,标注的内容包括每个词的词性、语义项、短语结构、句型和句间关系等。随着标注程度的加深语料库逐渐熟化,成为一个分布的、统计意义上的知识源。利用这个知识源可以进行许多语言分析工作,如根据从已标注语料中总结出的频度规律可以给新文本逐词标注词性,划分句子成分等。
语料库提供的知识是用统计强度表示的,而不是确定性的,随着规模的扩大,旨在覆盖全面的语言现象。但是对于语言中基本的确定性的规则仍然用统计强度的大小去判断,这与人们的常识相违背。这种"经验主义"研究中的不足要靠"理性主义" 的方法来弥补。两类方法的融合也正是当前自然语言处理发展的趋势。
自然语言理解系统的发展阶段
自然语言理解系统的发展可以分为第一代系统和第二代系统两个阶段。第一代系统建立在对词类和词序分析的基础之上,分析中经常使用统计方法;第二代系统则开始引进语义甚至语用和语境的因素,几乎完全抛开了统计技术。
第一代自然语言理解系统又可分为四种类型:
(1)特殊格式系统
早期的自然语言理解系统大多数是特殊格式系统,根据人机对话内容的特点,采用特殊的格式来进行人机对话。1963年,林德赛(R.Lindsay)在美国卡内基技术学院用IPL-V表处理语言设计了SAD-SAM系统,就采用了特殊格式来进行关于亲属关系方面的人机对话,系统内建立了一个关于亲属关系的数据库,可接收关于亲属关系方面的问题的英语句子提问,用英语作出回答。1968年,波布洛(D.Bobrow)在美国麻省理工学院设计了STUDENT系统,这个系统把高中代数应用题中的英语句子归纳为一些基本模式,由计算机来理解这些应用题中的英语句子,列出方程求解,并给出答案。六十年代初期,格林(B.Green)在美国林肯实验室建立了baseBALL系统,也使用IPL-V表处理语言,系统的数据库中存贮了关于美国1959年联邦棒球赛得分记录的数据,可回答有关棒球赛的一些问题。该系统的句法分析能力较差,输入句子十分简单,没有连接词,也没有比较级形式的形容词和副词,主要靠一部机器词典来进行单词的识别,使用了14个词类范畴,所有的问题都采用一种特殊的规范表达式回答。
(2)以文本为基础的系统
某些研究者不满意在特殊格式系统中的种种格式限制,因为就一个专门领域来说,最方便的还是使用不受特殊格式结构限制的系统来进行人机对话,这就出现了以文本为基础的系统,1966年西蒙(R.F.Simmons)、布尔格(J.F. Burger)和龙格(R.E. Long)设计的PROTOSYNTHEX-I系统,就是以文本信息的存贮和检索方式工作的。
(3)有限逻辑系统
有限逻辑系统进一步改进了以文本为基础的系统。在这种系统中,自然语言的句子以某种更加形式化的记号来替代,这些记号自成一个有限逻辑系统,可以进行某些推理。1968年,拉菲尔(B.Raphael)在美国麻省理工学院用LI SP语言建立了SIR系统,针对英语提出了24个匹配模式,把输入的英语句子与这些模式相匹配,从而识别输入句子的结构,在从存贮知识的数据库到回答问题的过程中,可以处理人们对话中常用的一些概念,如集合的包含关系、空间关系等等,并可进行简单逻辑推理,机器并能在对话中进行学习,记住已学过的知识,从事一些初步的智能活动。1965年,斯莱格勒(J.R. Slagle)建立了DEDUCOM系统,可在情报检索中进行演绎推理。1966年,桑普逊(F.B.Thompson)建立了DEACON系统,通过英语来管理一个虚构的军用数据库,设计中使用了环结构和近似英语的概念来进行推理。1968年,凯罗格(C.Kellog)在IBM360/67计算机上,建立了CONVERSE系统,该系统能根据关于美国120个城市的1000个事实的文件来进行推理。
(4)一般演绎系统
一般演绎系统使用某些标准数学符号(如谓词演算符号)来表达信息。逻辑学家们在定理证明工作上取得的全部成就,就可以用来作为建立有效的演绎系统的根据,从而能够把任何一个问题用定理证明的方式表达出来,并实际地演绎出所需要的信息,用自然语言作出回答。一般演绎系统可以表达那些在有限逻辑系统中不容易表达出来的复杂信息,从而进一步提高了自然语言理解系统的能力。1968-1969年,格林和拉菲尔建立的的QA2,QA3系统,采用谓词演算的方式和格式化的数据(formated data)来进行演绎推理,解答问题,并用英语作出回答,这是一般演绎系统的典型代表。
1970年以来,出现了一定数量的第二代自然语言理解系统,这些系统绝大多数是程序演绎系统,大量地进行语义、语境以至语用的分析。其中比较有名的系统是LUNAR 系统、SHRDLU系统、MARGIE系统、SAM系统、PAM系统。
LUNAR系统是伍兹(W.Woods)于1972年设计的一个自然语言情报检索系统。这个系统采用形式提问语言(formal query language)来表示所提问的语义,从而对提问的句子作出语义解释,最后把形式提问语言执行于数据库,产生出对问题的回答。
SHRDLU系统是维诺格拉德(T.Winograd)于1972年在美国麻省理工学院建立了一个用自然语言指挥机器人动作的系统。该系统把句法分析、语义分析、逻辑推理结合起来,大大地增强了系统在语言分析方面的功能。该系统对话的对象是一个具有简单的 "手"和"眼"的玩具机器人,它可以操作放在桌子上的具有不同颜色、尺寸和形状的玩具积木,如立方体、棱锥体、盒子等,机器人能够根据操作人员的命令把这些积木捡起来,移动它们去搭成新的积木结构,在人机对话过程中,操作人员能获得他发给机器人的各种视觉反馈,实时地观察机器人理解语言、执行命令的情况。在电视屏幕上还可以显示出这个机器人的模拟形象以及它同一个真正的活人在电传机上自由地用英语对话的生动情景。
MARGIE系统是杉克(R.Schank)于1975年在美国斯袒福人工智能实验室研制出来的。该系统的目的在于提供一个自然语言理解的直观模型。系统首先把英语句子转换为概念依存表达式,然后根据系统中有关信息进行推理,从概念依存表达式中推演出大量的事实。由于人们在理解句子时,总要牵涉到比句子的外部表达多得多的内容,因此,该系统的推理有16种类型,如原因、效应、说明、功能等等,最后,把推理的结果转换成英语输出。
SAM系统是阿贝尔森(R.Abelson)于1975年在美国耶鲁大学建立的。这个系统采用"脚本"(script)的办法来理解自然语言写的故事。所谓脚本,就是用来描述人们活动(如上饭馆、看病)的一种标准化的事件系列。
PAM系统是威林斯基(R.Wilensky)于1978年在美国耶鲁大学建立的另一个理解故事的系统。PAM系统也能解释故事情节,回答问题,进行推论,作出摘要。它除了 "脚本"中的事件序列之外,还提出了"计划"(plan)作为理解故事的基础。所谓" 计划",就是故事中的人物为实现其目的所要采取的手段。如果要通过"计划"来理解故事,就要找出人物的目的以及为完成这个目的所采取的行动。系统中设有一个"计划库"(plan box),存贮着有关各种目的的信息以及各种手段的信息。这样,在理解故事时,只要求出故事中有关情节与计划库中存贮的信息相重合的部分,就可以理解到这个故事的目的是什么。当把一个一个的故事情节与脚本匹配出现障碍时,由于"计划库"中可提供关于一般目的的信息,就不致造成故事理解的失败。例如,营救一个被暴徒抢走的人,在"营救"这个总目的项下列若干个子目的,包括到达暴徒的巢穴以及杀死暴徒的各种方法,就可以预期下一步的行为。同时能根据主题来推论目的。例如,输入故事:"约翰爱玛丽。玛丽被暴徒抢走了。"PAM 系统即可预期约翰要采取行动营救玛丽。故事中虽然没有这样的内容, 但是, 根据计划库中的"爱情主题",可以推出 "约翰要采取行动营救玛丽"的情节。
上述的系统都是书面的自然语言理解系统,输入输出都是用书面文字。口头的自然语言理解系统,还牵涉到语音识别、语音合成等复杂的技术,显然是更加困难的课题,口头自然语言理解系统的研究近年来也有进展。
我国的发展状况
我国自然语言理解的研究起步较晚,比国外晚了17年。国外在1963年就建成了早期的自然语言理解系统,而我国直到1980年才建成了两个汉语自然语言理解模型,都以人机对话的方式来实现。
八十年代中期,在国际新一代计算机激烈竞争的影响下,自然语言理解的研究在国内得到了更多的重视,"自然语言理解和人机接口"列入了新一代计算机的研制规划,研究单位增多了,研究队伍也壮大了。
关于HNC理论
HNC理论是"Hierarchical Network of Concepts(概念层次网络)"的简称,是关于自然语言理解处理的一个理论体系。它以概念化、层次化、网络化的语义表达为基础,所以称它为概念层次网络理论。HNC理论把人脑认知结构分为局部和全局两类联想脉络,认为对联想脉络的表达是语言深层(即语言的语义层面)的根本问题。
HNC理论的中心目标是建立自然语言的表述和处理模式,使计算机能够模拟人脑的语言感知功能。该理论使自然语言理解获得了突破性的进展,它所蕴涵的精深丰富的思想对人工智能、语言学、计算机科学和认知科学等都具有重要的理论和应用价值,对中文信息处理和汉语研究尤其具有实际意义。
HNC理论完全摆脱了我国现有的这套语法学的束缚,而从语言的深层入手,以语义表达为基础,为汉语理解开辟了一条新路。HNC理论提出了可供工程实现的完整的自然语言理解的理论框架,它是一个面向整个自然语言理解的强大而完备的语义描述体系,包括语句处理、句群处理、篇章处理、短时记忆向长时记忆扩展处理、文本自动学习处理。HNC理论的出发点就是运用两类联想脉络来"帮助"计算机理解自然语言。自然语言的词汇是用来表达概念的,因此,HNC建立的词汇层面的局部联想脉络体现为一个概念表达体系。概念分为抽象概念与具体概念。HNC理论的概念表达体系侧重于抽象概念的表达。对具体概念采取挂靠近似表达方法。HNC理论认为应该从多元性表现和内涵两个方面来描述概念。
它创立了五元组用来表达抽象概念的多元性表现,对抽象概念的内涵采用网络层次符号来表达。其网络层次符号包含三大语义网络:基元概念语义网络、基本概念语义网络和逻辑概念语义网络。HNC的五元组符号和三大语义网络的层次符号组合起来就可完成对抽象概念的完整表达,从而为计算机理解自然语言的语义提供了有力的手段。
自然语言理解技术大致可分为机器翻译、语义理解及人机会话技术几个方面。其中机器翻译(machine translation),又称机译(MT),是利用计算机把一种自然语言转变成另一种自然语言的过程。智能搜索引擎在这一领域的研究将使得用户可以使用母语搜索非母语的网页,并以母语浏览搜索结果。语义理解通过将语言学的研究成果和计算机技术结合在一起,实现了对词语在语义层次上的理解。人机会话技术可以为计算机提供下一代的人机交互接口,实现从文字接口、图形接口到自然语言接口的革命,同时在家用电器的人性化设计方面有着广泛的应用前景,其技术内涵主要包括语音识别、语音合成两个核心部分。
在语义理解的整个过程中,智能分词技术是最初的一个环节,它将组成语句的核心词提炼出来供语义分析模块使用。在分词的过程中,如何能够恰当地提供足够的词来供分析程序处理,并且过滤掉冗余的信息,这是后期语义分析的质量和速度的重要前提。尤里卡的智能分词避免了传统分词技术在拆分时产生的歧义组合。从而为语义理解的处理提供了良好的原始材料。同时,在分词的过程中,知识库当中的同义词会被逐个匹配并同时提交给语义理解模块使用,这样处理过的句子,不仅提供了原始的句型,还同时搭载了语句的概念部分。
第二部分 在搜索技术中的应用
众所周知,随着互联网的迅速发展和广泛普及而导致网上信息爆炸性增长。如何在庞大的互联网上获得有价值的信息已成为网民日益关注的问题。这种以一定的策略在互联网中搜集、发现信息,对信息进行理解、提取、组织和处理,并为用户提供检索服务,从而起到信息导航的目的的搜索技术的出现为网民快速找到所需信息带来了福音。
但是,2001年,Roper Starch的调查指出,36%的互联网用户一个星期花了超过2个小时时间在网上搜索;71%的用户在使用搜索引擎的时候遇到过麻烦;平均搜索12分钟以后发现搜索受挫;搜索受挫中46%都是因为链接错误;绝大部分(86%)的互联网用户感到应当出现更有效的、准确的信息搜索技术。另一项由Keen所做的调查显示,人们平均每天有四个问题需要从外界获取答案;其中31%的人使用搜索引擎寻找答案;平均每周花费8.75个小时找寻答案;53.3%时间花在从旁人那里获得答案,29%的时间花在亲戚朋友身上,24.3%的是时间花在销售商那里;网上查找答案的,半数以上都不成功;他们每周将花费14.5美元以上,以获取正确的信息。
从这些调查数据中不难看出,尽管搜索服务提供者在研发搜索技术方面已经花费了大量的时间和精力,但是目前的搜索引擎仍然存在不少的局限性,比如信息丢失、返回信息太多、信息无关,这使得网民对于现有的搜索技术仍然不满,期盼更完美的搜索技术的出现。
由于自然语言理解技术的三方面功能,即机器翻译、语义理解及人机会话技术能够赋予搜索技术更具人性化、方便易用的特点。因此,近年来在搜索界得到了广泛的应用。无论是国内外的搜索引擎,都可以寻觅到语义理解、机器翻译的踪迹。
目前在搜索引擎方面主要应用的自然语言理解技术是机器翻译与语义理解技术。应用了这些技术的搜索引擎我们称之为智能搜索引擎。由于它将信息检索从目前基于关键词层面提高到基于知识(或概念)层面,对知识有一定的理解与处理能力,因而具有信息服务的智能化、人性化特征。它允许网民采用自然语言进行信息的检索,为他们提供更方便、更确切的搜索服务。
与传统的目录查询、关键词查询模式相比,自然语言查询的优势体现在:一是使网络交流更加人性化;二是使信息查询变得更加方便、快速和准确。现在,已经有越来越多的搜索引擎宣布支持自然语言搜索特性。比如国外的搜索引擎Google,,AskJeeves;国内的搜索引擎网易、尤里卡、问一问、21世纪互联、孙悟空、悠游等。在这里我们将重点介绍应用语义理解技术的中文智能搜索引擎。
首先以尤里卡搜索引擎为例简要说明一下这种智能搜索的过程。
实现智能搜索的过程主要分三部分:语义理解、知识管理和知识检索。其中,知识库是实现智能搜索的基础和核心。知识库提供的是语义理解中最终将要提供给用户的结果,同互联网的状况相同,人类的知识结构和容量都在飞速膨胀,所以知识库也需要有良好的适应能力。在语义理解的整个过程中,智能分词技术是最初的一个环节,它将组成语句的核心词提炼出来供语义分析模块使用。在分词的过程中,如何能够恰当地提供足够的词来供分析程序处理,并且过滤掉冗余的信息,这是后期语义分析的质量和速度的重要前提。
加入了知识库处理技术的智能分词能够避免了传统分词技术在拆分时产生的歧义组合。从而为语义理解的处理提供了良好的原始材料。知识检索可以利用语义分析的结果,对知识库进行概念级的检索,对用户提出问题给出准确度最高、相关度最强的检索结果。比如:"我想在北京找工作?"。首先进行语义理解,在知识库中"找工作"属于求知招聘的范畴,所以分析出用户想查询"在北京求职"。然后利用"在北京求职"这个概念查询知识库,得出答案。
下面我们再来看看各家宣称应用了自然语言理解的搜索技术有哪些特点。
问一问(www.weniwen.com)自然语言检索
问一问是由闻易网科技有限公司(Weniwen Technologies, Inc.)开发的智能搜索引擎。它允许用户以自然的、整句的方式、以汉语或英语发出查询请求。易于快速地、以比较经济的方式扩展到不同的语言。 并可以同时从两种语言中识别出词汇。使用自然语言处理(NLP)技术,与传统的、基于关键词匹配的搜索技术相比,NLP技术可使问一问"理解"请求中的上下文和含义。通过使用NLP技术,问一问可以更准确地检索出适当的信息。尤其适用于旅游/休闲、金融以及消费品工业的、正在寻求可增强消费者通过Internet来访问其信息或进行自动交易的途径的大企业或门户。
21ilink(www.21ilink.com)中文智能搜索引擎
世纪讯联公司开发的基于自然语言处理和人工神经网络的智能互动技术解决了传统信息分类中的一些语意交叉词汇抽象概念、边缘类别的信息查询问题实现了模糊查询。查询过程突出了个性化、人性化。采用了自然语言的语句单元,还可设定地方语言特色。界面更加友好,能够满足不同层次,不同查询目的客户的特殊需求。并能引导查询者快速准确地找到所需要的信息。此项智能搜索技术采用国内独创的中文问答方式,并兼容了其他传统的搜索引擎的查询方式。支持基于概念的信息搜索、行业化、专业化的智能搜索、客户定制的商务模型,还可完成管理、追踪、支付等一系列的供应链的分析、行业研究等咨询项目。实现了多方协作,业务拓展的无缝结合。
此项智能搜索系统是将现代智能计算技术、交换技术、网络技术、数据库技术融为一体,而建成的一个面向客户的,全方位高质量的服务体系。采用了独有的Smart Hit(智能语义)、和Kengine(知识引擎)。开放性、先进性和超前性均大大领先于同类系统。全套系统拥有完整的智能网络接入服务功能,支持各网络平台的语音文字、数据及图像,是一种智能多媒体平台。平台无中断,支持宽频网络,满足对数据库全内容覆盖要求。支持概念检索、动态页面检索。
孙悟空(search.chinaren.com)搜索引擎
孙悟空搜索引擎是ChinaRen开发并拥有自主版权的产品,能按照用户的需求,搜索大陆和港澳台的中文网页。孙悟空搜索不仅可用传统的关键词搜索方式,更是在所有中文搜索引擎里率先采用了提问式搜索,这是ChinaRen研究并实现的一种智能中文处理技术。通过该技术,您可以直接通过提出问题的方式搜索您想要找的内容,这样不仅更符合我们平时的习惯,而且准确率更高。孙悟空搜索引擎拥有强大的搜索能力,提高搜索的智能性和准确性;智能的评价体系,保证检索结果高度相关。
悠游(www.goyoyo.com.cn)中文智能搜索引擎
北京悠游科技开发有限公司(Beijing Goyoyo)成立于1998年10月,是一个以中文自然语言处理技术为基础建立的互联网信息咨询及技术服务网站(www.goyoyo.com)。悠游中文智能搜索引擎通过www.goyoyo.com 提供主要服务。为了更贴近用户的语言使用习惯,凭借先进的自然语言处理技术,悠游中文智能搜索引擎充分考虑到中文语句的表达结构以及丰富多样的词语表达形式,通过"口语化的提问,智能化的结果" ,让用户在查询时只需用口语化的表达方式输入欲查询的关键词、自然语句甚至输入中英文混合语句,选择要查询的网站或网页,单击"搜索"按纽,悠游中文智能搜索引擎就会根据您的查询请求自动分析语句,并且提炼主题,找到满意的答案,满足了广大用户的各种查询需求,使您能够悠闲自得的在网上畅游。
下面举例说明应用了语义理解技术的搜索引擎与传统搜索引擎相比的优势。
1、更高的搜索的易用性
由于智能搜索引擎具有智能分词功能,因此使得查询变得更为简单、易于操作。以网易为例说明:需要搜索"刘德华的最新个人专辑",只需要将整个搜索内容全部输入到搜索框中就可以找到相关的内容;而在传统的搜索引擎中则必须遵守搜索的基本数学规则,输入"刘德华 最新 个人专辑"才能够找到搜索的内容。显然在搜索的易用性方面智能搜索引擎具有明显的优势。
2、搜索结果的范围定位准确
由于采用知识(概念)检索技术,明确和缩小的搜索范围,减少对无用信息的搜索。以尤里卡为例说明:要查找"北京的天气"只需要输入"北京天气"就可以找到相关程度甚高的北京的天气预报,同时还会给出相关的天气的内容。而在传统搜索引擎的查询结果中不但有北京天气的内容,还会给出所有与北京天气字样有关的各种内容,增大了用户查找搜索结果的难度。
3、搜索结果的智能性
由于智能搜索引擎有综合知识库为背景,使得信息检索与导航服务更具有智能性。知识库中的知识有助于解决表达差异的问题。所谓表达差异就是用户使用不同的词表达同一概念。而知识库中关于同义词的定义正好可以消除这种表达差异带来的检索困难。