仪器仪表工程张格自然语言理解自然语言理解的定义1自然语言理解的过程2自然语言理解的应用34内容梗概内容梗概2智能家教系统简介自然语言理解的定义自然语言理解简称NLU——NaturalLanguageUnderstanding,是研究如何让计算机理解和生成人们日常所使用的自然语言。自然语言理解是人工智能领域的主要内容,即利用计算机等工具对人类特有的语言信息进行加工,并建立各种类型的人-机-人系统。3自然语言理解的定义自然语言理解俗称人机交互,是人工智能的分支学科,研究用计算机模拟人的语言交际过程,使计算机能理解和运用人类社会的自然语言如汉语、英语等,实现人机之间的自然语言通信,以代替人的部分脑力劳动,包括查询资料、解答问题、摘录文献、汇编资料以及一切有关自然语言信息的加工处理。4自然语言理解的过程语言虽然表示成一连串的文字符号或者一串声音,但其内部事实上是一个层次化的结构。一个文字表达的句子是由词素—词—词组或句子,而用声音表达的句子则是由音素—音节—音词—音句,其中每个层次都受到语法规则的限制。自然语言是音义结合的词汇和语法体系。词汇是语言的基本单位,它在语法的支配下可构成有意义和可理解的句子,句子再按照一定的形势构成篇章等。5自然语言理解的过程语言词汇语法句法词词法熟词词汇是语言的基本单位。熟语是指一些词的固定组合,如汉语中的成语。词又由词素构成,词素是构成词的最小有意义的单位。语法是语言的组织规律。词法是用词素或熟语构成词的规则,可分为构形法和构词法。构形法是指单数复数等。造句法是用词和词组构造句子的规则。6自然语言理解的过程2.词法分析3.句法分析4.语义分析5.语用分析1.语音分析总体过程7自然语言理解的过程——语音分析在有声系统中,最小可独立的声音单元是音素,音素是一个或一组音,它可与其他音素相区别,如pin和bin中分别有/p/和/b/这两个不同的音素,但pin、spin和tip中的音素/p/是同一个音素。语音分析则是根据音位规则,从语音流中区分出一个个独立的音素,再根据音位形态规则找出一个个音节及其对应的词素或词。8自然语言理解的过程——词法分析词法分析是理解词的基础,其主要目的是从句子中切分出词,找出词汇的各个词素,从中获得词的语言学信息并确定词的词义。在英语中,找出句子中的一个个词汇是很容易的事情,因为词与词之间是有空格来分隔的,但要找出各个词素就复杂得多,如importable中im、port和import都是词素。汉语中的每个字都是一个词素,因此在汉语中要找出一个个词素很容易,但要切分出各个词就非常困难了。如“我们研究所有东西”,可以是“我们-研究所-有-东西”也可以是“我们-研究-所有-东西”。9自然语言理解的过程——词法分析一般地,词法分析可以从词素中获得许多有用的语言信息,如英语中构成词尾的词素“s”通常表示名词复数或动词第三人称单数,“ly”是副词后缀等。一个词有许多派生和变形,如program可变化出progranms、programmed、progranmming、programmable等,如果把这些词都收入词典那将是非常庞大的,但它们的词根只有一个。10自然语言理解的过程——词法分析自然语言理解系统中的电子词典一般只放入词根,以支持词素分析,从而可极大地压缩电子词典的规模。一个英语词法分析的算法如下:repeatlookforstudyindictionaryifnotfoundthenmodifythestudyuntilstudyisfoundornotfurthermodifi-cationpossible它可以对那些按照英语语法规则变化的英语单词进行分析,其中study是一个变量,初始值就是当前的单词。11自然语言理解的过程——词法分析例用上述算法分析catches。解:其分析过程如下:catches词典中查不到catche修改1:去掉scatch修改2:去掉e可以看出,在修改2时就查到了catch。当然,这只是一个很简单的例子,完整的词法分析还应该包括复合词的切分等。12自然语言理解的过程——句法分析句法分析是对句子和短语结构进行分析。句法分析主要作用有:1)分析句子或短语结构,确定构成句子的各个词、短语之间的关系以及各自在句子中的作用等,并将这些关系表达为层次关系。2)规范句法结构,在分析句子的过程中,把分析句子各成分间关系的推导过程用树图表达,使这种图成为句法分析树。句法分析是由专门设计的分析器进行的,其分析过程就是构造句法树的过程,将每个输入的合法语句转换为一棵句法分析树。13自然语言理解的过程—句法分析—句子的结构表示一个句子是由各种不同的句子成分组成的。这些成分可以是单词、词组或从句。句子成分还可以按其作用分为主语、谓语、宾语、宾语补语、定语、状语、表语等。这种关系可用一棵树来表示,如对句子:Hewroteabook.可用图示的树形结构来表示。句子主语谓语动词宾语Hewroteabook14自然语言理解的过程—句法分析—句子的结构表示一个句子又是由若干个词类构成的,如名词、动词、代词、形容词等。若从句子的词类来考虑,一个句子也可用一棵树来表示,这种树称为句子的分析树,如图所示:句子代词动词短语动词名词短语Hewroteabook15自然语言理解的过程—句法分析—句法分析方法句法分析方法自顶向下分析法变换文法上下文无关文法自底向上分析法16自然语言理解的过程—句法分析—上下文无关文法上下文无关文法(Context-freeGrammars)是乔姆斯基提出的一种对自然语言语法知识进行形式化描述的方法。在这种文法中,语法知识是用重写规则表示的。作为例子,下面给出了一个英语的很小的子集:语句→句子终标符句子→名词短语动词短语动词短语→动词名词短语名词短语→冠词名词名词短语→专用名词冠词→the名词→professor动词→trains专用名词→Jack终标符→.这就是一个英语子集的上下文无关文法在该文法中,“语句”是一个特殊的非终极符,称为起始符。17自然语言理解的过程—句法分析—上下文无关文法例利用上述上下文无关文法,给出如下语句的分析树。TheprofessortrainsJack.语句句子终标符动词短语名词短语Theprofessor.trains冠词名词动词专用名词名词短语Jack18自然语言理解的过程—句法分析—变换文法上下文无关文法反映的仅是一个句子本身的层次结构和生成过程,而自然语言是上下文有关的。为此,乔姆斯基又提出了变换文法(TransformationalGrammar)。该文法认为,句子的结构有深层和表层两个层次,例如:Shereadmeastory.和Shereadastorytome.的表层结构不一样,但它们的深层结构则是一样的。再如,主动句和被动句也只是表层结构不同,其深层结构则是相同的。19自然语言理解的过程—句法分析—变换文法在变换文法中,句子深层结构和表层结构之间的变换是通过变换规则实现的,下图给出了一条把主动句变换为被动句的变换规则:句子介词短语1句子名词短语1动词短语动词名词短语2名词短语2动词被动语态动词介词动词的过去分词名词短语1句子介词短语句子名词短语1动词短语动词名词短语2名词短语2动词被动语态20自然语言理解的过程—句法分析—变换文法例利用变换文法,将前述主动句变为被动句解:其变换过程是:先从非终极符“句子”开始产生一个主动句:TheprofessortrainsJack.然后再应用下图所示的变换规则把它变为被动句:Jackistrainedbytheprofessor.助动词介词动词的过去分词名词短语1句子介词短语句子名词短语1动词短语动词名词短语2名词短语2动词被动语态冠词名词专用名词上下文无关文法变换规则冠词名词TheprofessorJacktrainsJack专用名词istrainedbytheprofessorprofessor动词冠词名词Theprofessor名词短语2专用名词trains动词冠词名词TheprofessorJack名词短语2专用名词trains动词冠词名词Theprofessor21自然语言理解的过程—句法分析—自顶向下分析法自顶向下分析,是指从起始符开始应用文法规则,一层一层地向下产生分析树的各个分支,直至生成与输入语句相匹配的完整的句子结构为止。例如,采用自顶向下分析方法对语句:TheprofessortrainsJack.进行分析的过程是:首先从起始符“语句”开始,正向运用规则:语句→句子终标符把分析树的根节点“语句”替换为它的两个子节点“句子”和“终标符”。然后再对新生成的节点“句子”使用规则:句子→名词短语动词短语将其替换为两个子节点“名词短语”与“动词短语”。对于“名词短语”,有两条规则可用,若按规则的排列顺序,则选用名词短语→冠词名词将“名词短语”被替换为“冠词”和“名词”,生成两个新节点。对“冠词”使用规则:冠词→The对名词使用规则:名词→professor以此进行便得到一棵自顶向下的分析树。22自然语言理解的过程—句法分析—自底向上分析法自底向上分析,是以输入语句的单词为基础,首先按重写规则的箭头指向,反方向使用那些最具体的重写规则,把单词归并成较大的结构成分,如短语等,然后对这些成分继续逆向使用规则,直到分析树的根节点为止。以TheprofessortrainsJack.为例,逆向使用规则后,可得到下图所示的部分分析树,继续逆向使用规则,一步步归并,直到根节点“语句”为止,最后即可生成完整的分析树。冠词名词短语.终结符专用名词动词名词JacktrainsprofessorThe23自然语言理解的过程——语义分析语义分析就是要识别一句话所表达的实际意义。即弄清楚“干什么了”,“谁干的”,“这个行为的原因和结果是什么”以及“这个行为发生的时间、地点及其所用的工具或方法”等。语法分析仅是在句法范围内根据词性信息来分析自然语言中句子的文法结构的,由于它没有考虑句子本身的含义,也就不能排除像Thepaperreceivedtheprofessor.这种在语法结构上正确,但实际意义上错误的句子。目前,用于语义分析的技术比较多,本节仅简单介绍语义文法和格文法。24自然语言理解的过程—语义分析—语义文法语义文法是一种把文法知识和语义知识组合起来并以统一的方式定义的文法规则集,是上下文无关的,在形态上与自然语言理解相同的文法。它使用能够表示语义类型的符号,而不采用表示句法成分的非终止符,因而可定义包含语义信息的文发规则。语义分析能够排除无意义的句子,具有较高的效率,而且可以略去对语义没有影响的句法问题。其缺点是应用时需要数量很大的文法规则,因而只适用于受到严格限制的领域。25自然语言理解的过程—语义分析—格文法格文法是以句子的中心动词为主导,并用格来表示其它成分与此中心动词之间的语义关系的一种描述方法。“格”这个词来源于传统语法,但它与传统语法中的格有着本质不同。在传统语法中,格仅表示一个词或短语在句子中的功能,如主格、宾格、等,反映的也只是词尾的变化规则,故称为表层格。在格文法中,格表示的是语义方面的关系,反映的是句子中所包含的思想、观念等,故称为深层格。“格”是一个一般的概念,相对于中心动词的不同语义关系,格可以分为许多种。例如,在句子JohngavethebooktoSally.中,相对于中心动词gave,John是这个行为的发出者,称为动作格;thebook是行为作用的对象,称为受动格;Sally是行为作用对象所到达的目标,称为目标格。26自然语言理解的过程—语义分析—格文法一套正确的深层格究竟应包括多少个格,以及这些格的明确含义是什么,目前尚无定论。下面给出一个描述行为的句子,它所涉及的深层格主要有:Agent(施事),动作主格,指行为的施动者;Object(受事),受动者格,指行为作用的对象;Co-Agent(共施事),帮助者格,指行为施动者的合作者;Instrument(工具),工具格,指施事者或共