自然语言处理技术与语言深度计算,本文主要内容关键词为:自然语言论文,深度论文,语言论文,技术论文,此文献不代表本站观点,内容供学术参考,文章仅供参考阅读下载。
语言能力(包括口语能力和书面语言能力)是人的首要能力,是其综合能力的重要组成部分,也是运用和展现综合能力的最重要手段。人终其一生,都在不断地学习语言及其表达的各种知识。正常人很自然地便掌握了日常生活中使用的母语(口语),但读、写能力以及第二语言的听、说、读、写能力却需要专门学习。 语言能力需要关注的一个领域是机器的语言能力,即机器理解和运用人类语言的能力,亦即自然语言处理技术。《国家中长期科学和技术发展规划纲要(2006-2020年)》已将中文信息处理列为前沿技术。语言能力还包括运用机器语言的能力,即将自然语言处理技术应用到日常学习、研究、生产中,以提高效率和水平。利用互联网上的某个在线翻译系统进行不同语言间的互译就是一个应用实例。语言信息产业将自然语言处理技术转化为生产力,成为语言产业和信息产业的分支。 一、语言知识库是自然语言处理的基础 通常人与人的语言交流很自然,这是因为交流总是在一定的环境中进行,交流双方的知识背景一定有共同的部分,而且对交流的目的大体上也有预设。现在的计算机还不能像人一样了解环境与理解语言的内容,将语言作为处理对象时,就会产生各种各样的歧义。面对 例1 白天鹅飞走了。 例2 白天鹅可以看家。 这两句话,机器要判断其中的汉字串“白天鹅”究竟是“白/天鹅”还是“白天/鹅”。这是最基本的一类消歧问题(词语切分歧义)。提升机器语言能力的第一步就是要增强机器对自然语言歧义的消解能力。机器翻译系统通常以句子作为处理对象,机器读懂源语言句子的表现形式之一是正确地分析出句子的句法结构(通常用“句法树”表示)。针对 例3 顾客认为他是老板。 例4 同学选举他当班长。 这两句话,机器翻译系统通过分析,如果得到它们正确的句法树,就不难给出对应的英语译文。利用句法规则进行句法分析,首先要把构成句子的词的序列抽象为词性序列。这两个句子的词性序列一样,即“名词动词代词动词名词”,但它们的句法结构不一样,这也是一种歧义:句法结构歧义。产生这种歧义的原因是它们中的第一个动词表现的句法属性可以是不一样的:“认为”带小句宾语,而“选举”是兼语动词。分析程序如果能从某个地方获取这样的知识就能消解歧义。《现代汉语语法信息词典》(简称GKB)①就为自然语言处理系统提供了这样的语法知识。回到例1和例2,机器中只要配备了“属于鸟类的天鹅会飞”、“(在南方农村)家禽鹅白天可以看家,不会飞”等常识性知识,其中的歧义就可以消解。 包含语言的词汇、句法、语义知识的语言知识库是自然语言处理系统实现各种功能的基础设施,其规模和质量在很大程度上决定了自然语言处理系统的成败。为了支持机器语言能力的提示,北京大学计算语言学研究所历时20余年建成“综合型语言知识库”(简称CLKB),涵盖了词、词组、句子、篇章各级单位和词法、句法、语义各个层面,从汉语向多语言辐射,从通用领域深入到专业领域。 CLKB的系列化语言知识库虽然涵盖各级语言单位和各个知识层面,但其重心仍在词语级的句法层面知识上,更大的语言单位涉及较少,语义层面的知识相对贫乏。机器若翻译 例5 她的仪表精密。 例6 她的仪表端庄。 这两句话,必须消解“仪表”的词义歧义。《现代汉语语法信息词典》的名词库中收入了两个“仪表”,作了同形词的区分,并分别描述它们的语法属性:一个“仪表”可受数量短语修饰,且量词可为个体量词,如“台,个”等;另一个“仪表”不受数量短语修饰。但在这两个例句中没有数量短语,上述属性对“仪表”的词义消歧发挥不了作用。为了提升机器消解这类歧义的能力,另外一个描述词语语义信息的语言知识库即“现代汉语语义词典”(简称CSD)应运而生。自动分析程序调用CSD的形容词库对“端庄”、“精密”的描述,就能判断例句5中的“仪表”指的是仪器,而例句6中的“仪表”指的是人的品貌。 CLKB和CSD等知识库为机器语言能力的提升起到了基础设施的重要作用。现有的语言知识库尚不能完全满足自然语言处理的需要,有待继续发展。 二、人类语言机制理解制约计算语言学发展 某个在线机器翻译系统实现不同语言问某些类型文本的互译或确有不俗的表现,但对翻译诗歌却力不从心,Web搜索漏检和错检的现象也比比皆是。这说明,现在计算机处理自然语言还带有很大的盲目性。实际上,自然语言处理是数值计算机在非数值领域最早的应用,经过60多年的发展,虽然也取得了长足的进步,但无论同计算机技术本身相比较,还是同其在其他各个领域的应用相比较,其发展速度相当缓慢,在自然语言理解的层面上至今未能取得突破性进展。究其原因,以下三点值得注意:第一,语言现象无限,而可利用的计算资源总是有限的,难免顾此失彼;第二,语言既是对象,又是工具,有时难以清晰区分此两个层面的内容;第三,最关键是人类对自身的语言机制不甚了解。人类的语言机制与大脑密切相关,但人们无论对大脑的认知功能还是大脑与语言的相互作用机制,仍所知甚少。观察大脑工作与计算运算之间的差异,有助于认识机器语言能力的局限性、探索其提升途径。 以机器翻译为例,计算机内部实现翻译的流程是把自然语言的一种表现形式(输入的或机内的)变换成另一种表现形式(机内的或输出的)。计算机能够实现此任务,有赖于其高速数值运算、逻辑判断功能与海量存储记忆功能,而实现前提则是计算语言学所提供的理论模型,即“语言的计算模型”,简称“语言模型”。 所谓语言模型,是指根据研究及应用的需要,将过于复杂的人类语言加以简化、变换,采用形式化表示而得到的数学模型。进一步再将数学模型离散化即数值化,成为可编制程序在计算机上实现其表达。通过“向量空间模型”,②可对两个自然语言文本(例7和例8)的相似性加以比较:用N维空间的向量近似地替代文本,文本的相似性便可用向量问的相似度(如夹角余弦,其值落在[0,1]区间上)进行度量。 例7 他是国安队的一个球迷。 例8 他是安国队的一个球迷。 对于N维空间的坐标系可以有不同的选择。最直接、最简单的是将用到的N个不同的汉字作为坐标轴,N维向量在各个坐标轴上的分量可定义为该汉字在每个文本中出现的次数(当两个文本的长度不等时可改用频率)。不过,以汉字为考察对象,计算机就会将例7和例8判定为完全相同(相似度为1)。但采用同样的模型,把句子根据语言学知识按词切开,得到: 例9 他/是/国安队/的/一/个/球迷 例10 他/是/安国队/的/一/个/球迷 以词作为N维空间的坐标轴,就能判定这两句话尽管相似,但并不一样(相似度小于1)。这样的理论模型及实现技术在一定程度上模拟了人的智能,且在判断大量文本的相似性时能发挥人力所不能及的作用。但是这样的模型仍有局限性,人读唐代崔颢的《黄鹤楼》与李白的《登金陵凤凰台》,会发现这两首诗很相像,而现在的计算机却无法做到。 歧义消解与知识边界问题也显示了人脑与机器之间的巨大差异。任何一个自然语言片段(包括实例或从实例抽象出来的某种形式),如果脱离其上下文或使用环境(包括涉及的背景知识)都有歧义。既然如此,无论人还是机器都要从若干种意义选项中挑选一个适合当前上下文或使用环境的,这就是歧义消解。在大多数情况下,人在阅读或交谈时会即时调用大脑中存储的词汇、句法、语义以及语境知识,并进行分析与综合,通常感觉不到歧义,即人能很自然地消解歧义。机器则不同,只能在某个范围内相对孤立地处理对象,而这需要进行复杂的计算,甚至包括对各种选项的逐一考察。如某报2014年4月4日头版有标题“北约警告俄能数天内占领乌克兰(第二版)”,意即该文章在第二版。仅看这个标题,存在歧义: 解(1)北约警告:俄能数天内占领乌克兰 解(2)北约警告俄:能数天内占领乌克兰 目前自然语言处理系统都不能基于理解消解上述歧义。因为以上两个解的句法都正确,语义也都有可能成立。即便假定机器有篇章分析与理解的能力,并实际分析第二版文章的内容,有可能得到正确的解,那也将大费周章。可是,人只要对2014年4月4日前的乌克兰局势及其与俄罗斯、北约的关系有大致的了解,无需参照第二版的文章,就能判定只有解(1)正确。 知识库可以帮助机器消解歧义,提升语言能力。现在的机器也有足够的资源可以装备庞大的知识库。问题是知识库的边界在哪里?同样,人脑中的知识边界也不清晰。人脑中确实有关于俄罗斯、乌克兰、北约、彼得堡以及国际关系等各种知识,包括历史的和当前的,但这些知识并非专为选择解(1)还是解(2)而准备,而人一看到这个标题,就能立刻把大脑中的相关知识调动出来并加以运用,这说明人理解语言的认知机制与机器处理语言的理论模型、分析算法及实现技术有本质区别。 除知识边界问题,知识的激活问题也很重要。例如,夫妻俩在阳台上用自动升降晾衣架晾衣服,发现晾衣架坏了。 例11 妻子说:“嘿,过了一年才坏。” 丈夫不以为然:“什么呀,才一年就坏了。” 表面上看,两人意见相左。其实是丈夫误解了妻子的意思。妻子并非称赞晾衣架用的时间长,只不过为超过了一年保修期而遗憾。丈夫也并非没有一年保修期的知识,只是当时这个知识未被激活,而造成误解。了解语言误解产生的原因对语言理解机制研究有所启发。 依赖不完备的或者模糊的知识进行推理,在人的语言理解中也发挥重要作用。前不久,2013年台湾地区某奖项中,获生活笔记组首奖的作品是“婚前朱丽叶,婚后玛丽亚”。一般人大概都知道罗密欧与朱丽叶的故事,但未必知道“玛丽亚”是什么意思。根据“婚前”、“婚后”的搭配,可猜测这两句话是说婚前女人受宠,而婚后则受冷落。实际上,台湾很多外籍帮佣的名字都叫玛丽亚,这是说女人婚后成了整天做家事的帮佣。人可以把大脑中存储的这些片段知识联系起来并用于理解语言,但其机制却尚未被揭示,也无法运用于机器语言理解领域。 人在理解语言的过程中一方面会产生误解,另一方面又表现出强大的容错和纠错能力。请看下面两行字: 研表明究,汉字的序顺并不一定能影阅响读,比如你看完这句话后,才发这现里的字全是都乱的。 读者一定能看懂这两行字的意思,但计算机对此则完全无法处理。人在日常语言特别是外语使用当中,常会犯各种各样的语法或语义错误,且多数情况下并不妨碍交流。了解人对语言的容错和纠错能力,可以推动自然语言理解研究的进展。 如果不进行替换(赋值)操作,计算机存储器中存储的信息永不会丢失(不考虑断电和故障),终于累积成当今的大数据,信息检索与知识挖掘成了一门高新技术。人的记忆机制与此不同。人不仅有记忆能力,还有遗忘能力,这样就能保持高效的知识激活机制。而一度被遗忘的知识还能再度唤醒,这或许是因为人是在理解的基础上记忆。机器则没有这样的特性,既不能主动筛选存储内容,而数据一旦消除也无法恢复。 此外,人脑还能顿悟,时常出现灵感,而这与语言理解、语言能力也有密切关系。笔者曾读到一篇关于“沙漠化”的文章,其中一段说“几年前由于种植籽瓜有利可图,使大批的种植者就到过渡带来开垦……极易造成风蚀。”理解时对“就到过渡带来开垦”尝试多种切分:“就到”、“到过”、“过渡”、“带来”、“开垦”,一时不能理解,就跳过去了。读到后文,才突然醒悟,文中有“过渡带”这个词。笔者当时还没去过沙漠,大脑中也没有关于“过渡带”(存在于沙漠与绿洲之间)的概念和知识,这种顿悟如何产生,也尚未被揭示,更遑论对机器语言理解产生影响。 其他值得注意的是,目前自然语言处理的研究对象只是话语或文本(可统一看作字符串即机器内码的集合),但人类并不孤立地使用语言。人与人的交际(包括个人阅读、听广播或通电话、看影视节目等等)是多通道的,利用了多模态信息的融合与互助,包括对实物的认识和感知、图形、影像等等,而语言只是其中一种交流形态。即便在理解语言时,人在一定程度上也大脑、五官、身体并用。从残障人士因部分身体功能缺损而遭遇的各种不同语言障碍,可以从另一个角度反衬出多模态信息的融合与互助的重要性,而这些内容目前都已经超出了自然语言处理的范围。比如语调对表达和理解就有影响。就例11中夫妻关于自动升降晾衣架的对话而言,妻子在说“过了一年才坏”时,对于其中的“一”这个数词,发音会拖长,承载了时间长的信息。相反,丈夫在说“才一年就坏了”时,“一”这个数词的发音就比较短促,承载了时间短的信息。显然,在机器处理当中,单纯的文本(字符串)丢失了很多信息,增加了理解难度。 三、语言认知神经机制研究与多学科融合的发展方向 脑科学研究是21世纪最主要的科学任务之一,而人类语言认知神经机制研究代表了其最高水平。近年来,借助现代神经科学实验仪器设备,科学家们已经可以无创伤地在大脑神经层面探讨语言,通过绘制脑部在运转状态下复杂神经回路的动态图像,研究大脑对语言信息的记录、处理、应用、存储和检索机制,了解大脑功能和行为(包括语言)之间的复杂联系。例如,关于“大脑词库”的研究揭示了人脑中存在一个客观的关于词汇(概念)的存储与提取的信息集,当然,称其为“词库”是一种隐喻性说法。大脑词库是一个复杂的结构系统,在词条信息、组织结构、信息存储、词汇辨认和提取等方面与计算机中的词汇连接有着巨大的差异,对人脑词库的研究有助于为计算机建立新型的电子词库。又如,在研究大脑处理词汇、句法、语义等不同的语言信息时,发现其在接受语言符号(语音或文字)刺激后,激活的部位和时刻都存在不同;研究还发现这些信息不是独立加工的,而是相互作用的。还有脑功能网络构建研究,所构建出的“人脑”是一个复杂的网络模型,具有多种重要的网络属性,尤其是“小世界网络”属性,即其中的网络结点密集分布连接,大部分网络结点可以从任意一个结点经少数几步相互通达。③该网络既可以支持相互隔离的信息独自加工,也支持处于不同结点的信息整合加工,具有很高效率。这些基础研究成果有其应用价值。例如正在研制的“读心”设备将诠释无法说话的患者脑子里想说的话。当然也可以帮助残障人士完成脑子里想做的动作。需要指出的是,目前关于词汇、句法、语义、语音等不同语言信息各自独立的神经机制并没有完全被揭示,它们在语言加工中彼此之间的关系更有待进一步研究。 值得注意的是,关于语言认知神经基础的绝大部分研究都是在发达国家针对西方语言进行的。汉语与西方语言有很大不同。对于这种区别,过去都基于对语言表象(形音义结合的汉字与西文字母的不同,言语组织的意合与形合的不同)的观察加以分析,现在已有研究报告认为“婴儿拥有学习任何语言的普遍潜能,但他们最终使用的语言对大脑神经传导途径的形成产生重要影响。神经系统语言回路最终的组成方式完全取决于它们所支持的语言类型。从小到大说中文的人的大脑肯定与只说英语的人的大脑不同”。④因此,有必要针对汉语的特点,对语言认知的神经机制进行研究。 中国学者已经在这个领域取得了成果。⑤例如,采用神经心理学和神经电生理学的方法研究了中文大脑词库中各下位库的存储和检索机制,形音义整合和汉字认读的神经机制,以及语言单位存取的神经机制等问题,从更为普遍的角度,客观地描绘了中文大脑词库中的形音义的联系以及大脑词库可能的存取单位。⑥前文指出人脑有“顿悟”功能。神经科学实验仪器可以实时捕捉“一念闪过”时脑电的活动情况,这为“顿悟”机制研究提供了神经基础方面的证据。歇后语理解的神经机制研究也许有助于理解顿悟现象。歇后语是汉语中最具特色的一类言语,由前后两部分组成,前者可看作谜语的谜面,后者可看作谜底,两者合在一起的“猜谜”过程在一定程度上接近顿悟。利用高时间分辨率的事件相关电位技术(ERP)考察汉语歇后语的认知加工过程,发现熟悉度高的歇后语(如“肉包子打狗——有去无回”)诱发了波幅较小的脑电指标,而熟悉度低的歇后语(如“蚊子叮铁牛——无处下口”)则诱发了波幅更大的脑电指标。这表明,在熟悉度低的歇后语认知过程中,存在类似于顿悟的现象。⑦ 当前,包括神经语言学在内的脑科学、认知科学进展迅速。计算机科学技术也对其进步起到了重要的推动作用,如扫描得到的复杂的大脑动态图像需要利用计算机进行分析。与此同时,有理由相信,随着对大脑结构、功能奥秘的深入了解,人类语言机制的奥秘终会解开,进而建立模拟大脑的全新计算机体系结构和自然语言理解系统。 对大脑工作机制即人的智能本质的研究,是人类理解自然语言的关键,而这影响机器对自然语言的理解。对此,笔者以为人工智能、脑科学和认知科学应当相互结合。不过,这种认识也有偏颇,即对计算机的作用估计过高。对人工智能贡献的乐观估计,源自对模型化方法的乐观估计。可用于自然语言处理的语言模型很多,大致可以分为两类。一类是基于规则的形式语言模型,如上下文无关语法是最常用的一种形式语言模型。另一类是统计语言模型,n元语法是这类模型的代表。无论是采用规则的还是统计的,自然语言处理的理论模型都将人类的语言认知机制机械化了,即将纷繁复杂的语言现象简单化了。这些理论模型和实现技术把计算机的功能发挥到极致,满足了信息社会急剧增长的应用需求。在最近20多年时间里,自然语言处理领域,特别是中文信息处理领域的专家专注于应对实际应用需求(大规模真实文本处理与网络环境应用),几乎无暇顾及语言理解的科学问题。与此同时,脑科学、神经科学、认知语言学、哲学等相关学科的专家则都在关注语言理解的难题。要解决自然语言理解的难题,相关学科须进行更广泛的交流。计算语言学应该从认知语言学、神经语言学、模糊语言学等相关学科吸取营养。 人的语言能力和机器的语言能力是相辅相成的。随着自然语言理解系统的创新,机器语言能力会有本质的提升,而人的语言能力也将因此大幅提升。 结语:语言深度计算的发展空间 尽管自然语言理解的突破寄希望于脑科学、认知科学和计算机科学的深度融合,但在自然语言处理当中,计算语言学仍是必不可少的理解角度。语言计算⑧和计算语言学没有实质区别:前者是以语言为研究对象的计算科学;后者是以计算为研究手段的语言科学。60多年来,计算语言学的研究对象与环境已经历了几度重大变迁,从针对有限词汇与典型句型,经过大规模真实文本处理阶段,发展到今天的互联网环境,这既给语言计算带来很大困难,同时也为关键技术的突破提供了利用大数据的契机。 语言深度计算⑨包含了“由浅入深”的过程。语言计算经历了词处理、句处理的阶段,现在向篇章处理的方向发展,相应的技术有词法分析、句法分析和语义计算。虽然词处理、句处理的问题并没有完全解决,仍有必要深入研究,还有些遗留问题(如词义消歧、句法结构消歧)需要利用篇章的语境信息才能解决,不过从全局来看,语言计算的重心已放在互联网环境中的语义计算上。语义计算也经由词汇语义学、句法语义学向篇章语义学发展,逐步扩大覆盖范围。从研究内容的深度看,语义计算可划分为互有联系、相互支持的三个层面: 知识本体层面。这个层面上语义计算的实质就是基于客观的世界知识(常识,包括语言知识)消解各级语言单位和各种语言结构的歧义。此前的语义计算研究基本上集中在这个层面。 认知层面。即便在文本分析中消解了歧义,也不等于实现了自然语言理解。隐喻的运用、识别与理解就超出了歧义消解范畴,隐喻计算属于认知层面上的问题。很简单的句子隐喻“他是老狐狸”就同本体中的知识相悖。 隐喻不仅具有修辞功能,而且是语言发展和变化的重要方式与人的基本认知方式,隐喻在思维与语言中无所不在,运用语言离不开隐喻,自然语言理解研究须解决隐喻计算的问题。汉语隐喻计算研究已经起步,⑩有学者认为:“隐喻认知机制的计算描述与实现,必然也是计算语言学研究的核心问题,其所对应的隐喻语言处理技术也必将成为目前自然语言处理技术走出困境的一条最为重要的途径。”(11)不过整体而言,目前在中文信息处理学界,汉语隐喻计算研究仍处在探索阶段。(12) 除隐喻外,其他语言运用方式,如幽默、双关、影射、夸张、拟人等等以及遣词造句的技巧也都超出了基于知识本体的歧义消解范畴。(13) 语用层面。这个层面上的问题通常与篇章理解掺杂在一起。连最简单的一句话“现在快12点了”,根据使用场合的不同也可以有各种不同的潜台词(意义):“到吃饭时间了”、“该散会了”、“我要回家了”,甚至是对客人下逐客令。语言中有很多固定的构式,其意义是不能根据知识本体来分析和理解的。例如,爷爷对孙子说“蛐蛐儿是蛐蛐儿,蚂蚱是蚂蚱”,孙子就会懂“蛐蛐儿不是蚂蚱”。由此在汉语中可抽象出“根据‘A是A,B是B’可推出‘A不是B’”这样一个构式(规则),但又不能随处套用这个构式,像“丁是丁,卯是卯”和“一是一,二是二”就有不一样的意义。语义指向问题也值得关注。“(文章)写完了/(老师)写累了/(毛笔)写禿了”中的“完/累/秃”虽然都是“写”的补语,但其语义所指却分别是远离它的客体、主体和工具。这类问题成为汉语句法分析中远距离依赖关系判别的难点。 面对互联网规模的语言信息处理的重大需求,语言计算,特别是语言深度计算有广阔的发展空间,也还有许多问题值得深入研究。 ①参见俞士汶、朱学锋等:《现代汉语语法信息词典详解》第2版,北京:清华大学出版社,2003年。 ②参见俞士汶主编:《计算语言学概论》,北京:商务印书馆,2003年,第294—299页。 ③参见D.S.Bassert and E.Bullmore,"Small-World Brain Networks," The Neuroscientist,vol.12.no.6,2006,pp.512-523. ④王士元:《语言为大脑回路定调》,转引自《参考消息》2011年10月10日,第7版。 ⑤杨亦鸣:《神经语言与当代语言学的学术创新》,《中国语文》2012年第6期。 ⑥参见杨亦鸣:《语言的神经机制与语言理论研究》,上海:学林出版社,2003年。 ⑦参见Hui Zhang et al.,"Electrophysiological Insights into the Processing of Figurative Twopart Allegorical Sayings," Journal of Neurolinguistic,vol.26,no.4,2013,pp.421-439. ⑧参见孙茂松等:《语言计算的国际前沿》,《中文信息学报》2014年第28卷第1期,第1-8页。 ⑨“语言深度计算”这个概念是2011年清华大学孙茂松在向973计划提交的2012年度项目建议《互联网规模中文深度计算的基础理论与核心技术研究》中提出的。 ⑩王治敏于2006年完成的博土学位论文《汉语名词短语隐喻识别研究》(北京大学计算语言学研究所)和贾玉祥于2010年完成的博士学位论文《汉语文本中的隐喻计算研究》(北京大学计算语言学研究所)以及厦门大学周昌乐的《意义的转绎——汉语隐喻的计算释义》(北京:东方出版社,2009年)是有关汉语隐喻计算研究的为数不多的成果。 (11)周昌乐:《意义的转绎——汉语隐喻的计算释义》,第230页。 (12)北京语言大学王治敏在国家自然科学基金项目“隐喻识别与理解的理论与方法研究”的支持下正努力攻关,期望这个项目能取得有影响的成果。 (13)参见俞士汶、王治敏、朱学锋:《文学语言与自然语言理解研究》,曹右琦、孙茂松主编:《中文信息处理前沿进展——中国中文信息学会二十五周年学术会议》,北京:清华大学出版社,2006年,第72-79页。标签:自然语言处理论文; 神经计算机论文; 语义分析论文; 计算语言学论文; 文本分析论文; 能力模型论文; 功能分析论文; 人脑论文; 语言学论文; 机器学习论文; 认知科学论文; 语言能力论文;