人工智能
教案
中职数学基础模块教案 下载北师大版¥1.2次方程的根与系数的关系的教案关于坚持的教案初中数学教案下载电子教案下载
07章 自然语言处理 词性标注
------------------------------------------------------------------------------------------------
人工智能教案 07章 自然语言处理7.3 词性标注
7.3词性标注
大多数自然语言中,一个单词有可能有多种词性,词性标注就是将句子中的各个词汇标注上在该句中的正确词性。
众所周知,人在进行两种不同语言的翻译之前,最起码要掌握这两种语言的词汇、语法和基本常用形式等等。但是,只知道简单的词义、语法会出现很多问
题
快递公司问题件快递公司问题件货款处理关于圆的周长面积重点题型关于解方程组的题及答案关于南海问题
,如右页所示:
?词的多义性:源语言可能一词多义,而目的语言要表达这些不同的含义需要使用不同的词汇;
?文法多义性:对源语言中合乎文法规则但具有多义的句子,其每一可能的意思均可在目的语言中使用不同的文法结构来表达;
?代词重复使用:源语言中的一个代词可指多个事物,但在目的语言中要有不同的代词,正确的选用代词需要了解其确切的指代对象;
?成语:必须识别源语言中的成语,它们不能直接按字面意思翻译成目的语言。
如果不能较好的克服上述这些困难,就不能实现真正的翻译。
注意:需要主义的是,只有在理解的基础上才能正确进行翻译,否则,将遇到一些难以解决的困难。
不仅仅是翻译,在任何自然语言处理过程中,首先要进行的就是分析词的语法范畴(grammaticalcategory)。所谓词性标
注,就是判定词在一定的上下文环境中所体现的语法范畴。计算——————————————————————————————————————
------------------------------------------------------------------------------------------------
机如同人一样,判定词的语法范畴是其对自然语言进行进一步处理的前提,是其自然语言理解能力的初步体现。具体说来,由计算机对词性进行标注有以下实际意义。
?在对大量语料进行标注的基础上为更高层次的语言处理提供数据资料。
?在同样基础上为语言学的研究提供准确可靠的素材。?在语言处理软件中由词性标注模块为进一步的语言处理提供支持。
在书面汉语中,字与字、词与词是连写的,此在句中没有显示的标记。因此,理解汉语的首要任务是把连续的汉字串分割成词的序列,即自动分词。近二十年来,汉语自动分词研究取得了很大成就,提出了许多分词算法,其中有一定代表性的主要有:最大匹配法(又可分为正向、逆向、双向三种)、最优路径(+词频选择)法(最少分词法)、特征词库法、邻接约束法、人工神经网络方法、无词典分词法等等。这些算法各有特色。
人类的自然语言是十分复杂的。有一些词,在不同的语言环境中,可以体现不同的语法范畴(即词性)。这一类词,我们称其为歧义词(ambiguouswords)。例如,单词need,就是既可以做普通名次,又可以作一般动词,有时还可以作情态动词用,所以need就是一个歧义词。在日常生活中,我们通常会觉得对歧义词的处理并不困难,有些时候几乎感觉不到有歧义存在。这主
要是因为我们在长期的学习与生活中,早已积累下了丰富的语言知识。而计算机在遇到这类问题时,处理起来仍具有相当的困难。 ——————————————————————————————————————
------------------------------------------------------------------------------------------------
本节希望通过介绍基于统计的词性标注方法,一方面使大家了解词性标注的基本概念,另一方面,也希望大家对统计方法的应用有更深的了解。
7.3.1国外的代表性工作
?1971年,Greene和Rubin设计了一个名叫TAGGIT的标注系统,对世界上第一个计算机语料库Brown语料库进行了标注。该系统采用的是规则的方法。标注过程分两部分:首先,利用3,000词左右的词典对语料库进行静态标注。其次是歧义消除。系统共使用3,300条上下文约束规则,每条规则由左右两部分组成,左部是一个词串的首尾二词(此二词词性唯一,首尾二词间有一至三个兼类词),右部是在左部模式限制下可能产生的标记串集。当语料中出现了某种和左部规则相匹配的模式时,则利用所有可能的标注作为一个集合,和规则的右部作交集。如果只剩下一个元素,则认为消歧成功,该元素即为标注结果。该系统的正确率达77%。
?CLAWS(Constituent-LikelihoodAutomaticWord-TaggingSystem)。该系统依托对语料的统计,采用语料库语言学(corpuslinguistics)的方法。事实上,对词性进行动态标注是语料库语言学的经典课题。以上所介绍的TAGGIT系统实际上并未运用语料库的方法,它的标注策略是规则的而非统计的。而80年代初由
英国Lancaster大学的研究小组设计的CLAWS系统则第一次在词性自动标注中运用了统计语言学的模型。该系统利用带有词类标记的Brown语料库,通过统计分析获得一个反映任意两个邻接标记同现频——————————————————————————————————————
------------------------------------------------------------------------------------------------
率的转移概率矩阵,根据这种统计信息进行词性标注。该系统的正确率达96-97%。
?在CLAWS之后,词性自动标注多采用统计的方法,尤其是n元语法法(n-grambasedtechniques)。80年代中期后,人工神经网络(artificialneuralnetwork)即连接机制(connectionism)兴起,运用神经网络的方法进行词性自动标注的研究也取得了一定的成果。
?2001年北京大学计算语言学研究所推出了"汉语文本切分与词性标注"软件。该软件主要采用统计和规则相结合的处理方法。目前,该软件已被国内外30多家单位选用。
7.3.2基于规则的方法
早期对词性标注的研究,由于受到机器等各种条件的限制,无法实现利用大规模语料库进行词性的自动标注。这样只能把词类的排歧问题放在句法分析中完成,然而效果并不好。
这种方法中所采用的规则,多是从一些权威的语法书中获取出来的,这不仅需要大量的语言方面的专门知识,还需要花费很多的时间。而且人们在对规则的设计过程中难免会带有主观随意性,从而很难保证规则的一致性。
再次,基于规则的系统处理歧义的能力比较差。因为规则所描述的语言知识是普遍性的,而自然语言本身是十分复杂和灵活的。
正是由于这些缺点,使用这种方法进行词性标注时,正确率不是很高。
——————————————————————————————————————
------------------------------------------------------------------------------------------------
7.3.3基于统计的方法
随着计算机性能的提高,词性标注算法也有了突破性的改进,基于统计的方法逐渐引起人们的重视。这样词性标注不仅可以为更高层次的语料加工提供条件,也可以为语言学的研究提供翔实的资料。
统计方法把语料库引入词性标注中,利用词性之间的同现频率以及马尔可夫(Markov)语言模型来消除歧义。对于由n个词组成的文本W1W2…Wn,如果Wi对应有Mi个兼类,即Wi可能的词性为Tagi1,…,TagiMi。在排歧前有形式:
W1(Tag11,…Tag1M1)W2(Tag21,…,Tag2M2)…
Wn(TagN1,…TagNMn)
马尔可夫过程是一个随机过程{x(t):t?T},它具备这样的性质,即已知t时刻过程所处的状态xt=x(t),在t时刻以后过程将要到达的状态与t时刻以前过程所处的状态无关,这个性质也称为过程的无后效性或马尔可夫性。本节后续的讨论都是在马尔科夫过程的这个性质上进行的。
Wn为终点,若认为W1为起点,则可以用一有向图表示词的
语法范畴在此文本中体现的关系。
图7-18词串中词性关系的有向图
t7-18_swf.htm
图中的顶点表示词性,弧表示在一个句子中,该词对此词性次序(前后次序)的出现的同现概率。这样的统计方法实际上包含了一定上下文关系,选择一条从W1到Wn的最佳路径,即概率最大的路径。——————————————————————————————————————
------------------------------------------------------------------------------------------------
它所利用的数学模型是Markov模型,使用的计算方法通常为动态
规划
污水管网监理规划下载职业规划大学生职业规划个人职业规划职业规划论文
的方法。动态规划方法中最常用的是Viterbi算法。该算法对每个时间点上的各个状态,计算解码状态序列对观察序列的后验概率,保留概率最大的路径,并对每个节点记录下相应的状态信息以便最后反向获取词解码序列。
动态规划:动态规划算法通常用于求解具有某种最优性质的问题。在这类问题中,可能会有许多可行解。每一个解都对应于一个值,我们希望找到具有最优值的解。动态规划算法与分治法类似,其基本思想也是将待求解问题分解成若干个子问题,先求解子问题,然后从这些子问题的解得到原问题的解。与分治法不同的是,适合于用动态规划求解的问题,经分解得到子问题往往不是互相独立的。若用分治法来解这类问题,则分解得到的子问题数目太多,有些子问题被重复计算了很多次。如果我们能够保存已解决的子问题的答案,而在需要时再找出已求得的答案,这样就可以避免大量的重复计算,节省时间。例如,Viterbi算法就
是一种动态规划的方法。
例如:如果没有上下文,"flies"作为动词(V)的概率只有PROB(0.076),而作为名词(N)的概率为PROB(0.025)。但是,在前面加上"the","flies"'就是名词(N)。因为冠词ART与动词V的相关概率几乎为零,而冠词ART与名词N的相关概率却很大,因此theflies只能是冠词+名词,即"flies"的词性是名词。
下面我们来讨论基于统计的词性标注方法的原理。 ——————————————————————————————————————
------------------------------------------------------------------------------------------------
首先一点应该明白我们寻求的是使下式
PROB(C1,C2,……,CT?W1,W2,……,WT)
的概率最大的词性链。
根据Bayes
概率公式,有
由于,句子(词串)出现的概率对于任何词性来说是不变的,因
此上式的优化求解问题的讨论将转化为其分子部分因素的讨论,即,
问题成为寻找C1,C2,……,CT使下式(1)最大。
PROB(C1,C2,...,CT)×PROB(W1,W2,...,WT|C1,C2,...,CT)(1)式(1)中
第一项可以改写为:
PROB(C1,...,CT)
=PROB(C1,...,CT-1)×PROB(CT|C1,...,CT-1)
=PROB(C1,...,CT-2)×PROB(CT-1|C1,...,CT-2)×PROB(CT|C1,...,CT-1)=.......
=PROB(C1C2)×PROB(C3|C1C2)×...×PROB(CT|C1,...,CT-1)
=
PROB(C1)×PROB(C2|C1)×PROB(C3|C2C1)×...×PROB(CT|C1,...,CT-1)
语言模型为n-gram模型时,我们考虑最简单的情况,使用二元
模型bigram,那么:
PROB(C1,...,CT)
?PROB(C1|C0)×PROB(C2|C1)×...×PROB(CT|CT-1)
=?i=1,...,TPROB(Ci|Ci-1)
——————————————————————————————————————
------------------------------------------------------------------------------------------------
计算句子开始时,使用代替,此时的概率为PROB(C0)。
例:
注意:理论上将,真正的概率值是无法求到的。通常,使用标注过的语料库,通过统计可得到近似相关的概率。
例如,
二元概率(bigramprobabilities)
:
词频概率(lexical-generationprobabilities)
:
从公式可以看出,在
样本
保单样本pdf木马病毒样本下载上虞风机样本下载直线导轨样本下载电脑病毒样本下载
数趋于无穷时,所得到的就是概率。因此,在语料库足够大的前提下上式得到的数值是完全可以代替概率使用的。实际中也是这样做的。
利用这种方法,首先可以避免繁杂的人工获取规则知识的工作,它所利用的同现概率等信息可以由机器对大规模语料库进行
统计而得出。同时,由于语料库中包含的语言信息比较全面,所以在对语料库的统计中,小颗粒的语言知识也会被同时获得,从而在歧义词的判定上要大大优于传统的规则方法。
但是,统计方法由于需要大量的同现频率的信息,因此对计算机的存储量要求很高,同时计算这些同现概率,也需要计算机拥有较高的运算水平。
在很长一段时间内,统计方法在词性标注中将成为主导性的方法。
基于Viterbi算法的词性标注例题:
——————————————————————————————————————
------------------------------------------------------------------------------------------------
Flieslikeaflower
采用2元语法,右表所示为各个概率值。
表7-12元词性相关概率
b7-1_swf.htm
表7-2词表中词的词性发生概率
b7-2_swf.htm
句子中各个词的词性组成一张词图。令句子中单词的个数为M,词性的种类为N,准备两个矩阵大小为M*N。矩阵F1的横向
内容
财务内部控制制度的内容财务内部控制制度的内容人员招聘与配置的内容项目成本控制的内容消防安全演练内容
为句子里的词,纵向是词性,在此例中有4个中词性:动词V、名词N、介词P、冠词ART。将每一个词的各个词性填入矩阵中(即使没有也先添上)。另外一个矩阵F2是用来记录单词的各个词性的跳转路径,为最佳路径回溯时使用。
搜索步走如下:
?初始化,由空ф开始
?根据计算空ф和flies所属词性的相关概率,和该词性本身发生的概率,计算由空ф跳转到flies相应词性的概率。其值如下图所示。将该值填入F1。同时纪录矩阵F2中flies的各个词性的前向状态。在此全都是0,即从ф跳过来的。
?同理逐个计算like,a,flower的与前向单词的各个词性的发生概率值,选择最大值将其添入F1中。并且将该最大概率值发生的前向状态填入F2中。
like都是2,如,同样a的两个词性都是来自动词1,而flower——————————————————————————————————————
------------------------------------------------------------------------------------------------
的两个词性却分别来自动词1和冠词4。
?由最终的F2中回溯得到最佳路径。由最后一个单词的拥有最大概率的词性开始,沿着它的前向词的状态回溯,直至到达空集合ф。
本例中,flower的最大概率是0.0000045,词性是名词N,而该词性的F2矩阵中存的是"4",因此,它的前向词"a"的词性是冠词ART。紧接着,"a"的F2的ART的位置存的是"1",也就是说"a"的"like"的词性是1,即动词。同理可得第一个单词Flies的词性是名词。下一个是ф,回溯完毕。
?词性标注结束
图7-19flies的各个词性状态的概率
t7-19_swf.htm
表7-3flies的词性分析后F1的变化
b7-3_swf.htm
表7-4flies的词性分析后F2的变化
b7-4_swf.htm
图7-20like的各个词性状态的概率
t7-20_swf.htm
表7-5like的词性分析后F1的变化
b7-5_swf.htm
表7-6like的词性分析后F2的变化
b7-6_swf.htm
图7-21a的各个词s性状态的概率
——————————————————————————————————————
------------------------------------------------------------------------------------------------
t7-21_swf.htm
表7-72的词性分析后F1的变化
b7-7_swf.htm
表7-8a的词性分析后F2的变化
b7-8_swf.htm
图7-22flower的各个词性状态的概率
t7-22_swf.htm
表7-9flower的词性分析后F1的变化
b7-9_swf.htm
表7-10flower的词性分析后F2的变化
b7-10_swf.htm
最佳词序确定过程可以形式化描写为:最终状态结果:C(4)=2
i=3:C(3)=BACKPTR(C(4),4)=BACKPTR(2,4)=4i=2:C(2)=BACKPTR(C(3),3)=BA
CKPTR(4,3)=1i=1:C(1)=BACKPTR(C(2),2)=BACKPTR(1,2)=2结果:
flies(N)like(V)a(ART)flower(N)
——————————————————————————————————————