• 精选
  • 会员

里程碑三:1976统计语言模型

2018年11月15日  来源:量子位 作者: 提供人:t.call.p@126.c......

2.3 里程碑三:1976统计语言模型

第三大贡献是语料库方法,或叫统计语言模型。

首先成功利用数学方法解决自然语言处理问题的是语音和语言处理大师弗雷德·贾里尼克(Fred Jelinek)。1968年始在IBM研究中心兼职1974年全职加入,他领导一批杰出科学家利用大型计算机处理人类语言问题,学术休假(SabbaticalLeave)时(约1972-1976年间)提出统计语言模型。

1990s李开复用统计语言模型把997个词的语音识别问题简化成了20词识别问题,实现了有史以来第一次大词汇量非特定人连续语言的识别。常用统计语言模型,包括N元文法模型(N-gram Model)、隐马尔科夫模型(Hidden MarkovModel,简称HMM)、最大熵模型(MaximumEntropy Model)等。

??2????????oNLP??¥èˉ?é??????????¥èˉ??????????????±?????¨?????ˉ??????????

美国工程院院士Frederick Jelinek

如果用变量W代表一个文本中顺序排列的n个词,即W = w1w2…wn,则统计语言模型的任务是给出任意一个词序列W在文本中出现的概率P(W)

利用概率的乘积公式,P(W)可展开为:

P(W) =P(w1)P(w2/w1)P(w3/ w1 w2)…P(wn/w1 w2…wn-1)(1)

式中P(w1)表示第一个词w1的出现概率,P(w2/w1)表示在w1出现的情况下第二个词w2出现的条件概率,依此类推。

不难看出,为了预测词wn的出现概率,必须已知它前面所有词的出现概率。从计算上来看,这太复杂了。如果近似认为任意一个词wi的出现概率只同它紧邻的前一个词有关,那么计算就得以大大简化。这就是所谓的二元模型(bigram),由(1)式得:

P(W) ≈ P(w1)∏i=2,…,nP(wi/ wi-1 )(2)

式中∏i=2,…,nP(wi/ wi-1 )表示多个概率的连乘。

需要着重指出的是:这些概率参数都可以通过大规模语料库来估值。比如二元概率

P(wi/ wi-1) ≈count(wi-1 wi) / count(wi-1)(3)

式中count(…)表示一个特定词序列在整个语料库中出现的累计次数。若语料库的总词次数为N,则任意词wi在该语料库中的出现概率可估计如下:

P(wi) ≈count(wi) / N(4)

同理,如果近似认为任意词wi的出现只同它紧邻前两个词有关,就得到一个三元模型(trigram):

P(W) ≈P(w1)P(w2/w1) ∏i=3,…,nP(wi/wi-2 w-1 )(5)

统计语言模型的方法有点像天气预报。用来估计概率参数的大规模语料库好比是一个地区历年积累起来的气象记录,而用三元模型来做天气预报,就像是根据前两天的天气情况来预测当天的天气。天气预报当然不可能百分之百正确。这也算是概率统计方法的一个特点。

2.3.1 语音识别

语音识别作为计算机汉字键盘输入的一种图代方式,越来越受到信息界人士的青睐。所谓听写机就是这样的商品。据报道中国的移动电话用户已超过一亿,随着移动电话和个人数字助理(PDA)的普及,尤其是当这些随身携带的器件都可以无线上网的时候,广大用户更迫切期望通过语音识别或手写板而不是小键盘来输入简短的文字信息。

其实,语音识别任务可视为计算以下条件概率的极大值问题:

W*= argmaxWP(W/speech signal)

= argmaxWP(speech signal/W) P(W) / P(speech signal)

= argmaxWP(speech signal/W) P(W) (6)

式中数学符号argmaxW表示对不同的候选词序列W计算条件概率P(W/speech signal)的值,从而使W*成为其中条件概率值最大的那个词序列,这也就是计算机选定的识别结果。换句话讲,通过式(6)的计算,计算机找到了最适合当前输入语音信号speech signal的词串W。

式(6)第二行是利用贝叶斯定律转写的结果,因为条件概率P(speech signal/W)比较容易估值。公式的分母P(speech signa)对给定的语音信号是一个常数,不影响极大值的计算,故可以从公式中删除。在第三行所示的结果中,P(W)就是前面所讲得统计语言模型,一般采用式(5)所示的三元模型;P(speechsignal/W)叫做声学模型

讲到这儿,细心的读者可能已经明白,汉语拼音输入法中的拼音-汉字转换任务其实也是用同样方法实现的,而且两者所用的汉语语言模型(即二元或三元模型)是同一个模型。

据笔者所知,目前市场上的听写机产品和微软拼音输入法(3.0版)都是用词的三元模型实现的,几乎完全不用句法-语义分析手段。为什么会出现这样的局面呢?这是优胜劣汰的客观规律所决定的。可比的评测结果表明,用三元模型实现的拼音-汉字转换系统,其出错率比其它产品减少约50%。

2.3.2 词性标注

一个词库中大约14%的词型具有不只一个词性。而在一个语料库中,占总词次数约30%的词具有不止一个词性。所以对一个文本中的每一个词进行词性标注,就是通过上下文的约束,实现词性歧义的消解。历史上曾经先后出现过两个自动词性标注系统。一个采用上下文相关的规则,叫做TAGGIT(1971),另一个应用词类的二元模型,叫做CLAWS(1987)。

两个系统都分别对100万词次的英语非受限文本实施了词性标注。结果显示,采用统计语言模型的CLAWS系统的标注正确率大大高于基于规则方法的TAGGIT系统。请看下表的对比:

??2????????oNLP??¥èˉ?é??????????¥èˉ??????????????±?????¨?????ˉ??????????

令C和W分别代表词类标记序列和词序列,则词性标注问题可视为计算以下条件概率的极大值:

C*= argmaxCP(C/W)

= argmaxCP(W/C)P(C) / P(W)

≈ argmaxC∏i=1,…,nP(wi/ci )P(ci /ci-1 )(7)

式中P(C/W)是已知输入词序列W的情况下,出现词类标记序列C的条件概率。数学符号argmaxC表示通过考察不同的候选词类标记序列C,来寻找使条件概率取最大值的那个词类标记序列C*。后者应当就是对W的词性标注结果。

公式第二行是利用贝叶斯定律转写的结果,由于分母P(W)对给定的W是一个常数,不影响极大值的计算,可以从公式中删除。接着对公式进行近似。首先,引入独立性假设,认为任意一个词wi的出现概率近似只同当前词的词类标记ci有关,而与周围(上下文)的词类标记无关。于是词汇概率可计算如下:

P(W/C) ≈∏i=1,…,n P(wi/ci )(8)

其次,采用二元假设,即近似认为任意一个词类标记ci的出现概率只同它紧邻的前一个词类标记ci-1有关。有

P(C) ≈ P(c1)∏i=2,…,n P(ci /ci-1 )(9)

P(ci /ci-1 )是词类标记的转移概率,也叫做基于词类的二元模型。

上述这两个概率参数都可以通过带词性标记的语料库来分别估计:

P(wi/ci ) ≈count(wi,ci) / count(ci)(10)

P(ci /ci-1 ) ≈count(ci-1ci) / count(ci-1)(11)

据文献报道,采用统计语言模型方法汉语和英语的次性标注正确率都可以达到96%左右[6]。

2.3.3 介词短语PP的依附歧义

英语中介词短语究竟依附于前面的名词还是前面的动词,是句法分析中常见的结构歧义问题。下例用语料库方法来解决这个问题,以及这种方法究竟能达到多高的正确率。

例句:Pierre Vinken,61 years old, joined the board as a nonexecutive director.

令A=1表示名词依附,A=0为动词依附,则上述例句的PP依附问题可表为:

(A=0,V=joined, N1=board, P=as, N2=director)

令V, N1, N2分别代表句中动词短语、宾语短语、介宾短语的中心词,并在一个带有句法标注的语料库(又称树库)中统计如下四元组的概率Pr:

Pr = (A=1 /V=v, N1=n1, P=p, N2=n2)(10)

对输入句子进行PP 依附判断的算法如下:

若Pr = (1 / v, n1, p, n2) ≥ 0.5,

则判定PP依附于n1,

否则判定PP依附于v。

Collins和Brooks实验使用的语料库是宾夕法尼亚大学标注的华尔街日报(WSJ)树库,包括:训练集20,801个四元组,测试集3,097个四元组。他们对PP依附自动判定精度的上下限作了如下分析:

一律视为名词依附(即A≡1) 59.0%

只考虑介词p的最常见附加72.2%

三位专家只根据四个中心词判断88.2%

三位专家根据全句判断93.2%

很明显,自动判断精确率的下限是72.2%,因为机器不会比只考虑句中介词p的最常见依附做得更差了;上限是88.2%,因为机器不可能比三位专家根据四个中心词作出的判断更高明。

论文报告,在被测试的3,097个四元组中,系统正确判断的四元组为2,606个,因此平均精确率为84.1%。这与上面提到的上限值88.2%相比,应该说是相当不错的结果。

传统三大技术里程碑小结

语言学家在不论是复杂特征集和合一语法,还是词汇主义方法,都是原先所谓的理性主义框架下做出的重大贡献。词汇主义方法提出了一种颗粒度更细的语言知识表示形式,而且体现了一种语言知识递增式开发和积累的新思路,值得特别推崇。

尤其值得重视的是,在众多词汇资源的开发过程中,语料库和统计学习方法发挥了很大的作用。这是经验主义方法和理性主义方法相互融合的可喜开端,也是国内知名语言学者冯志伟等人认可的研究范式。

语料库方法和统计语言模型,国内同行中实际上存在不同评价。有种观点认为NLP必须建立在语言理解基础上,他们不大相信统计语言模型在语音识别、词性标注、信息检索等应用领域中所取得的进展。这些争论不能澄清,是因为同行间缺少统一评测。有评测才会有鉴别。

评判某方法优劣应公开、公平、相互可比的评测标准,而非研究员设计“自评”。黄昌宁、张小凤2013年论文表示,语料库方法和统计语言模型是当前自然语言处理技术的主流,其实用价值已在很多应用系统中得到充分证实。统计语言模型研究在结构化对象的统计建模方面,仍有广阔发展空间。

自然语言处理领域业界知名博主Sebatian Ruder在2018年文章从神经网络技术角度,总结NLP领域近15年重大进展、8大里程碑事件,提及很多神经网络模型。这些模型建立在同一时期非神经网络技术之上,如上述三大里程碑。下面接着看后续NLP技术的发展。

自然语言处理 / NLP

如涉及版权,请著作权人与本网站联系,删除或支付费用事宜。

0000