湘里妹子学术网

 找回密码
 注册
查看: 5457|回复: 6

北大袁毓林:计算语言学的理论方法和研究取向

[复制链接]
发表于 2004-8-22 22:36:25 | 显示全部楼层 |阅读模式
文章主题: 计算语言学的理论方法和研究取向(Image)
发表时间: 2004年05月31日 02时08分  
发表作者: 中国社会科学  
发表内容:计算语言学的理论方法和研究取向
袁毓林 撰(北京大学中文系教授)
《中国社会科学》,2001/04,157~168页
来源:青藤书屋

-------------------------------------------------------------------------------------------

    【摘要】本文从不同的研究取向的角度,对目前计算语言学的几种理
论方法以及相应的语言处理技术进行比较研究。着重讨论工
程主义、工具主义、认知主义、实证主义和逻辑主义五种研
究取向,比较对人类知识和语言理解过程及相应的计算机模
拟策略的几种不同的理论,分析其在具体的语言处理技术(
包括语法形式体系、语义表示体系、分析算法以至程序实现
)上的差异。希望对不同的理论方法与处理技术的效能和局
限有一个比较清楚的认识,从而为汉语计算语言学的研究提
供借鉴。

0计算机:语言研究的奴仆还是上帝

  计算语言学是一门跟当代科学技术关系最密切的学科,
同时也是一门定义最为纷歧的学科。只要打开有关的文献,
你就能找到关于计算语言学的各种差别极大的定义。事实上
,这些不同的定义背后反映了不同的研究者的不同的研究取
向。其中,最核心的一点是:怎样看待计算机和语言研究的
关系,是把计算机作为语言研究的工具、还是作为语言研究
的目标和服务对象。形象地说,把计算机当做为语言研究服
务的奴仆、还是当做语言研究要为之服务的上帝。

  下面,我们通过五种关于计算语言学的定义,来讨论工
程主义、工具主义、认知主义、实证主义和逻辑主义五种不
同的研究取向,比较不同的研究者为了实现这些不同的目标
而采用的迥然不同的理论和方法(包括对人类知识、语言习
得和语言理解过程的看法以及相应的在计算机上模拟的策
略),分析其在具体的语言处理技术(包括语法形式体系、
语义表示体系、分析算法以至程序实现)上的差异。希望对
计算语言学中不同的理论方法与处理技术的效能和局限有一
个比较清楚的认识,从而为汉语计算语言学的研究提供借鉴


1工程主义取向:着眼于计算机系统的建立

  在计算语言学的诸多定义中,最多的是着眼于建立一种
可运转的计算机系统。例如:

  (1)计算语言学是对能理解和生成自然语言的计算机系
统的研究。
  ──Grishman(1986)§11,p4
  (2)计算语言学是采用计算机技术来研究和处理自然语
言的一门新兴学科。
  ──冯志伟(1992),第84页

  持这种观点的学者自然会把计算语言学的研究重点放在
这种能理解和生成自然语言的计算机系统的结构及相应的各
种算法的设计上。因为,从理论上说,要想让计算机去解决
某种问题,必须满足下列三个基本的前提条件:(注:详见
马希文《计算机和思维科学》,§2,见钱学森主编《关于思
维科学》,人民出版社1986年版,第225─228页。)

  第一,必须把待解的问题形式化。由于计算机只能对有
限符号集上的有限长度的符号序列进行决定型的形式变换(
这就是计算),因而首先要建立一个形式体系(formalism,
一译形式系统):规定所用的各种符号(词汇),规定把符
号连接成合法序列(即合式公式)的规则(句法),规定合
法的符号串如何表示特定问题领域中的意义(语义,或解
释);然后,建立一些推理规则,说明对这些符号和合法符
号串可以进行一些什么样的处理(演算)。于是,问题便可
以用符号表达出来,问题的解也表现为对符号序列的条件。
这样,计算机解决问题的过程就是从表示问题的符号序列出
发,按规则进行加工,一直到得出符号要求的符号序列(即
解)为止。这一整套的办法叫形式化(又叫数学方法),其
要义是:把特定领域的问题转变为符号,从而把对问题的求
解转变为对符号串的变换处理。

  第二,这种问题必须是可计算的(computable),即一定
要有解题的算法(algorithm),使得计算机能按照算法所指
引的解题步骤,通过有限步的运算而得出结果。

  第三,这种问题必须有一个合理的复杂度,也就是要避
免指数爆炸(exponential explosion)。也就是说,问题的复杂
性必须限制在目前的数学计算机的存储空间和运算时间所能
容忍的范围之内。

  所以,从研究程序上讲,这种类型的计算语言学研究一
般分为如下三个阶段:(注:参考冯志伟《计算语言学对理
论语言学的挑战》,《语言文字应用》1992年第1期;钱锋《
计算语言学引论》,学林出版社1990年版,第26─27页。)

  第一步,数学建模。把需要研究的问题在语言学上加以
形式化(linguistic formalism),使之能以一定的数学形式、
严密而规整地表示出来。也就是说,为有关的语言问题建立
数学模型。包括选择恰当的形式语法(formal grammar)使
得句子的结构能够用某种数学形式明确而清晰地表示出来,
研究在这种形式语法之下如何分析句子构造的方法和步骤;
选择恰当的表示体系使得句子的意义能够用某种数学形式明
确而清晰地表示出来,研究在这种形式体系之下如何分析和
表示句子的语义结构。

  第二步,算法设计。把这种严密而规整的数学形式表示
为算法,使之在计算上形式化(computational formalism)。
这就必须研究句子分析的严格的手续(procedures),并抽象
成机械的、明确的、一步步逼近分析结果的步骤。

  第三步,程序实现。根据算法用某种程序语言编写计算
机程序,使之在计算机上加以实现(computer
implementation)。

  比如,假定有下面这部小型的用产生式(production)表
示的语境自由的短语结构语法:

  S→NP+VP ……R1
  NP→N ……R2
  NP→PRO ……R3
  VP→Vi ……R4
  VP→Vt+NP ……R5

那么,句子I like cheese(我喜欢奶酪)的最左推导是:

  S →NP+VP
   →PRO+VP
   →PRO+Vt+NP
   →PRO+Vt+N

  为了让计算机能根据上面给出的语法规则自动地分析这
个句子,必须设计相应的算法:或者是自顶向下的回溯算法
,或者是自底向上的并行算法。自顶向下的回溯算法每次只
尝试一种推导,当一种推导失败时便返回、重新尝试另一种
推导;就这样逐个地枚举语法所允许的各种推导,直至找到
一个能生成输入句子的推导。根据这种算法(具体的细节从
略),对于上文那部只有五条规则的语法,句子I like cheese
的推导过程将表现如下:

  iS
  iiS→NP+VP
  iiiS→NP+VP→N+VP
  ivS→NP+VP→PRO+VP
  vS→NP+VP→PRO+VP→PRO+Vi
  viS→NP+VP→PRO+VP→PRO+Vt+NP
  viiS→NP+VP→PRO+VP→PRO+Vt+N

  iS是初始符,即树顶节点;ii根据R1,展开初始符;
iii根据R2展开最左的非终结符,但是范畴N跟词项I不匹配
,需要回溯;iv根据R3展开最左的非终结符,范畴TPO跟
词项I匹配成功;v根据R4展开左端第二个非终结符,但是
范畴Vi跟词项like不匹配,需要回溯;vi根据R5展开左端第
二个非终结符,范畴Vt跟词项like匹配成功;vii根据R2展
开最后一个非终结符,范畴N跟词项cheese匹配成功;至此,
推导结束。(注:详见石纯一等《人工智能原理》§942
,清华大学出版社1993年版,第355─363页。)

  一般地说,计算语言学的研究必须涉及计算机科学中的
复杂性理论(complexity theory,用以判别所研究的问题是否
具有可计算性)、编译技术(compiler technology)、搜索策
略(search strategies)、真值保持系统(truth─maintenance
systems)、自动定理证明(automatic theorem proving)、知
识表示(knowledge representation)和数据结构(datastructure
)等方面,同时也必须涉及语言学中的语音学(phonetics)
、音系学(phonology)、形态学(morphology,或词法学)、
句法学(syntax)、语义学(semantics)、语用学
(pragmatics)、话语分析(discourse analysis)等方面。见右
图表。(注:参考Halvorsen(1988)§3:Computer applications
of linguistic theory,pp202─203。)


  如果说科学是理论和知识体系、技术是方法和操作技巧
、工程是实践和具体施行的话,那么计算语言学就是一种工
程。为了建造一个顺畅(fluent)、健壮(robust)的自然语
言处理系统,必须整合许多不同类型的知识,诸如句法知识
、语义知识、话语领域知识等,并且要有效地用到自然语言
处理系统中。正是在这一意义上,建造处理自然语言的计算
机系统跟建造其他大型的计算机系统一样,主要是一种工程
性的工作。跟其他系统建造工作一样,计算语言学采用模块
化(modularity)和建立形式模型(formal models)两种通用
技术。所谓模块化,是指把我们的系统所涉及的知识分割为
相对独立的成分,然后分别攻克一个个子问题,从而缩小整
个系统的规模。所谓建立形式模型,是指为复杂系统建立一
种相对简单的抽象模型,然后为这种简化的模型设计我们的
计算机系统。(注:详见Grishman(1986)§13:
Computational linguistics as engineering,pp7─8。)

  这种工程主义取向的计算语言学研究是有很强的应用动
机的。因为语言是人类交际和记录信息的工具(vehicle),
如果使计算机获得生成和理解自然语言的能力,那么计算机
就能执行只有人类才能完成的工作,诸如翻译、文本处理、
信息抽取和检索等;所以,能处理自然语言的计算机系统将
使计算机更为有用。(注:详见Grishman(1986)Introduction
p1。)也就是说,通过计算语言学的研究,可以开发更
多的计算机应用领域。

2工具主义取向:着眼于用计算机作语言分析

  计算语言学最宽泛的定义是:用计算机来研究和处理自
然语言。例如:

  (1)计算语言学是关于自然语言的计算机处理的一门
学科。它用计算机技术来研究和处理自然语言。──陆致极
(1990),第15页

  (2)对计算语言学一般有狭义的和广义的两种理解。
狭义理解盛行于计算语言学最为发达的美国,它大致上就是
人工智能中自然语言理解(包括机器翻译)的理论和方法部
门,它的操作内容大致上就是上面所提到的(1)─(5)。
(注:这里的(1)─(5)就是§1中第一步至第三步的内
容。)广义的理解则把凡是利用计算机处理自然语言的有关
问题(例如,……风格研究)都囊括进来了,这种理解欧洲
比较盛行。──钱锋(1990),第27─28页

  在这种包容性很大的定义中,除了有§1中讨论的研究能
理解自然语言的计算机系统之外,还有利用计算机来进行跟
语言相关的研究等内容,比如,用计算机对字母频率、汉字
频率、词长、句长、句型等语言成分的统计研究,以及建立
在语言成分的统计基础上的作品风格研究和匿名作品的作者
考证研究等。简单地说,工具主义取向的计算语言学着眼于
用计算机来进行语言的计量研究(quantitative studies)。

  值得一提的是,随着用计算机来采集、整理、加工和管
理语言材料工作的深入开展,逐步形成了语料库语言学
(corpus linguistics)这门计算语言学的分支学科。大概地说
,语料库语言学研究机器可读的(machine─readable)自然
语言文本的采集、存储、检索、统计、语法标注(
grammatical tagging)、句法语义分析,以及具有上述功能的
语料库在语言定量分析、作品风格和作者考证研究、词典编
纂、自然语言理解和机器翻译等领域中的运用。比如,为了
研究现代美国英语,美国的布朗大学在1964年建立了库容量
为100万词的Brown语料库。为了研究现代英国英语,英国的
兰开斯特大学跟挪威的奥斯陆大学、卑尔根大学在70年代合
作建成LOB语料库,库容量也是100万词。欧美各国的学者
利用这两个语料库开展了大规模的英语研究。在1970─1978
年间,他们用86种词类标记来对布朗语料库进行语法标注。
Greene和Rubin还设计了名叫TAGGIT的自动标注系统,其庞
大的规则库里有3300条上下文有关规则。TAGGIT系统对布
朗语料库的全部100万词语料进行自动标注的正确率达77%,
剩下的同形和兼类歧义问题最后由人工来解决。(注:参考
黄昌宁《语料库语言学》,《中国计算机用户》1990年第11
期;冯志伟《计算语言学对理论语言学的挑战》,《语言文
字应用》1992年第1期。)

  从方法论上看,语料库语言学跟工程主义的计算语言学
很不相同。后者采用的是以知识(表示成规则)为基础的方
法,即人工智能的方法。这种方法假定:如果计算机要处理
自然语言,那么它必须跟人一样具有句法、语义、语用、话
语篇章、主题事物、周围世界等方面的知识和逻辑推理能力
。因为人处理语言时的心理状态和心理过程就是这样的,计
算机必须具有跟人相同和相近的知识才能处理自然语言。而
语料库语言学采用的则是以语料统计为基础的方法,即基于
概率的方法。这种方法认为:计算机并不能像人一样利用知
识去理解语言,人们也无法把理解语言所需的各种知识形式
化地表示成规则。有鉴于此,这种方法假定:如果我们能对
数量很大的语言数据作出定量化的统计分析,那么我们就能
对语言成分的分布和语言成分之间的关系等进行概率性的预
测,从而补偿计算机缺乏知识和推理能力的缺点。(注:参
考桂诗春、宁春岩《语言学方法论》§7722:语料库
方法,外语教学与研究出版社1997年版,第138─149页。)
比如,在1978─1983年间,英国的Leech、Sampson、Garside
等人对LOB语料库进行词类标注实验。为此,他们还设计了
一个名叫CLAWS的系统(Constituent─Likelihood Automatic
Word─tagging System)。他们完全放弃了传统的规则模型,
把自动标注的算法建立在统计信息的基础上。他们采用了
133种词类标记,利用已带有语法标记的Brown语料库来获取
两个相邻标记的同现频率,据此建立了一个规模为133×133
的“标记转移概率矩阵”(tagging transition probability
matrix),用以反映在前一种标记的条件下后一种标记出现
的概率。整个语法标注过程所依据的知识都是由这个矩阵提
供的。CLAWS系统对LOB语料库的全部100万词语料进行自
动标注的正确率达96%,比以规则为基础的TAGGIT系统提高
了将近20%。(注:参考黄昌宁(1990),第44页;桂诗春、
宁春岩(1997),第145页。)例如,对于句子Henry likes
stews,其中Henry是名词短语,只有NP一种标记;likes和
stews可以是名词复数或动词第三人称单数,因而有NNS和
VBZ两种标记。于是,这三个词可以有下列四种词类搭配方
式:

  iNP+NNS+NNS=17×5×135=11475
  iiNP+NNS+VBZ=17×1×37=629
  iiiNP+VBZ+NNS=7×28×135=26460
  ivNP+VBZ+VBZ=7×0×37=0

  在这些由形式类表示的搭配方式的右侧(等号后面)给
出每种标记跟相邻标记的同现概率,并用这种概率的乘积作
为决定某种搭配方式的概率的变量。假定决定某种搭配方式
的概率等于该变量除于所有变量的和,那么第三种搭配的概
率最高(26460/11475+629+26460+0=69%)。系统可以据此确
定句子Henry likes stews的形式类标记是NP+VBZ+NNS。
(注:参考桂诗春、宁春岩(1997)§7722:语料库方
法,第138─149页。)既然通过概率计算可以确定兼类词在
某种组合中的词类属性,那么由兼类词引起的结构歧义也可
以通过概率计算来消歧(disambiguation或ambiguity
resolution)。于是,以语料库为基础的统计模型不仅可以用
来解决自然语言的语法标注任务,而且还可以运用到句法、
语义等更高层次的分析上来。(注:参考黄昌宁(1990),
第44页。)

3认知主义取向:着眼于人类使用语言时的心理过程

  在计算语言学的定义中,为数不多的是涉及人类使用语
言时的心理过程。例如:

  (1)计算语言学是一门计算机科学和语言学紧密结合
的科学。它用数学的方法来制订语言规则和模型去解决有关
计算机的语言学习和理解、语言信息的存储、组织、更新、
转换和生成等问题。在这些问题中,核心是学习和理解。
──黄建烁(1991),第24页

  (2)计算语言学最好看作是人工智能的一个分支。跟
人工智能的所有其他领域一样,它涉及对认知能力的研究和
建模。在计算语言学这里,它着重的是语言能力。但是,这
种研究不必去建构关于人类行为的具有心理真实性的模型。
其目的就在于确定和刻画用自然语言进行交际和获取信息的
能力中所包含的知识的种类及相关处理过程的类别,而不管
其实际的心理状态。──Halvorsen(1988)§3,p202

  黄建烁(1991)的定义为计算语言学确立了一种非常宏
伟的目标,那就是教会机器自动地学习,即让机器理解语言
并自动地学习和更新知识。用Hans Karlgreen教授的话来说,
就是“用计算的方法来制订人类语言行为的模型,并以此去
了解人们怎样听说读写、怎样学习新知识和更新旧知识,又
是怎样理解、存储和组织语言信息的”。他甚至认为,计算
语言学的一个最根本的问题就是了解“人类的大部分活动在
什么程度上能够简化成机械的操作”(注:详见黄建烁《计
算语言学研究综述》,《国际学术动态》1991年第4期。)。
Halvorsen(1988)则强调,计算语言学是对人类语言处理能
力和心理过程的功能(而不是结构)模拟。这就是典型的人
工智能方法。这种功能模拟的方法直接影响和促成了认知心
理学的基本信念:可以把计算机作为人类思维的模型,也可
以用计算机来模拟人类的认知过程。

  TWinograd(1983)Language as a Cognitive Process
(〔把〕语言作为一种认知过程〔看待〕),则可以说是认
知主义取向的杰出典范。他由下列两个问题激发灵感,尝试
建立一种语言研究的认知范式(cognitive paradigm):

  i一个人要说话和理解语言,必须具有哪些知识?
  ii为了在交际中使用这些知识,人的心智是怎样组织的?

  他把语言使用看做是一种以知识为基础的交际过程,认
为人无论是说话还是听话都必须具有一定的知识,比如,词
序规则、词汇和词的结构、语义特征、所指关系、时制系统
、话语结构、说话人的态度、韵律规约、风格规约、世界知
识等。在理论方面,他企图探讨人是怎样习得、运用这些知
识的;在实际运用方面,他尝试用计算机来模拟人习得、储
存、运用这些知识的过程,所以他又称这种范式为计算的范
式(computational paradigm)。(注:详见Winograd(1983)
chap1:Viewing Language as a Knowledge─Based Process,
pp1─34。另外,参考黄奕《认知过程的语言》对该书的介
绍和评论,《国外语言学》1985年第3期。)

  持这种研究取向的学者喜欢用认知心理学的眼光来看待
语言使用。从信息加工过程的观点看,人说出一句话和理解
一句话时,在大脑中有一个关于所描述的外部世界中的事物
或事件的心理映象,可以称之为内部语言;而人处理语言的
过程就是把外部语言转化为内部语言,经过加工后再由内部
语言转化为外部语言的过程。计算机也可以用类似的过程来
处理自然语言:首先确定一种语言的内部表示;然后,寻求
一种把所限定的语言子集中的语句转换为内部表示的方法。
在他们看来,让计算机理解语言的关键是:应能对一般的自
然语言的句子作出语义解释,即设计一种一般的内部表示。
内部表示是自然语言处理的关键,它影响着系统对语言知识
和世界知识的描述和利用,因此也影响着整个处理系统。
(注:详见杨抒《自然语言的认知模型》,《计算机科学》
1988年第3期。)

  不同的学者由于对人类处理语言的心理过程的认识不同
,因而采用了不同的理论和方法来建造自然语言处理系统。
其中一类系统比较重视句法分析,尽管所依据的语法理论各
不相同。比如,Winograd 1972年研制的关于积木世界的
SHRDLU系统,采用Halliday(1967、1970)的系统语法
(Systemic Grammar),把句法结构看做是生成句子的过程
中一系列句法结构选择的结果。Woods1972年设计了关于月
球化学成分的L NAR系统,该系统的句法部分根据Chomsky
(1965)的转换生成语法,分析出标准理论所指定的深层结
构,再输入语义部分。语义部分根据句法上的深层结构再进
行语义信息的分析。数据检索部分再根据输入句的语义编译
成一种面向系统的形式语言(即查询语句),以便直接查询
数据库,并最终产生结果(即回答)。Simmon(1973)根据
Fillmore(1968)的格语法(Case Grammar)建立了语义网络
理论。他采用Woods的ATN(augmented tran─sition network)
来分解输入句的句法关系,同时分析深层格结构,记录语义
关系;最后求出输入句的语义关系,据此来理解语义。另一
类系统不作详细的句法分析,直接从语句中抽取语义信息。
比如,Yorick AWilks认为,整段言谈的内容是由一些简单
的基本信息构成的。一个复杂的句子也是由基本信息通过概
念连结成实时的线性序列,而不是语言学家所认为的具有层
次的树形结构。在这种思想的指导下,Wilks(1973)用人工
智能的方法设计了一个英法机器翻译的模型。Roger C
Schank认为人脑中存在着某种概念基础(conceptual base),
语言理解的过程就是把语句映射到概念基础上去的过程。概
念基础具有完善的结构,人往往能根据初始的输入预期可能
的后续信息。句法分析对语言理解的用处不大,因为语言理
解需要的是输入句的意思,而不是它的句法结构。计算机要
理解语言,必须模拟人的心理过程;要像人一样根据上下文
、环境、知识、记忆等作出预期(expectation),从而获取
语义。句法只起一种指引的作用,即根据某些输入词语形成
概念结构,预期它的句法形式,便于查找核实。Schank(
1973)提出了概念从属(Conceptual Dependency,CD)理论
,建立了MARIE模型。上述这些不同的理论和方法,都是基
于研究者对于“人是怎样理解语言的”这一问题的不同见解
而发展出来的。也就是说,他们分别用不同的计算范式来实
现其认知范式。(注:详见杨抒(1988),第22─26页;范
继淹、徐志敏《自然语言理解的理论和方法》,《国外语言
学》1980年第5期。)

4实证主义取向:着眼于检验语法理论的可靠性

  跟§1所述的抱有实用目的的工程主义取向不同,大多数
计算语言学研究并不跟某种特定的应用目标相挂钩,而是另
有某种科学研究的目标。其中之一就是用计算机来对语言学
家提出的各种语言学理论进行检验。比如:

  计算语言学的一个自然的功能是对理论语言学家提出的
各种语法进行检验。──Grishman(1986)§11,p5

  用计算机来检验某种语法理论或某组语法规则,这对语
言学家来说实在是一件既令人兴奋又令人不安的事。兴奋的
是语言学的理论和规则居然可以像数学公式一样让计算机去
执行,不安的是能顺利通过机器检验的希望是极其渺茫的。
Friedman(1971)还真的设计了一个检验转换语法的系统,
名叫Friedman's Transformational Grammar Tester。该系统可以
按照转换语法来生成句子,于是语言学家可以用它来检验他
们的语法是不是真的只生成合语法的句子。事实上,由于大
多数语言学理论的形式框架(包括:移位规则的性质、对转
换的限制、语义解释规则的形式,等等)都是有问题的,而
且理论语言学的重点并不是建造一种能适应计算测试的实体
性的语法;因而就目前来看,作为语言学理论的测试工具,
计算机的用处是不大的。(注:详见Grishman(1986)§11
:The objectives of computationallinguistics,p5。)

  看来,让计算语言学来充当语言学理论的审判官是不合
适的。更为现实的定位是:把计算语言学看做理论语言学和
计算机技术的桥梁,通过计算语言学家的工作来沟通语言学
理论和计算机技术,来形成语言学技术(linguistic technology
,如:针对某种语法体系的语法解释器和分析器,言语合成
算法等),从而完成语言学理论在计算机上的应用。因为,
在语言学理论和计算机处理技术之间存在着很深的鸿沟,一
般的语言学理论研究的是抽象的语言能力(competence),
即理想的说话人和听话人的内在的语言知识;而不研究具体
的语言运用(performance),即语言知识在实际的语言活动
中是怎样运用的。但是,计算机只能处理活动和过程性的知
识。因此,计算语言学一直在尝试通过把语言学理论转变为
算法(它能模拟遵守语言学理论和语言能力语法中所包含的
各种语言学限制和概括的语言行为),来沟通语言能力语法
和某种要适应用机器处理的特定的语言运用。(注:详见
Halvorsen(1988)§2:The leap from linguistic theory to
programs,pp200─201。)事实上,更大的矛盾在于:语言
学理论基本上是描述性的,而计算机技术中的算法描述和编
程语言则基本上是过程性的。下面,我们简要地讨论这种矛
盾及其解决办法。

  一般地说,计算机要处理自然语言(最终目的是抓住句
子的意义),首先必须对输入句进行句法分析(parsing),
从没有显性结构标记的符号串上找出结构来,即识别输入句
的各个构成成分以及它们之间的关系,比如确定句子的主要
动词及其主语和宾语,确定修饰成分及其中心语等。要分析
句子的结构就需要语法的指导,正是语法提供了一种语言的
结构成分和符号串跟结构之间的关系的明确定义。在计算语
言学上,通常称一个能根据一部特定的语法来分析句子(确
定句子的推导过程)的程序为分析器(parser)。这种分析
程序主要涉及两部分内容:(i)一组语法规则,它们由某
种形式化的语法理论组织在一起,形成某种语法形式体系
(grammaticalformalism);(ii)一种控制机制(control
mechanism),它决定在分析过程中怎样运用语法规则、怎
样保持对于各种业已发现的成分的记录、使程序在有限步运
算后找出结构,即形成某种分析算法(parsing algorithms)。
大家知道,程序是用编程语言(programming languages)编写
的。而编程语言基本上是过程性的表示体系(procedural
representation),因为编程的目的本来就是给计算机提供一
套明确而详尽的怎样干某事的指令(instructions)。但是,
语法规则通常都是陈述性的(declarative),而不是过程性的
;它可以告诉我们一个句子往往由一个NP和一个VP构成,但
并不告诉我们怎样用一个NP和一个VP去构成一个句子。面对
这种语言学理论和计算机技术之间的不适配,有两种解决问
题的思路:第一种,把陈述性的语法形式体系改变为过程性
的语法形式体系,用过程性的形式体系来表示和组织语法规
则。比如,利用转移网络这种形式机制的RTN语法(
recursive transition network grammar)和ATN语法(augmented
transition networkgrammar)就是一种过程性的语法体系。第
二种思路是,把过程性的编程语言改变为陈述性的编程语言
,用陈述性的表示体系(逻辑形式)来描述问题;只告诉机
器要解决什么问题,但不说怎样去解决,让机器用定理证明
的办法,通过自动推理去获得这方面的信息。Prolog就是这
样一种基于逻辑推理的程序设计语言,这种逻辑程序设计语
言(logic programming language)是一种陈述性(表示问题)
语言,其控制(如何求解)过程由逻辑程序设计系统本身实
现,无需程序设计人员给出解题算法。于是,为了充分利用
这种编程语言的内在特性,基于Prolog的分析器应该把所要
分析的问题看做是一个定理证明的问题。所有这类用便于
Prolog编译的方式来表示语言学规则的语法形式体系,都叫
做逻辑语法(logic grammar)。其中,限定子句语法(
Definite Clause Grammar,DCG)就是一种逻辑语法。DCG是
一种增强的上下文无关语法(Augmented Context─Free
Grammar),它的生成能力不低于ATN语法。更为重要的是
,用限定子句表示的语法规则本身就是逻辑程序设计语言
Prolog的可执行程序。换句话说,Prolog系统可以直接解释用
DCG形式表示的语法规则,而无需像ATN那样另外再设计一
个句法分析器(规则解释程序)来完成这个任务。

  可见,计算机技术和语言学理论是相互影响、相互促进
的。这造成了计算语言学和理论语言学的紧密合作,并且产
生出丰硕的成果。比如,广义短语结构语法(Generalized
PhraseStructure Grammar,GPSG)和词汇功能语法(Lexical
Functional Grammar ,LFG)都是陈述性的语法形式体系,它
们都受到MKay(1979)的计算语言学着作Unification
Grammar(合一语法)的影响。其中,LFG是理论语言学家
(JBresnan)和计算语言学家(RKaplan)的合作成果,
GPSG的部分作者担任过大型的计算语言学项目的顾问。随
着这种理论语言学和计算语言学的会聚(convergence),也
有许多计算语言学项目采用GPSG或LFG作为其语法形式体系
,从而实现了从语言学理论到计算机技术的转变。(注:详
见Halvorsen(1988)§4:Parsing,pp204─210;Gazdar &
Mellish(1987)§13:Towards Declarative Formalism,pp
228─229,§2:The Imposition ofStructure,pp229─235;石
纯一等(1993)§26:归结法和Prolog语言,第64─68页;
第九章:句法分析,第333─422页。)

5逻辑主义取向:着眼于语言学知识的自动发现

  值得注意的是,最近出版的一些计算语言学着作,作者
在计算语言学的定义中特意强调了语言的计算结构和计算模
型。例如:

  (1)计算语言学旨在以自然语言处理(包括理解、生
成、人机对话、机器翻译以及语音/文字输入的后处理等)
为技术背景,揭示自然语言的词法、句法、语义、语用诸平
面及其相互作用的计算结构,把语言学知识重塑成可以转化
为产品的计算模型。──白硕(1995),第2页

  (2)现代计算语言学是通过建立形式化的计算模型来
分析、理解和处理语言的学科。……广义地讲,计算语言学
是研究字符串的结构以及结构和意义的关系的学科。──翁
富良 王野翊(1998),第1、9页

  按照白硕(1995)的理解,要建造一个处理自然语言的
计算机系统,必须有大量的语言学知识作后盾;但是,语言
学知识的发现工作主要是以手工的方式进行的。因此,利用
计算机来自动(或辅助)发现语言学知识,将极大地提高研
究的效率、扩大研究的规模,把语言学家从收例句、制卡片
、画表格等烦琐的事务中解放出来。所谓语言学知识的发现
,指的是从一个由例句组成的语料库中发现特定的自然语言
规律。这种从一组事例中发现一般规律的认知活动,在逻辑
上被描述成一种“归纳”过程。作者决心研究语言学规则这
种特殊形式的知识的发现的逻辑实质,全面地展示跟语言学
知识发现有关的各个层次上的形式化机制──从数学建模、
逻辑分析、算法描述、具体实现直到结果的语言学解释。作
者采用语言学中经典的分布分析的思想,并针对真实语料的
各种特点,结合汉语的实际,从数学、逻辑、算法和实现各
个角度,全面阐述了从语料中发现确定性语言学知识(主要
是词类和句法规则)的理论和方法。这种计算语言学工作对
语言学家来说是比较亲切的,因为它在相当程度上模拟了语
言学家发现语言学规则的过程。

  白硕(1995)的研究有着明显的逻辑主义追求,那就是
通过研究语言学知识的发现来探索归纳法的逻辑机制和计算
结构。一般地说,从逻辑上看,人类的思维活动不外基于演
绎法和基于归纳法两类。演绎法常常是从一些多少已经抽象
化、形式化的前提出发,演绎出种种结论来。只要前提中含
有可以互相消解(resolve)的对象,就一定可以衍生出新的
命题来。显然,从前提演绎出结论是计算机可以胜任的工作
。而归纳法常常是从未充分抽象化、形式化的大量个别事例
出发,希望从中抽象出有用的概念、模式、定理来。这种工
作能不能用计算机来完成呢?由于在使用归纳法的时候(比
如,划分词类、发现句法模式等),目标的确立、是否达到
目标的判别、达到目标的手段的建立等都是通过反覆尝试而
逐步建立起来的。对于这种缺少确定性的过程,计算机是很
难单独完成的。怎么办呢?答案是建立一个人机共生的系统
,由人来负责设定目标和手段、由机来负责实现这种手段而
不管目标是什么。如果有了这样的人机共生系统,就可以大
大地提高工作的效率和质量。要想做到这一点,就必须进一
步研究归纳的手段和逻辑机理。而白硕(1995)主要是以语
言学问题为背景,提出许多关于归纳的概念和方法作为人机
共生系统的基础。(注:详见马希文为白硕《语言学知识的
计算机辅助发现》所写的序,科学出版社1995年版,第ii─
iii页。)他特别强调归纳的非单调性、可错性的特点:已经
归纳出来的规则总有可能被后来的事实证明是不正确的、需
要修改的,然而在没有遇到这样的事实时,这些规则又可以
认为是近似正确的、不妨使用的。作者就是用这种允许某种
“逻辑跳跃”来达到一些好的猜测的方法以发现词类和句法
规则,并希望这种机制不仅仅局限于语言学知识的发现,希
望这种研究对于探索知识发现的一般途径、对于认识归纳和
类比的逻辑实质有所贡献。

  从方法论和哲学背景上看,计算语言学研究有理性主义
和经验主义两大分野。理性主义方法认为:人的很大一部分
语言知识是与生俱来的,即是由遗传决定的。受Chomsky内
在语言官能(innate language faculty)学说的影响,计算语言
学界很多人信奉理性主义。他们秉承人工智能研究中的符号
主义传统,通过人工汇编初始语言知识(主要表示成形式规
则)和推理系统来建立处理自然语言的符号系统。这种系统
通常根据一套规则或程序,将自然语言“理解”为某种符号
结构;再通过某种规则,从组成该结构的符号的意义上推导
出该结构的意义。在一个典型的自然语言处理系统中,句法
分析器(parser)按照人所设定的自然语言的语法把输入句
分析为句法结构(一种特定形式的符号结构),再根据一套
语义规则把语法符号结构映射到语义符号结构(如:逻辑表
示、语义网络、中间语言等)。由于自然语言处理系统中的
规则集通常是先验的,即是由人设计好以后赋予机器的,因
而,这是一种典型的理性主义的方法。经验主义方法认为:
人的知识只有通过感官传入、再通过一些简单的联想
(association)和泛化(generalization)的操作才能获得,人
不可能天生拥有一套有关语言的原则和处理方法。表现在计
算语言学中,许多研究尝试从大量的语言数据中获取语言的
结构知识,从而开闢了基于语料库的计算语言学这种经验主
义的研究方法。其中的神经网络方法秉承了人工智能研究中
的连结主义传统,由机器通过学习给定的实例(训练数据)
之间的输入─输出关系,来获得神经元(人工神经节点)之
间的连结强度(strength,或称“权”weight),以反映从输
入状态到输出状态之间的映射关系。其中的统计学方法试图
建立统计性的语言处理模型,并由语料库中的训练数据来估
计统计模型中的参数。比如,§2中介绍的词类的自动标注,
其做法是先使用少量已经人工标注的语料进行训练,然后将
学到的词类标记的共现概率分布用于标注尚未标注的文本。
这都是通过学习训练实例来获得某种语言处理能力的,因而
是典型的经验主义的研究方法。(注:详见翁富良、王野翊
《计算语言学导论》§13:计算语言学研究的基本方法,
中国社会科学出版社1998年版,第4─8页。)简而言之,理
性主义强调基于规则的方法,经验主义强调基于学习的方法
。而白硕(1995)的工作则是尝试兼采这两种方法之长又避
免这两种方法之短。粗略地说,这是一种企图发现规则而不
是赋予规则、基于语料库但不拘于统计学方法的路子。作者
考虑到仅靠统计学方法是无法从语料中发现确定性的语言学
规则的,因而尝试一种从精炼语料库中动态地归纳规则的方
法。这种从语料库中通过学习来获得符号处理系统中的规则
集的方法,在本质上是归纳逻辑。这种方法一方面用到符号
处理系统中的规则表达,但规则又是从语料库中经验地获得
的,因而,就其本性而言是一处经验主义的方法。(注:详
见白硕(1995)§11,第1─5页;翁富良、王野翊(1998)
§13,第4─8页。)

6结语:并非悖论──用计算机和为计算机研究语言

  最近几年,国际计算语言学界对计算语言学的定义逐步
形成下面这种共识:计算语言学是用计算机和为计算机研究
语言的学科。

  说计算语言学的特点是用计算机来研究语言,这既有其
通俗易懂的一面,又有其浅显误导的一面。其通俗性表现在
:人们很容易想到计算语言学是把计算机作为工具来使用的
,比如用计算机收集语料、分类整理、分布统计、提取各种
数据等。这跟化学、物理学、生物学中的计算化学、计算物
理学、计算生物学有点相近,它们或者运用简单的方程和算
法在计算机上进行大量的重覆运算,或者用计算机对实验结
果进行十分精细的计算分析、反覆提高以得到一种新的理论
。其误导性表现在:人们只想到用计算机这种电子装置作为
语言研究的工具,而忽略了用计算机科学的理论、概念和方
法来研究语言这一点。我们认为这一点才是计算语言学更本
质、更深刻的特点。像§5介绍的白硕(1995)用理论计算机
科学的观点剖析当代语言学的方法、并进行计算模拟的做法
,在一定程度上展示了这类研究的理论魅力和实用价值。

  为计算机研究语言,是指为了计算机能处理自然语言而
研究语言。这包括两方面的工作:(1)对自然语言的结构
和意义规律进行挖掘,提炼出便于形式化和算法化的句法、
语义规则,建立合适的语法学理论模型,来更好地组织语言
的句法、语义规则;(2)把语言学家对语言的句法、语义
、语用诸平面上的研究成果进行数学概括,用某种形式化体
系来组织和表示语言的结构和意义规则,再找出恰当的算法
来描述句子的结构分析或语义解释的严格的步骤
(procedure),最后根据算法用相应的计算机语言来编程实
现。

  在为计算机研究语言这一点上,计算语言学有别于计算
化学和计算神经科学。在计算化学中,并没有为计算机研究
化学这种任务;在计算神经科学中,也没有为计算机研究神
经的结构和功能这种任务。那么,为什么计算语言学要特别
地强调为计算机研究语言这一点呢?原因可能有两点:(1)
语言学的研究对像是自然语言,语言学的研究工具(用以描
写语言现象、表述语言规律、总结研究结果)也是自然语言
。也就是说,自然语言既是语言研究的对象语言,也是语言
研究的元语言。由于计算机无法直接理解自然语言,因而首
先必须把用自然语言表述的语言规律形式化、符号化。(2
)语言是一种心智(mind)现象,是跟人的认知、心理密切
相关的;为了让计算机能理解自然语言,必须以计算机为信
息加工模型来考察人类语言理解的心理过程,以便在计算机
上模拟实现。

  可见,用计算机和为计算机研究语言并不是一种悖论,
而是计算机语言学的本质特征。
---------------------

【参考文献】

1
白硕(1995)《语言学知识的计算机辅助发现》,科学出版
社。
2
范继淹、徐志敏(1980)《自然语言理解的理论和方法》,
《国外语言学》第5期。
3
冯志伟(1992)《计算语言学对理论语言学的挑战》,《语
言文字应用》第1期。
4
冯志伟(1996)《自然语言的计算机处理》,上海外语教育
出版社。
5
桂诗春、宁春岩(1997)《语言学方法论》,外语教学与研
究出版社。
6
黄昌宁(1990)《语料库语言学》,《中国计算机用户》第
11期。
7
黄奕(1985)《认知过程的语言》,《国外语言学》第3期。
8
黄建烁(1991)《计算语言学研究综述》,《国际学术动态
》第4期。
9
陆致极(1990)《计算语言学导论》,上海教育出版社。
10
马希文(1986)《计算机和思维科学》,见钱学森主编《关
于思维科学》,人民出版社。
11
钱锋(1990)《计算语言学引论》,学林出版社。
12
沈政、林庶之(1992)《脑模拟和神经计算机》,北京大学
出版社。
13
石纯一、黄昌宁、王家廞(1993)《人工智能原理》,清华
大学出版社。
14
翁富良、王野翊(1998)《计算语言学导论》,中国社会科
学出版社。
15
杨抒(1988)《自然语言的认知模型》,《计算机科学》第
3期。
16
袁毓林(1996)《语言的认知研究和计算分析》,删节本见
《语言文学应用》第1期。全文见罗振声、袁毓林主编《计
算机时代的汉语和汉字研究》,清华大学出版社。
17
Gazdar,G& Mellish,C(1987)Computational linguistics,
in JLyons,etc(ed)New Horizons in Linguistics 2
Penguin Books
18
Grishman,Ralph(1986)Computational Linguistics:An
IntroductionCambridge University Press
19
Halvorsen,Per─Kristian(1988)Computer applications of
linguistic theory in FJNewmeyer(ed)Linguistics:The
Cambridge Survey,VolⅡ,Linguistic Theory:Extentions and
ImplicationsCambridge University Press
20
Winograd,Terry(1983)Languageasa Cognitive Process
Addison─Wesley Publishing Company,Inc中文简介请看黄奕
(1985)。
发表于 2004-8-28 02:12:42 | 显示全部楼层
我不大赞成george君的看法。他说:

“计算语言学就是两件事,帮助人研究语言——进而推动人的语言学习(交流)。
研究机器如何理解语言——加速交流和理解。
当然新的语言学发展——语义网(semantic web)是非常宏大的计划,推动的是整个人类网络的发展,和语言学家就关系不大了”

且不说语义网本身的建造需要语言学家合作。语义网建造完成就万事大吉,不需要语言学家了吗?语言本身是不断变化的,语法也不断在变。例如,语法家们早先认为述宾结构不能带宾语,现在“某某作客老舍故居”“某某夺金奥运”“某某总统泛舟漓江”之类天天出现于报纸。这种以前不合格的格式突然变成合格了。什么情况下合格?什么情况下不合格?(例如,不能说“闹鬼山神庙”)语言学家可以作出合理的解释,找出规律。我敢说恐怕george君也难以解释。有学者们把统计法吹得神乎其神,似乎没有语言学家计算机专家可以包打天下,我觉得过于简单化。george君列出的两项可以概括为使计算机变成人脑。这主要涉及思维模拟,语言是思维工具,可以不要语言学家参与吗?思维涉及逻辑推理,也离不开逻辑学家,还有心理学家等等。

[ 本贴由 xychy 于 2004-8-28  03:05 最后编辑 ]
发表于 2004-10-19 10:49:42 | 显示全部楼层
优化汉语拼音
应该是(中文)汉语计算机语言学的理论和方向。
http://www.shyywz.com/newbbs/viewtopic.php?p=778&highlight=&sid=e0513f974316e82c1845924cc6531dca#778
发表于 2004-12-17 09:26:37 | 显示全部楼层
我不相信对人自己积累的表达方法不去研究, 会搞出多么出色的自然语言理解来.
如果你为下列表达问题所困惑,请读《表达的探究》

人类已经积累了哪些叹为观止的表达高招,主要在哪些学科体现?
人工智能和信息处理能吸收哪些重要的人文表达方法?
符号化就是形式化吗,所谓形式化表达的根本是什么?
形式化表达的对偶问题:表达中的直观因素是什么?
在没有任何直观因素的前提下,我们还能够表达吗?
来自计算的数学何以能成为一种显示与描述的语言,即所谓的数学语言?
什么是自然语言难以表达,而数学语言可以胜任?
一个谓词在什么意义下能够表达另一个谓词?
时序的前后构造与空间的内外与层次构造,这三者在表达能力上等价吗?
公理关系表达与指称表达有何不同,你真懂符号学的表达方法吗?
结构主义元素间的自我表达是如何实现的?
能给意义分析建立一个简单的数学模型吗?
人是一切意义的最后源泉吗?无意与有意在表达上有什么重要意义?
意义和信息是什么关系,排序与差异有什么不同?
数理逻辑在表达上有什么真正突破?它是否只是锦上添花,而没有雪中送炭?
语言的逻辑和推理的逻辑到底有什么区别?两者之间能转化吗?
离散符号如何能够表达连续运动,有限何以表达无限?
变动不居的对象如何表达,有哪些“变中不变”的表达技巧?
什么是信息主成分,详略得当的表达如何得到?
对象及属性的主谓式表达方法有什么局限性?
表达的柔性是如何得到的,它与表达的完全性是什么关系?
无限细化的定量表达总是可行的吗,为什么会有界线?
诗人如何用日常语言实现“空灵”的表达效果?
公共语言能表达私人情感吗,如何表达一次性的新鲜感觉?
异质语言之间如何对话,形象能翻译吗?
异质之间能够表达吗,间接表达的技术有哪些?
如何用低维度的语言表达高维度的对象?
超出语言自身维度的表达是可能的吗,这对表达完全性有什么重要意义?
自然语言是如何取得质感的表达效果?
描述语言与解释语言各有什么特点?
呈现,再现和表现,三者在表达上各有什么特点?
在既无法直观对象又无相应语言的情况下,在表达上还能有所作为吗?
“象”表达有什么特点,它是如何突破符号指称的局限性?

一切尽在《表达的探究》,欢迎索取电子目录和样章
联系地址:yushan@mail.dlptt.ln.cn
发表于 2005-1-3 05:41:57 | 显示全部楼层

to ALL

我是今天找资料的时候无意中登录到这个网站的,初略的浏览了一下各位的发言后,也想说两句和大家讨论一把。
“当然新的语言学发展——语义网”,语义网的概念提出来已经有几十年了算不上最新吧,世界上做得比较有有名的有英语的wordnet,中文的有知网,这样的技术应用得并不算广,突出得缺点就是覆盖性差,表现在两个方面,(1)语义网刻画的领域有限(2)即使在语义网刻画的领域中,对于某些深层次的应用也力不从心,再加上语言的历时特性,会有新的词,新的表达不断的进入语言,这些都说明了语义网的局限性。ontology,XML等技术是在互联网繁荣的今天,语义网的新的发展,研究的焦点集中在网页内容的语义表示手段上,使得下一代的网页基于语义的,可以期盼以后的搜索引擎表现得更好。

TO yushan:我觉得你不如就某个具体的问题的表示深入的研究下去,不是反驳你的关于要研究“表达方法”,而是说像《表达的探究》这样的书不读也罢,况且据我对这个领域的了解,大多是人云亦云,有的观点作者本人都不见得明白。
发表于 2005-1-4 09:33:59 | 显示全部楼层

这个问题在我看来都太高深了,还是闭嘴比较好!

发表于 2005-6-21 23:48:33 | 显示全部楼层

3认知主义取向:着眼于人类使用语言时的心理过程

我的研究更接近于这个。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|湘里妹子学术网 ( 粤ICP备2022147245号 )

GMT++8, 2024-4-29 03:24 , Processed in 0.110117 second(s), 18 queries .

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表