(计算机应用技术专业论文)海量语言模型的研究及其在机器翻译中的应用.pdf_第1页
(计算机应用技术专业论文)海量语言模型的研究及其在机器翻译中的应用.pdf_第2页
(计算机应用技术专业论文)海量语言模型的研究及其在机器翻译中的应用.pdf_第3页
(计算机应用技术专业论文)海量语言模型的研究及其在机器翻译中的应用.pdf_第4页
(计算机应用技术专业论文)海量语言模型的研究及其在机器翻译中的应用.pdf_第5页
已阅读5页,还剩62页未读 继续免费阅读

(计算机应用技术专业论文)海量语言模型的研究及其在机器翻译中的应用.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

摘要 近年来,随着自然语言处理技术的发展和大规模语料库的出现,各类自然语 言应用中使用的语言模型规模也越来越大。机器翻译是大规模语言模型的主要应 用领域之一,语言模型有助于机器翻译时选择更符合目标语言习惯的翻译项,研 究结果表明,语言模型训练语料的增大可以稳定地提高翻译的效果。故海量语言 模型成为近年来统计语言模型研究的一个热点。 本文对统计语言模型的重要技术和发展脉络进行了整理和分析,并在此基础 上设计并实现了一套海量语言模型训练工具和一组海量语言模型调用接口,并把 在g o o g l ew e bi t 语料库上训练得到的海量语言模型应用到机器翻译中。 首先,我们设计并实现了可用于g o o g lew e bi t 语料库的海量语言模型训练 工具。通过采用紧凑合理的数据结构、更简单的平滑算法、概率离散化等方法来 优化空间代价,提高性能,使其可以真正在统计机器翻译系统中使用。通过此训 练工具,我们可以完成语言建模任务,生成语言模型文件。 接下来,我们设计并开发了供机器翻译等自然语言应用调用海量语言模型的 接口。通过这些接口,其他自然语言应用可以访问已经生成的语言模型,获取词 串的概率。针对不同的需求,提供有以下三种语言模型调用方式:通过动态链接 库直接调用;通过与语言模型服务器通信来调用;通过与分布式语言模型服务器 通信来调用。动态链接库的调用方式效率最高;语言模型服务器对客户端的要求 较少,方便了客户端的开发;分布式语言模型服务器通过并行技术来提高i o 带 宽,在提高性能的同时降低了对服务器的内存要求。 最后,我们在机器翻译系统中使用上述接口来访问基于g o o g l ew e bi t 的海 量语言模型。在n i s t 2 0 0 8 机器翻译评测测试语料上,机器翻译系统的b l e u 得分, 从2 0 5 4 提高到2 1 9 6 ,提高约7 。初步体现了海量语言模型对机器翻译的帮助。 关键词语言模型;海量语料库;机器翻译 a b s t r a c t a sar e s u l to fp r o g r e s so fn a t u r a ll a n g u a g ep r o c e s s i n ga n da p p e a r a n c eo f l a r g e s c a l ec o r p u s ,l a r g e s c a l es t a t i s t i c a ll a n g u a g em o d e l i n gb e c o m e sb o t hr e a l i s t i c a n dn e c e s s a r y l a n g u a g em o d e l sc o n t r i b u t et ot h es e l e c t i o no fg o o dt r a n s l a t i o ni n m a c h i n et r a n s l a t i o n r e s e a r c hr e s u l t ss h o wt h a tt r a n s l a t i o nq u a l i t yi n d i c a t e db y b l e us c o r ei m p r o v e s s t e a d i l y 、析t l li n c r e a s i n gl a n g u a g em o d e l s i z e s o l a r g e l a n g u a g em o d e lb e c o m e sa na c t i v ea r e ai nr e c e n ty e a r s i nt h i sp a p e r ,b a s e do nt h ea n a l y s e so fm i l e s t o n et e c h n o l o g i e si nl a n g u a g e m o d e l i n g ,w ed e s i g na n di m p l e m e n ta s e to fl a r g el a n g u a g em o d e lt r a i n i n gt o o l sa n da g r o u po fi n t e r f a c e st oa c c e s s i n gl a n g u a g em o d e lt r a i n e d f i r s to fa l l ,w ed e s i g na n di m p l e m e n tl a n g u a g em o d e lt r a i n i n gt o o l st h a ta l e a p p l i c a b l et og o o g l ew e bitc o r p u s w eo p t i m i z et h es p a c ec o s ta n di m p r o v e p e r f o r m a n c et h r o u g hu s i n gm o r ec o m p a c td a t as t r u c t u r e ,e a s i e rs m o o t h i n ga l g o r i t h m a n dp r o b a b i l i t y q u a n t i z a t i o nt e c h n o l o g y w ec a nc o m p l e t et h et a s ko fl a n g u a g e m o d e l i n ga n dg e n e r a t el a n g u a g em o d e lf i l e sw i t ht h e s et o o l s n e x t ,w ed e s i g na n di m p l e m e n ti n t e r f a c e st oa c c e s s i n gl a n g u a g em o d e l ,w h i c h c a nb ec a l l e db yn a t u r a ll a n g u a g ea p p l i c a t i o n ss u c ha sm a c h i n et r a n s l a t i o nt of e t c h p r o b a b i l i t yo fw o r ds e q u e n c e s t om e e td i f f e r e n tn e e d s ,t h e r ea r et h r e ew a y st oa c c e s s a ne x i s t e dl a n g u a g em o d e l :t h r o u g hd y n a m i cl i n k e dl i b r a r y ,t h r o u g hc o m m u n i c a t i o n w i t hl a n g u a g em o d e ls e r v e ro rd i s t r i b u t e dl a n g u a g em o d e ls e r v e r f i n a l l y ,w em a k eu s eo fl a r g el a n g u a g em o d e lt r a i n e do ng o o g l ew e bltb yo u r t o o l si nm a c h i n et r a n s l a t i o na p p l i c a t i o n t h eb l e us c o r ei m p r o v e sf r o m2 0 5 4t o21 9 6 , 7 r e s p e c t i v e l y ,o nt h et e s t s e to fn i s t 2 0 0 8i n t e m a t i o n a lm a c h i n et r a n s l a t i o n e v a l u a t i o n p r e l i m i n a r yr e s u l t ss h o wt h a tl a r g el a n g u a g em o d e ld o e si m p r o v e t r a n s l a t i o nq u a l i t y k e y w o r d s :l a r g el a n g u a g em o d e l ;l a r g e s c a l ec o r p u s ;m a c h i n et r a n s l a t i o n 厦门大学学位论文原创性声明 本人呈交的学位论文是本人在导师指导下,独立完成的研究成果。 本人在论文写作中参考其他个人或集体己经发表的研究成果,均在文 中以适当方式明确标明,并符合法律规范和厦门大学研究生学术活 动规范( 试行) 。 另外,该学位论文为() 课题( 组) 的研究成果,获得() 课题( 组) 经费或实验室的 资助,在() 实验室完成。( 请在以上括号内填写课 题或课题组负责人或实验室名称,未有此项声明内容的,可以不作特 别声明。) 声明人( 签名) :戳阖延 砂7 年月乡日 厦门大学学位论文著作权使用声明 本人同意厦门大学根据中华人民共和国学位条例暂行实施办法 等规定保留和使用此学位论文,并向主管部门或其指定机构送交学位 论文( 包括纸质版和电子版) ,允许学位论文进入厦门大学图书馆及 其数据库被查阅、借阅。本人同意厦门大学将学位论文加入全国博士、 硕士学位论文共建单位数据库进行检索,将学位论文的标题和摘要汇 编出版,采用影印、缩印或者其它方式合理复制学位论文。 本学位论文属于: () 1 经厦门大学保密委员会审查核定的保密学位论文, 于年月日解密,解密后适用上述授权。 () 2 不保密,适用上述授权。 ( 请在以上相应括号内打“ 或填上相应内容。保密学位论文 应是已经厦门大学保密委员会审定过的学位论文,未经厦f - j 3 v 学保密 委员会审定的学位论文均为公开学位论文。此声明栏不填写的,默认 为公开学位论文,均适用上述授权。) 声明人( 签名) :教潞飞逛 2d d c 7 年月舌e l 第一章绪论 1 1 统计语言模型简介 第一章绪论 统计语言模型是描述语言内在规律的数学模型。统计语言模型的任务可以 描述为针对词串( w o r ds e q u e n c e s ) s ,给出其概率p ( s ) 。p ( s ) 描述了词串s 出现的 可能性的大小。一般情况下,正确的词串概率应该大于错误的词串,常见的词串 概率应该大于不常见的词串。比如在汉语中,“早上好 是语法正确的词串,比 较常见,“早好上的语法错误,很少见到。那么一个理想的语言模型应该赋予 前者远远大于后者的概率。 在很多语言模型的应用中,我们感兴趣的不是词串的概率,而是当前上下文 情况下某个词或词串出现的概率,即p ( w r niw r l w l 一1 ) ,可以通过贝叶斯条件 概率公式将其转换为两个词串概率的商,故也可以通过语言模型来得到该概率。 举拼音输入法为例,当前历史为“早上 ,p ( 好i 早上) = p ( 早上好) p ( 早上) ,p ( 号 l 早上) = p ( 早上号) p ( 早上) 。对于理想的语言模型,p ( 早上好) p ( 早上号) , 所以p ( 好i 早上) p ( 号i 早上) 。故利用语言模型可以帮助输入法选择更合理的 汉字,减少用户的选择操作。 人们对统计语言模型的研究由来已久。早在2 0 世纪初期,a n d r e im a r k o v 便 用统计语言模型理论对俄语单词的字母序列进行建模研究。另一个著名的应用事 例来自于香农,他在编码与信息论中用语言模型的原理来研究字母和单词序列。 随后,统计语言模型逐渐应用于自然语言处理领域。但当时受限于计算机的性能 和语料库的建设,很难在大规模语料库上进行经验学习,故相关研究的进展缓慢。 近年来,计算机硬件得到了飞速的发展,机器的存储量越来越大,运算速度 越来越快,而价格却越来越便宜,这样的客观条件使大容量的机器可读语料库的 建设成为可能。仅仅在十几年以前,一百万词的b r o w n 语料库还被认为是巨大无 比难以利用。但其后,更大的语料库不断出现。今天,许多地方都有了几亿甚至 数十亿词的文本样例,而g o o g l e 通过网上搜集得到的文本规模更是达到万亿词次 这个级别乜1 。同时,一些新的、更好的语言模型也不断涌现。所有这些因素推动 海量语言模型的研究及其在机器翻译中的应用 了基于语料库的经验主义研究方法成为目前自然语言处理( n a t u r a ll a n g u a g e p r o c e s s i n g ,n l p ) 研究中的一个热点。统计语言模型是语料库语言学的核心。 作为当前自然语言处理的主流技术,统计语言模型已经被广泛应用于机器翻译、 语音识别、手写识别、拼音输入、文本校对、信息检索等诸多领域口1 。 随着自然语言处理技术的发展和大规模语料库的出现,各类自然语言应用中 使用的语言模型规模也随之增大。具体表现为训练语料越来越大,语言模型的维 数也不断提高。但是在海量数据上训练和使用语言模型需要使用大量的内存空间, 所以如何有效地训练和使用海量语言模型,成为近年来统计语言模型研究的一个 热点5 】【6 】【7 】【引。 1 2 机器翻译简介 机器翻译阳1 一般是指使用计算机把一种语言表达为另外一种语言的转化过 程。机器翻译的研究已有半个多世纪的历史,在计算机发明后不久,便有多位科 学家与发明家陆续提出机器翻译的理论与实践计划或想法。 1 9 5 4 年美国乔治城大学的一项实验,将约6 0 句的俄文翻译成英文,被视 为世界上第一个机器翻译系统。自此之后一直到2 0 世纪6 0 年代前期,欧美各 国的机器翻译出现了不断上升的趋势。然而,a l a p c ( 自动语言处理顾问委员会, a u t o m a t i cl a n g u a g ep r o c e s s i n ga d v is o r yc o m m it t e e ) 在1 9 6 6 年提出的一项 报告中表明十年来的机器翻译研究进度缓慢,未达预期,宣称:“在近期和可以 预见的未来,开发出实用的机器翻译系统是没有指望的”。该项报告使得之后的 研究资金大为减缩,m t 研究陷入了近乎停滞的僵局。 一直到上世纪9 0 年代以前,机器翻译的主流方法一直是基于规则的方法。 同句法分析一样,规则方法在机器翻译问题中同样面临着规则数目庞大,关系复 杂,条目过细的问题。 1 9 9 0 到1 9 9 3 年间,i b m 的b r o w n 等人n 们首先提出基于单词的统计机器翻译 模型,并根据该模型构建了系统c a n d i d e ,效果超越了当时基于规则的方法。基 于单词的模型首次突破了以往基于规则描述信号变化机理的思维模式,转而通过 观察信号变化现象,建立模型,利用机器学习的算法从变化现象中估计模型参数, 最终通过模型和参数来指导翻译。这个思维模式为后来的研究者开辟了一个新的 2 第一章绪论 方向。在这个新的思维模式指导下,机器学习算法,翻译模型,语料库的分析取 代了原先规则方法中的规则描述体系和规则细节,成为研究人员新的关注焦点。 在i b m 的统计机器翻译模型中,最引人注目的是引入了基于统计的信源信道 模型。基于信源信道模型的统计机器翻译方法的基本思想是把机器翻译看成是一 个信息传输的过程,信息经过通道也就意味着信息被翻译过了。也就是说,假设 源语言文本s 是由一段目标语言文本t 经过某种奇怪的编码得到的,那么翻译的 目标就是要将s 还原成t ,也就是一个解码的过程。如图1 2 一l 所示 ts 噪声通道p ( s | 丁) l 根据贝叶斯公式可以得到: 图1 - 1 噪声通道模型 t = a r g m a x t p ( t ) p ( s i t ) 公式1 值得注意的是,在公式1 中,p ( t ) 是目标语言的文本t 出现的概率,该概率 只与目标语言相关,与源语言无关,反映的是一个句子在目标语言中出现的可能 性,而估算该概率正是统计语言模型的任务。p ( st ) 是由目标语言文本t 翻译成 源语言文本s 的概率,称为翻译模型,反映的是两个句子互为翻译的可能性。也 就是说整个机器翻译过程由语言模型和翻译模型共同作用完成,语言模型保证流 利度( f l u e n c y ,达) ,翻译模型保证忠实度( a d e q u a c y ,信) 。由此可见语言模型 在统计机器翻译中的重要性。 之后为了包容丰富的上下文信息,人们将翻译的单位由词对齐 ( w o r d t o - w o r d ) 扩展为短语对齐( p h r a s e t o p h r a s e ) ,这样就产生了基于短 语的翻译模型n 。这里所说的短语并不是语言学上的词组概念,而是任意连通的 子串。2 0 0 2 年,o c h 将对数线性模型引入统计机器翻译n 引。o c h 认为,翻译的过 程应该受到多种知识的影响,将每一个影响翻译的因素表现为一个特征函数,最 终综合全部的特征函数共同作用于译文的选择;而针对每一个特征函数的影响程 度的估值则采用最大熵的想法,即保证模型尽可能的“均匀”,也即信息熵最大。 假设h 1 ( e ,0 ,h 2 ( e ,0 h m ( e ,0 分别是双语对( e ,f ) 上的m 个特征函数,则e 到f 的翻译就可以表示为: 海量语言模型的研究及其在机器翻译中的应用 l 力嬲段一如( e l f ) 鞋l = 唧【气他力】乙e 印【和i 厂 】 柚,“ 公式2 这是一个比信源信道模型更为一般化的方法,基于信源信道的方法可以看做 基于最大熵的方法的一个特例。对数线性模型的主要优点在于可以很容易地整合 各种知识源并用机器学习的方法调节知识源之间的权重。o c h 的这篇a c l2 0 0 2 最佳论文对统计机器翻译的影响极大。现在的统计机器翻译系统几乎全部采用对 数线性模型框架。虽然该框架并没有要求一定引入语言模型作为特征函数。但近 年来统计机器翻译的研究实践表明,如果不引入语言模型或者语言模型质量不好, 无论是基于短语的模型还是基于句法的模型,翻译质量都很差。所以语言模型是 对数线性机器翻译模型很重要的一个特征函数,对系统的翻译质量影响很大。 统计机器翻译是海量语言模型的主要应用领域之一。研究结果表明,语言模 型训练语料的增大可以稳定地提高机器翻译的效果口1 。在2 0 0 6 年的n i s t 机器翻 译评测中,表现较好的系统都使用了5 元以上的语言模型,而训练语料规模则在 1 3 亿词次之上。之后,为了改善机器翻译的质量,各系统所采用语言模型的规 模仍然不断扩大。 1 3 本文的工作 2 0 0 6 年9 月,g o o g l e 公司通过l d c ( 语言数字协会,l i n g u i s t i cd a t a c o n s o r t i u m ) 向外公布了在词次数量达到1 t 的w e b 文本上整理得到的英语语料库。 其中,词频超过4 0 次的5 元组个数就超过1 1 亿个。海量语料库为训练和使用海 量语言模型创造了条件。但如何处理海量语料库却是一个难题:训练和使用海量 数据上的语言模型需要大量的内存空间,当物理内存不够导致需要频繁地页面交 换时,训练和使用语言模型的时间代价会急剧增加,最终导致无法将其应用于机 器翻译中。因此,探索如何在海量语料库上训练和使用语言模型具有很强的研究 价值。 本文的主要工作可以归结为如下三点: 1 ) 设计并实现可用于g o o g l ew e bi t 语料库的海量语言模型训练工具。通过采 用紧凑的数据结构、更简单的平滑算法、概率离散化等方法来优化空间代价,提 4 第一章绪论 高性能,使其可以真正在统计机器翻译系统中使用。开发时注重系统的扩展性和 完善性,实现了海量语言模型训练的完整流程。 2 ) 设计并开发供机器翻译等自然语言应用调用的海量语言模型接口。通过这些 接口,其他自然语言应用可以调用已经生成的语言模型,获取词串的概率。针对 不同的需求,我们实现了以下三个接口:第一个接口以动态链接库形式让本机其 他程序调用,这种方式运行效率高;第二个接口以语言模型服务器形式提供,由 客户端通过网络通信的方式进行调用,这种方式客户端程序可以运行在不同平台、 不同主机,一个语言模型服务器可以支持多个客户端;第三个接口是在第二个接 口的基础上,实现分布式的语言模型服务器,通过并行技术来提高i o 带宽,在 提高性能的同时降低内存要求。 3 ) 将实现的语言模型工具应用于统计机器翻译系统中,以此来检验海量语料库 上的语言模型对于机器翻译系统的帮助。 本文的组织结构如下: 第一章为绪论部分,简要介绍统计语言模型和机器翻译,概述我们的主要工 作及论文结构安排。 第二章对统计语言模型进行了简要综述,并重点介绍了近年来在海量语言模 型上的研究进展。 第三章主要论述基于g o o g l ew e b1 t 语料库的语言模型的训练过程,并重点 分析了本文实现的系统的设计原则和其中比较关键的数据结构和算法。 第四章介绍了如何调用训练好的海量语言模型,并在语言模型服务器的基础 上进而实现分布式语言模型。 第五章介绍在机器翻译中应用海量语言模型的实验结果。 第六章我们总结了本文的工作,提出了未来的工作方向。 5 第二章统计语言模型 2 1 理论基础 2 1 1 概率论基础 第二章统计语言模型 如果集合q 是一个离散的事件集合,p ( a ) 是其中某个事件a 的分布概率,则 有: ( 1 ) 0 p ( a ) 1 ( 2 ) a np ( a ) = 1 以上是概率的两个基本约束条件。 在通常情况下,概率是一个依赖于一组参数的变量。一般把由某一组参数0 决定的随机变量x 的概率记为:p ( x i o ) 。 举个很简单的例子,例如在一个抛硬币的实验中,硬币落到地面上结果有两 种( 设为h 和t ) 。其中为h 的概率记为p 。则有: ( 1 ) 事件空间q 为集合 h ,t ) ( 2 ) o p 1 ( 3 ) 根据概率定义,p ( a = h ) = p ,则p ( a = t ) = 卜p 。 此外,在本文中将用到以下的名词和术语,在这里先简单的介绍一下它 们的用法和意义: ( 1 ) 概率p ( a ) 。表示在一个样本空间中,事件a 发生的可能性。例如:扔 硬币时得到正面的概率p ( a ) = 0 5 。 ( 2 ) 条件概率p ( a ic ) 。表示在事件c 发生的条件下,事件a 发生的可能性。 举某个汉语语言模型为例:“的的概率大约是0 0 2 ,但是如果己知前 一个词是形容词如“巨大”,那么当前词是“的”的条件概率则接近0 5 ; 如果已知前一个词是数量词如“一个 ,那么当前词是“的的条件概 率则几乎为0 。条件概率一般表示为:p ( a i c ) ,其中a 是当前事件,c 是 作为条件的事件 7 海量语言模型的研究及其在机器翻译中的应用 ( 3 ) 联合概率p ( a ,b ) 。表示事件a 和b 同时发生的可能性。 ( 4 ) 独立事件。如果a b 事件是独立的,则p ( a ,b ) = p ( a ) p ( b ) 。 ( 5 ) 贝叶斯条件概率公式。贝叶斯公式描述了通过一系列先验概率计算后验 概率的方法,其最简单的形式是:p ( bla ) = p ( a ,b ) p ( a ) 。此公式为统计 语言模型的应用提供了理论基础 2 1 2 最大似然估计 最大似然估计( m a x i m u ml i k e l i h o o de s t i m a t i o n ,m l e ) 是最常使用的参数 计算方法,它的基本思想是:求一组参数,它能够使已观测到的事实的概率最大。 设想我们从一个事件空间q 里面随机的选出5 个事件f e l ,e 2 ,e 3 ,e 4 ,e 5 ) 。例如在 上面的抛硬币的例子中,连续做五次试验,观察的硬币的朝向分别是: h ,h , t ,t ,h ) 。那么就可以用最大似然估计的方法来计算分别出现h 和t 的概率。假 设每次实验都是相互独立的,则有: 户( zl 国= n p c e , i i - 1 矿= a r g m a x p ( x 8 ) = a r g m a x l - i ( f ,i 国 p口 - i 在上面例子中有: p = a r g m a x p ( xi ) = a r g m a x 兀夕( 矽,l 夕) 9 , 扣l = a r g m a x p xp x ( 1 一力x0 一力纠 , = a r g m a x p 3 a 一力2 雄【0 1 】 很容易求得p + = 3 允。一般的有,当在n 个事件序列中观察到h 个h 的时候, p + = n n 。需要注意的是这n 个实验是相互独立的。重复实验的次数越多,参 数估计得越准确。 最大似然法是语言模型最明显的参数估计算法( 至少从通常的观点来看) , 实现起来也很简单。例如一个语料中有1 0 个词,“b e ”出现2 次,则p ( “b e ”) = 0 2 。 但是一般来讲,m l e 并不适合于自然语言处理中的统计推理。这是由于数据稀疏 8 第二章统计语言模型 引起的。即使当我们使用一个大的语料库时,也会有数据稀疏问题。一般常用的 词并不多,词汇的大部分都是不常用的,因此包含它们的n - g r a m ( n 元组) 也是很 稀少的。m l e 对于没有找到的事件一视同仁地赋予o 概率,这在很多情况下并不 适用。所以在语言模型的参数估计时,一般需要引入各种平滑算法。 举个例子:假设出现了一个没有在语言模型训练语料中出现的新词“x m u l m , 那么用m l e 进行参数估计的语言模型将赋予p ( “x m u l mi s ) 和p ( “x m u l m 9 6 # ) 一样的0 概率。 2 1 31 3 元语言模型( n g r 硼模型) 通信过程中的随机信号和噪声均可归纳为依赖于时间参数t 的随机过程。这 种过程的基本特征是,它是时间t 的函数,但在任一时刻观察到的值却是不确定 的,是一个随机变量。或者,它可看成是一个由全部可能实现构成的总体,每个 实现都是一个确定的时间函数,而随机性就体现在出现哪一个实现是不确定的。 定义一给定样本空间q 和参数集t ,如果对任意te t ,都有一个定义于q 上的随机变量x ( t ,w ) 与之对应,就称 x ( t ,w ) ,t t ) 为随机过程。 随机过程是依赖于时间参量t 变化的随机变量的总体或集合。随机过程的统 计特征是通过它的概率分布或数字特征加以表述的。 定义二随机过程 x ( t ) ,t t ) 中参数集t = 0 ,l ,2 ,) ,状态空间为 i = 0 ,1 ,2 ,) 。如果对任意正整数l ,1 1 1 ,k ,及任意非负整数j l j 2 j 1 ( m j 1 ) 有: 户 z ( 蹦+ = o 量ix ( 神= ,x ( 力) = 屯,- ,x ( 五) = ,x ( z ) = 颤 = 科x 铆+ 量) = o ilz 伽) = 成立,就称x ( t ) 为马尔可夫链。 语言模型的任务是估计概率方程p ( w h1w r l w r n 一1 ) ,在这样的一个随机问 题中,我们使用了先前词,也就是用历史来预测下一个将要出现的词的概率。观 测大量的文本,我们会知道什么样的词趋向于出现在另外一些词的后面。但对于 这个任务,我们不可能考虑每个文本历史,在大多数情况下,我们遇到的句子是 以前从来没有见到的。所以我们需要一个可以把文本历史组合到一起的方法,从 而对下一个词的概率给出一个合理的预测。组合文本历史的一种可能方法就是引 9 海量语言模型的研究及其在机器翻译中的应用 入马尔可夫假设。该假设认为只有当前的上下文( 前面的很少几个词) 可以影响 到下面要出现的词。如果我们构造一个语言模型,这个模型中的所有历史是前 n 一1 个词,那么该模型就是一个( n - 1 ) 阶马尔可夫模型,或者称为1 3 元语言模 型( n - g r a m 模型) 。 举例来说,对于2 元语言模型:p ( 好i 早上) = p ( 好i 今天早上) 。因为 对于2 元语言模型,当前词的概率只和前一个词有关系。 从本质上来说,使用n 元语言模型相当于构造了历史等价类,从而减少了模 型的参数数量,降低了数据稀疏带来的影响。n 元语言模型并不是构成历史等价 类的唯一方法,也有一些语言模型是通过语义的方法来构造历史等价类。通过语 义的方法而不是单纯的位置信息来构造历史等价类,这有利于发现诸如谓词和特 定宾语间的语法关系。但语义语言模型的构造要复杂得多,在很多自然语言处理 任务中又没有表现出比n 元语言模型更好的性能,所以目前n 元语言模型是使用 最广泛的统计语言模型。 n 元语言模型存在着以下几个主要问题: ( 1 ) 针对词而不是词类建模,数据稀疏问题比较严重。 ( 2 ) 只关心有限长度的历史,无法解决长距离约束问题。 ( 3 ) 不同领域的语料如新闻语料和口语语料包含着不同的语言规律,语言模 型对此没有区分,所以缺乏领域自适应性。 ( 4 ) 完全基于统计,没有运用到语言学的知识。 虽然有着种种缺点,但由于n 元语言模型简单、高效、易用,适合在海量语 料库上训练,往往能取得比复杂语言模型更好的效果,所以其被广泛地应用于机 器翻译、语音识别、手写识别、拼音输入、文本校对、信息检索等诸多领域,成 为最主流的统计语言模型。本文设计和实现的语言模型都是n 元语言模型。在本 文的后面章节中,如果没有特别指出,当提到统计语言模型或者语言模型时,就 是特指n 元语言模型( n - g r a m 模型) 。 2 1 4 其他语言模型 针对n 元语言模型的不足之处,计算语言学的研究人员设计出很多新型的语 言模型,下面简要介绍几种: 1 0 第二章统计语言模型 ( 1 ) 基于类的语言模型( c l a s s b a s e dn g r a mm o d e l ) 。主要思想是基于词类 建立语言模型。这样可以一定程度上缓解数据稀疏问题,并且可以在划分词类时 融合部分语法信息。这种方法的主要缺点是合适的词类难以获取。 ( 2 ) 基于主题的语言模型( t o p i c b a s e dn g r a mm o d e l ) 。主要思想是将训练 集划按主题分成多个子集,并分别建立n g r a m 模型,以解决语言模型的主题自适 应问题。这种方法的难点在于设计主题划分和优化权值的方法。 ( 3 ) 缓存语言模型( c a c h e - b a s e dn g r a mm o d e l ) 。主要思想是利用c a c h e 缓 存前一时刻的信息,以用于计算当前时刻概率,解决语言模型动态自适应问题。 这种方法的难点在于c a c h e 大小的设置和设计优化权值的方法。 ( 4 ) 跳跃式语言模型( s k i p p i n gn g r a mm o d e l ) 。主要思想是当前词的概率由 历史中的某些词来决定,而不是仅仅考虑几个临近词。故可以解决长距离约束问 题。这种方法的主要缺点是模型难以训练。 ( 5 ) 指数语言模型,主要包括最大熵模型、最大熵马尔科夫模型、条件随机 场模型。它们的共同之处就是把已知上文,获得当前词概率分布的问题转换成一 个分类问题。优点在于这些模型可以融合多种知识源,而缺点是训练算法时间复 杂度过高,无法处理大量数据。 ( 6 ) 基于句法语法的语言模型。这边的句法可以是p c f g ,也可以是其他语 法表示结构。这类语言模型的优点在于可以基本解决长距离约束问题,可以融入 语言学知识,可以缓解数据稀疏问题。但是训练和使用都很困难,而且句法分析 的错误会降低语言模型的效果。 2 1 5 语言模型的评价标准 信息论是关于信息的本质和传输规律的科学理论,是研究信息的计量、发送、 传递、交换、接收和储存的一门新兴学科。自从上世纪4 0 年代s h a n n o n 将统计 物理学中熵的概念引入语言信息领域从而创立信息论以来( s h a n n o n1 9 4 8 ) ,信 息论在该领域的各个方面都得到了广泛应用。信息论的内容十分丰富,因为本文 论述的是统计语言模型,所以在这里只是简单的介绍一下信息论在统计语言模型 中的应用。 统计语言模型的核心概念是熵。熵是表征事物复杂程度的量度。在信息论中, 海量语言模型的研究及其在机器翻译中的应用 信息被定义为对事物不确定性的消除和减少。如果要衡量信息量的多少,就需要 确定信息输入前后事物不确定性的大小,熵可以用来度量不确定性亦或复杂性的 大小。熵的定义为: 眉( z ) = 一p ( x ) l 0 9 2 尸( 艴x 它的物理意义就是要表征一个事物中的每个元素所使用的最短平均二进制 编码的长度。可以想象,如果需要的平均编码越长,那么表达的信息就越多,该 事物就越复杂。例如在一个文本t 中,如果通篇只有2 个字符a 和b ,且出现次 数相等,那么p ( a ) = 0 5p ( b ) = 0 5 。 ( 刃= 一夕( 句l 0 9 2p ( 力一夕( l 0 9 2 夕( 国 = 一0 5 l 0 9 2o 5 一o 5 l 0 9 20 5 = 1 这就是说该文本中字符的信息量只要一位二进制数就能表示了,而这是显然 的,把a 记作1 ,b 记作0 ,即有上面的结论。 评价一个统计语言模型优劣的一个简单方法是将该语言模型置于应用系统 中,根据该应用系统的与模型的拟合程度,来评价该语言模型的优劣。但是这种 评价方法依赖于具体的应用环境,不能完全展示出统计语言模型自身的特性。因 此,计算语言学界一般采用信息论的方法,根据统计语言模型在测试文本上的交 叉熵( c r o s se n t r o p y ) 或困惑度( p e r p le x it y ) ,对统计语言模型进行评价。 交叉熵一般用以下公式计算: 曰( 形i 妨= 一p ( w ,h ) l 0 9 2 p c w l ) 【w h ) e t h ( w i h ) 表示当h 确定之后,w 的不确定性的大小。h ( w ) 经常用来衡量n - g r a m 模型的性能。 困惑度可以被近似的认为是按语言模型预测某种语言时,每个词后接候选词 的概率的几何平均数。它的定义如下: 即= 2 粥= 2 她,呐哪= p ( w x w 2 ) = 血 p ( 唯1 v t - i + ,) 】- i = l 其中n 为语言模型的阶数,比如二元语言模型则n = 2 。可以这么理解公式: 当采用语言模型m 的模型参数估计测试文本w 中每个词的出现概率时,这些概率 1 2 第二章统计语言模型 的几何平均值的倒数就是语言模型的困惑度。该值越小,对应的语言模型对语言 的约束能力越强。 交叉熵和困惑度是语言模型的理论评价标准。应用这两个标准来评价语言模 型,可以不依赖于具体的应用,但也存在一定的局限性:第一,得分高的语言模 型不一定拟合具体应用;第二,要求语言模型提供的结果必须满足概率的约束条 件。设想一下,假如把一个语言模型估算的结果都乘以1 0 ,那么该模型的困惑 度无疑会大幅下降,但该语言模型对语言的区分能力其实没有变化。传统的语言 模型平滑算法能够保证平滑后的概率满足上文提到的概率的两个基本约束条件, 所以可以用困惑度来衡量语言模型的性能。而一些新型的平滑算法,包括本文实 现的平滑算法,并没有这一保证,故不能使用困惑度来衡量语言模型的性能。我 们采用的评判方法是将语言模型应用于机器翻译中,用机器翻译的结果好坏来论 证语言模型的优劣。 2 2 经典平滑算法 正如上文提到的,在应用n 元语言模型的过程中,常常会遭遇数据稀疏( d a t a s p a r s e n e s s ) 问题。数据稀疏问题的实质是大规模统计方法与有限规模语料之间 的矛盾。根据z i p f 规则,一个观测到的现象,在词语频率和它的频率的排列位 置之间存在一个近似的倒数关系。也就是说,大部分词汇都是不常见的,因此包 含它们的n g r a m ( n 元组) 也是很稀少的。 下面给出一个数据稀疏的例子。b a h l 等人从i b m 的l a s e rp a t e n tt e x t 语 料库中得到了一个1 ,5 0 0 ,0 0 0 个词的训练语料,在这个语料上进行训练之后,使 用从相同语料得到的测试文本进行测试,结果是测试语料中共有2 3 的t r i g r a m ( 三元组) 是训练中没有看到的。虽然这个实验中训练语料的规模并不算大,但 是该实验和后续的一些实验证明了不可能搜集足够的数据来得到稀有事件的完 整概率分布。对于大量的低频词来说,无论训练语料库的规模如何扩大,其出现 频度依然很低或根本不出现,我们无法获得其足够的统计特性,也就不能得到可 靠的概率估计。 要解决数据稀疏导致的0 概率问题,可以通过稍微减少已观察到的事件概率 的大小,同时把少量概率分配到没有看到过的事件上的方法来解决。这通常被称 海量语言模型的研究及其在机器翻译中的应用 为折扣法( d i s c o u n t i n gm e t h o d ) ,也被称为平滑算法( s m o o t h i n gm e t h o d ) ,平滑 算法对n 元语言模型的性能有着很大的影响。下面介绍几种经典的平滑算法。 2 2 1 加法平滑技术 这类方法是采取对所有( 包括出现和未出现的) 事件的频率值加上一个固定 的值来避免零概率事件n 3 1 钔。比如l i d s t o n e 、j o h n s o n 和j e f f r e y s 等人提出的 a d d - 6 平滑算法,其基本思想为:为了避免零概率问题,将n - g r a m 模型中每个 事件的出现次数加上一个常数6 ,即: 儿c 州。2 嚣恕南 其中o o ) c 娩( w i 再+ 1 ) = 。 【崔( w ;一。+ 2 ) c 址( w :一+ 】) 矿c cc 埘一- + 1 ) = o ) 实验表明,在小训练集上的b i g r a m 模型上,k a t z 平滑具有较大的优势。 2 2 4 线性插值平滑 线性插值平滑方法通常也被称作j e li n e k - m e r c e r 平滑。该数据平滑技术主 要利用低阶模型对高阶n - g r a m 模型进行线性插值。j e l i n e k 和m e r c e r 在1 9 8 0 年首先提出了这种数据平滑算法的思想,b r o w n 在1 9 9 2 年给出了线性插值的平 滑公式: p 嘶寥( , ;i :h ) = 色吧_ p r o ( w , i 啦i - ) + ( 1 一五口h ) p 诅t 翠( ql :+ :) n - g r a m 模型可以递归地定义为由最大似然估计原则得到的n - g r a m 模型和 ( n - 1 ) - g r a m 模型的线性插值。为了结束以上的递归定义:可以令u n i g r a m 模型 为最大似然估计模型。对于插值系数入的估计,一般可以采用b a u m - w e l c h 算法 估计出来,也可以通过留存数据的方法得到。由于此类平滑技术的系数计算极其 复杂,因此也就衍生出很多改进的平滑方法,如w i t t e n b e l l 平滑和 a v e r a g e c o u n t 平滑。 2 2 5w i t t e n - b ei l 平滑算法 w i t t e n - b e l l 平滑算法n 7 1 是j e l i n e k - m e r c e r 线性插值平滑算法的一个特例, 该平滑算法与一般的线性插值平滑算法的唯一不同之处在于插值系数入:+ 1 的 设置方法。一般的线性插值平滑算法采用b a u 旷w e l c h 重估算法训练入i i 一- n i + l ,而 w i t t e n b e l l 平滑算法采用如下的公式计算: 1 5 海量语言模型的研究及其在机器翻译中的应用 l 一乜咀= 而筹罄b l + ( w h t - l + l - i w 。ic ( w i 卜_ s 1 + 1 ) 0 i w i t t e n - b e l l 平滑算法实现简单,计算代价低,效果却很不错,是一种优秀 的平滑算法。 2 2 6k n e s e r - n e y 平滑算法 k n e s e r n e y 平滑算法n 砌是一种非线性插值平滑算法。k n e s e r 和n e y 于1 9 9 5 年在绝对折扣平滑方法的基础上提出了这种新的平滑算法,其基本思想为:当使 用低阶模型对高阶模型进行插值平滑时,低阶模型在混合模型中的影响较大,因 此必须进行特殊处理。 例如,在英语中“f r a n c i s c o ”一词仅出现在“s a n 之后。由于c ( f r a n c i s c o ) 很大,p ( f r a n c i s c o ) 较高,如果采用绝对折扣平滑方法,那么对于任意不等于“s a n 的上下文h ,p ( f r a n c i s c o i h ) 也会被赋予很高的概率,这显然是不合理的。因此 在k n e s e r n e y 平滑中,他们认为u n i g r a m 概率p ( w ) 应与其不同的前向邻接词的 数量成正比,而不是与其频度c ( w ) 成正比。即: 鼬( 咩) = 繁等 啊+ ( w 。) = i o ) i ,m + ( ) = j ( ( 小m ) ic ( 1 ) o ) i 。 把k n e s e r n e y 平滑公式推广到n 元模型为: p 拼( w fl 二:+ 1 ) = 三垒竺兰专主至铲+ ,( 二三+ 1 ) p ( 1w 。i 一- 拧i + 2 ) 公式中的d 是常数

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论