CN101707873A - 机器翻译中的大语言模型 - Google Patents

机器翻译中的大语言模型 Download PDF

Info

Publication number
CN101707873A
CN101707873A CN200880016830A CN200880016830A CN101707873A CN 101707873 A CN101707873 A CN 101707873A CN 200880016830 A CN200880016830 A CN 200880016830A CN 200880016830 A CN200880016830 A CN 200880016830A CN 101707873 A CN101707873 A CN 101707873A
Authority
CN
China
Prior art keywords
gram
backoff
identifying
grams
score
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN200880016830A
Other languages
English (en)
Other versions
CN101707873B (zh
Inventor
托尔斯滕·布兰奇
阿肖克·C·珀派特
徐鹏
弗朗茨·约瑟夫·欧池
杰弗里·迪安
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Google LLC
Original Assignee
Google LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Google LLC filed Critical Google LLC
Publication of CN101707873A publication Critical patent/CN101707873A/zh
Application granted granted Critical
Publication of CN101707873B publication Critical patent/CN101707873B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/40Processing or translation of natural language
    • G06F40/42Data-driven translation
    • G06F40/49Data-driven translation using very large corpora, e.g. the web
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/40Processing or translation of natural language
    • G06F40/42Data-driven translation
    • G06F40/44Statistical methods, e.g. probability models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/40Processing or translation of natural language
    • G06F40/42Data-driven translation
    • G06F40/45Example-based machine translation; Alignment
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/18Speech classification or search using natural language modelling
    • G10L15/183Speech classification or search using natural language modelling using context dependencies, e.g. language models
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/18Speech classification or search using natural language modelling
    • G10L15/183Speech classification or search using natural language modelling using context dependencies, e.g. language models
    • G10L15/19Grammatical context, e.g. disambiguation of the recognition hypotheses based on word sequence rules
    • G10L15/197Probabilistic grammars, e.g. word n-grams

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Human Computer Interaction (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Machine Translation (AREA)

Abstract

本发明提供了用于机器翻译的系统、方法和计算机程序产品。在一些实现中,提供了一种系统。该系统包括语言模型,该语言模型包括:来自语料库的n-gram的集合,每个n-gram具有在语料库中的对应的相对频率和与在n-gram中的符号的数量对应的级n,每个n-gram与具有n-1的级的回退n-gram对应;和回退分值的集合,每个回退分值与n-gram相关联,该回退分值被确定为回退因子和在语料库中对应的回退n-gram的相对频率的函数。

Description

机器翻译中的大语言模型
技术领域
该说明书涉及统计机器翻译。
背景技术
由人类操作员进行的对文本的人工翻译可能费时且费钱。机器翻译的一个目标是自动地将源语言的文本翻译为目标语言的对应文本。机器翻译具有若干不同的方法,包括基于示例的机器翻译和统计机器翻译。统计机器翻译试图识别对于源语言的特定输入的目标语言的最可能翻译。例如,当将句子从法语翻译为英语时,统计机器翻译识别对法语句子的最可能英语句子。该最大可能翻译可以被写为:
arg max e P ( e | f )
其描述了在所有可能的句子中的提供了关于P(e|f)的最高值的英语句子e。此外,贝斯法则规定:
P ( e | f ) = P ( e ) P ( f | e ) P ( f )
利用贝斯法则,该最可能的句子可以被重写为:
arg max e P ( e | f ) = arg max e P ( e ) P ( f | e )
因此,最可能的e(即,最可能的英语翻译)是使e发生的概率和e将被翻译成f的概率(即,给定的英语句子被翻译成法语句子的概率)的乘积最大化的英语翻译。
发明内容
提供了用于机器翻译的系统、方法和计算机程序产品。一般地,在一个方面,提供了一种系统。该系统包括语言模型,该语言模型包括:来自语料库的n-gram的集合,每个n-gram具有在语料库中的对应的相对频率和与在n-gram中的符号的数量对应的级n,每个n-gram与具有n-1的级的回退n-gram对应;和回退分值的集合,每个回退分值与n-gram相关联,该回退分值被确定为回退因子和在语料库中的对应的回退n-gram的相对频率的函数。该方面的其他实施例包括对应的系统、设备、计算机程序产品和计算机可读介质。
一般地,在一个方面,提供了一种方法。该方法包括生成语言模型,包括:识别来自训练数据的语料库的n-gram的集合,集合的每个n-gram具有在语料库中出现的对应的相对频率和与在n-gram中的符号的数量对应的级n,每个n-gram与具有n-1的级的回退n-gram对应;和识别一个或多个回退因子,其中回退因子被用于作为回退n-gram的相对频率的函数识别关于一个或多个n-gram的回退分值。
一般地,在另一个方面,提供了一种方法.该方法包括:接收具有多个符号的输入字符串,该输入字符串被划分成一个或多个n-gram,每个n-gram具有级,该级识别在n-gram中的符号的数量;以及利用语言模型识别在输入字符串中的每个n-gram的概率.当在语言模型中没有发现输入字符串中的第一n-gram时,识别回退n-gram,回退n-gram具有比第一n-gram的级小1的级,并且此时在语言模型中发现回退n-gram;以及识别关于第一n-gram的回退分值,该回退分值是回退因子和在语言模型中的回退n-gram的相对频率的函数.该方面的其他实施例包括对应的系统、设备、计算机程序产品和计算机可读介质.
在该说明书中描述的主题的具体实施例可以被实施为实现一个或多个下面的优点。可以在不计算关于回退n-gram的归一化概率的情况下直接作为相对频率的函数确定关于n-gram的回退。可以在其中关于特定n-gram的n-gram回退值可以在同一分片(shard)上生成的分布环境中生成语言模型。
在该说明书中描述的主题的一个或多个实施例的细节在下面的附图和描述中被说明。根据描述、附图以及权利要求,主题的其他特征、方面和优点将会更加清楚。
附图说明
图1是示例机器翻译系统的框图。
图2是示例语言模型的框图。
图3示出了用于生成语言模型的方法。
图4是用于执行翻译的示例系统。
在各个附图中类似的参考数字和标记表示类似的元素。
具体实施方式
图1是示例机器翻译系统100的框图。机器翻译系统包括目标语料库102、语言模型104、平行语料库106、翻译模型108、和解码器110。将输入文本112提供给翻译系统100产生翻译文本114。
目标语料库102提供目标语言(例如,英语)的文本集,其被用于训练语言模型104。目标语料库102可以包括多个不同的文本源,包括例如网页和新闻文章。在一些实现中,目标语料库102包括百亿到千亿数量级或者更多的词的文本。一个这样的语料库是语言数据联盟(“LDC”)Web 1T 5-gram Version 1语料库,LDC目录No.:DC2006T13,ISBN:1-58563-397-6,由Google公司贡献。该语料库使用的来自公共可访问的网页的大约一万亿个文本符号(token)(包括个体词、标点符号、以及识别个体句子的开始和结束的标志)。
语言模型104识别源语言的特定字符串(例如,短语、句子、或句子集合)出现的概率。因此,对于英语,语言模型104识别英语的特定字符串出现的概率。为了识别特定字符串出现的概率,语言模型104计算字符串出现在目标语料库102中的次数除以在目标语料库102中的字符串的总数。例如,如果在100,000,000个词的语料库中短语“Thered wheelbarrow(红色手推车)”出现了53,000次,则概率等于:
p ( The red wheelbarrow ) = 53,000 100,000,000 = 0.00053
然而,大量可能的字符串具有零的概率,因为在目标语料库102内没有发现它们.因此,在一些实现中,特定字符串的概率被计算为子字符串组件的概率的函数.用于表示子字符串的一种技术是通过使用n-gram.n-gram是n个连续符号的序列.n-gram具有级(order),其为在n-gram中的符号的数量.例如,1-gram(或者单gram)包括一个符号,2-gram(或者二gram)包括两个符号.
n-gram语言模型使用n-gram子字符串来计算字符串的概率。给定字符串的概率可以被计算为n-gram条件概率的乘积。关于二gram的条件概率,表示为P(y|x),是词y跟随(follow)词x的概率。条件概率一般被根据在目标语料库102中的相对频率根据经验确定。在上面的示例中,词y相对于词x的概率被给定为:
P ( y | x ) = f ( xy ) f ( x )
其中,f(xy)是在目标语料库102中字符串“xy”出现的频率或者计数。
字符串的概率可以被确定为条件概率的乘积。例如,为了利用二gram语言模型计算以短语“The red wheelbarrow”开始的句子的P(Thered wheelbarrow),n-gram语言模型计算:
p(The|<start>)P(red|The)P(wheelbarrow|red),
其中,<start>表示句子的开始,从而p(The|<start>)表示句子以“The”开始的概率。
该字符串概率可以被归纳为:
p ( e 1 , . . . , e k ) = &Pi; i = 1 k p ( e i | e i - n + 1 , . . . , e i - 1 )
其中(e1,...,ek)表示在字符串中的符号,而n是在语言模型中允许的最大n-gram的级。
平行语料库106包括源语言(例如,英语)的文本集和一种或多种目标语言(例如,法语)的对应翻译。平行语料库106可以包括多个不同的文本源,包括例如网页和新闻文章对,其中,每个对包括源语言的文本以及目标语言的对应翻译文本。在另一示例中,平行语料库106可以包括多语言数据。例如,联合国会议录是可用的,其提供六种语言的平行翻译。
翻译模型108识别特定目标语言字符串相对于特定源字符串的条件概率。因此,对于英语源语言和法语目标语言,翻译模型108识别法语字符串f相对于英语字符串e的概率P(f|e)。翻译模型可以以多个不同方式被生成。在一些实现中,多个参数被估计以确定P(f|e)。例如,可以根据以下四个参数定义翻译模型:t、n、d和p(例如,在P.F.Brown,V.J.Della Pietra,S.A.Della Pietra和R.L.Mercer的TheMathematics of Statistical Machine Translation:ParameterEstimation,Computational Linguistics 19(2),1993中描述的IBM模型3)。
翻译参数t提供了从源词产生翻译词的概率,例如t(bonjour|hello)。生育率(fertility)参数n提供了源词将会产生n个目标词的概率。例如,n(2|hello)代表源词“hello”将会产生正好两个法语词的概率。失真参数d提供与在目标句子中的目标词的位置相对于在源句子中的对应源词的位置相关联的概率。例如,d(3|5)表示在句子的位置5中的英语词(例如,第五个词)将会提供在翻译的法语句子的位置3中的法语词(例如,第三个词)的概率。另外,参数p提供包括假性(spurious)词的翻译的概率。假性词是在源语言字符串的目标语言翻译中出现的与在源字符串中的源词不对应的词。
如果在源和目标句子对中的词是全部对准的,则模型参数的值可以被直接估计.术语“对准”将被用来指表示在一对句子中的源词和目标词(例如,在一个句子中的“hello”与“bonjour”对准)之间的词对词连接的数据结构.在一些实现中,对准简单地是识别各种目标词所连接到的源词的位置的矢量.如果对准是已知的,则可以估计参数值.
可能存在多于一个的可能的对准。例如,句子对可具有两个相等可能的对准。因此,可对于特定对准计算概率。对准概率定义了词以特定方式对准的可能。特定对准相对于特定句子对的概率可以被写为P(a|e,f),其中:
P ( a | e , f ) = p ( a , f | e ) p ( f | e )
其中,
P ( f | e ) = &Sigma; a p ( a , f | e )
并且其中,P(a,f|e)是在所有的对准a上的总计,并且表示在对准和源句子相对于目标句子的联合概率。对准a是由单个字母表示,然而,它表示其维数可以改变的矩阵。具体地,a是矩阵随机变量,其特定值是指在特定源句子和特定成对的目标句子之间的关联(例如,链接)的矩阵。列对应于源词位置,而行对应于目标词位置。在其中没有对应关系的情形中,附加的行和列可以利用空词标注。矩阵中的元素是0和1,表示在对应的源和目标句子词之间存在或不存在关联。根据使用的对准模型,在矩阵中链接可能发生(例如,源词是否能映射到多个目标词、词是否能映射到空词等)的情况下可以施加约束。
因此,可以根据P(a,f|e)描述P(a|e,f)。然而,P(a,f|e)也可以被描述为参数值的函数。因此,如果参数值是已知的,则可以直接计算对准概率。
特定的对准a是指在特定的(f,e)对之间的特定对准,而P(a|e,f)是对于特定的(f,e)对在可能的对准上的后验概率。P(a|e,f)通过如下所述参数被描述,即,所述参数可以通过一些训练过程而被估计,所述训练过程通过如下所述重复地学习参数,即:在大量的(f,e)句子对上进行循环、使用当前的参数值获得比在前一迭代中获得的更好的每对之间的字对准、然后使用对准更新参数值,然后重复。例如在FranzJoseph Och和Hermann Ney的A Systematic Comparison of VariousStatistical Alignment Models,Computational Linguistics,29(1):9--51,March 2003中可发现关于对准的附加细节。
因此,为了计算P(f|e),翻译系统计算P(a,f|e)。然而,为了计算P(a,f|e),需要参数值。另外,为了获得参数值,系统需要P(a|e,f),而为此再次需要P(a,f|e)。因此,一种技术被用于基本同时既解决参数值,也解决对准概率。
可以使用期望最大化(“EM”)算法来利用迭代过程直到确定局部最优值而估计参数值和对准概率。在概率性模型中EM算法计算变量的最大似然估计。EM算法是两步过程。期望步骤通过包括如同所被观察到的变量值而计算似然期望值。最大化步骤通过使在期望步骤中所计算的期望似然最大化而计算最大似然估计。过程在期望步骤和最大化步骤之间迭代,其中在最大化步骤中计算的变量的值被用于下一个期望步骤。术语“EM算法”是指一类相关算法:期望和最大化步骤提供用于开发具体EM算法的路线图。在一些实现中,使用除了EM算法以外的其他技术来发现最大似然估计,例如梯度下降或共轭梯度技术。
利用诸如EM算法的技术,翻译模型108被训练以对于给定的源语言和目标语言确定最可能的参数值以及对准概率。
解码器110将语言模型104和翻译模型108应用于给定的字符串(例如,来自输入文本112)以产生翻译字符串(例如,翻译文本114)。具体地,解码器110通过寻找最大化由语言模型104确定的P(e)和由翻译模型108确定的P(f|e)的乘积的句子e(例如英语句子),翻译观察到的句子f(例如法语句子)。
图2是示例语言模型200的框图。语言模型200包括n-gram 202、n-gram概率204、和回退分值206。n-gram 202从训练数据得到,例如,从目标语料库102得到。对于特定语言模型200,n-gram 202包括每个级的n-gram。例如,对于5-gram语言模型,n-gram 202包括从训练数据得到的5-gram、4-gram、3-gram、2-gram和1-gram。在一些实现中,n-gram代表连续符号的字符串,其中,符号可以包括标点符号和其他信息,例如句子的开始的标识符。
n-gram概率204是作为在训练数据中的n-gram相对频率的函数计算的概率估计。例如,L个符号的字符串可以表示为w1 L=(w1,w2,...wL)。概率可以被指定给字符串w1 L为:
p ( w 1 L ) = &Pi; i = 1 L p ( w i | w 1 i - 1 ) &ap; &Pi; i = 1 L p ^ ( w i | w i - n + 1 i - 1 ) ,
其中,该逼近(approximation)基于马尔可夫假设,即,当预测字符串中的下一个词时,仅仅最近的(n-1)个符号是相关的,并且P的“^”标注指示它是概率函数的逼近。
对于字符串wi L的任何子字符串(例如,特定n-gram),表示为wi j,可以计算频率f(wi j)。子字符串的频率表示在训练数据中该子字符串的出现的频率,其可以被认为是长的固定样本字符串。关于n-gram的最大似然概率估计由它们的相对频率给出。关于每个n-gram的相对频率可以被确定为:
r ( w i | w i - n + 1 i - 1 ) = f ( w i - n + 1 i ) f ( w i - n + 1 i - 1 )
n-gram的相对频率是n-gram的频率除以(n-1)-gram的频率。在训练数据中关于每个n-gram的概率估计可以被计算,并且对于每个n-gram作为n-gram概率204被存储在语言模型200中。
对于特定n-gram,如果它们在训练数据中没有被发现,相对频率可以是零或者不确定的。结果,相应的概率估计可能是不准确的或不确定的。这被称为稀疏数据问题。另外,更高的级的n-gram的使用尽管潜在地增加了语言模型准确性,但加剧了稀疏数据问题。结果,可使用平滑技术来解决缺少的n-gram。
平滑可以由回退分值206提供。回退分值206可以被用于保证对于给定n-gram总具有非零概率。一般地,回退考虑n-gram的一部分是否出现。例如,如果没有发现三gram“xyz”,则执行平滑以识别回退n-gram“yz”是否出现。如果“yz”没有出现,则平滑可以递归地识别“z”是否出现。
在一些实现中,回退分值206被直接计算为n-gram的相对频率的函数。因此,对于给定n-gram的概率,当n-gram存在时,p(wi|wi-k+1 i-1)可以表示为n-gram的相对频率。因此,当n-gram频率大于零时, f ( w i - k + 1 i ) > 0 , 概率估计简单地是相对频率:
f ( w i - k + 1 i ) f ( w i - k + 1 i - 1 )
然而,当n-gram频率不大于零时,回退分值被计算为:
αS(wi|wi-k+2 i-1),
其中,α是回退因子,并且S被用于表示计算是分值而不是概率,因为利用n-gram的相对频率直接计算它们。尤其,回退因子将惩罚施加于回退n-gram的相对频率(例如,以补偿不存在的n-gram)。回退因子α在一些实现中可以取决于k(即,n-gram级)。用于确定变量α值的技术的示例在下面被描述。替选地,不管n-gram级如何,可以指定单个值(例如α=0.4)。
对于没有被发现的回退n-gram,递归计算,直到回退已经达到单gram。在单gram水平,分值变成:
S ( w i ) = f ( w i ) N ,
其中N是训练数据的大小。
在一些替选的实现中,对于特定的n-gram级,回退分值206包括一个或多个α值。利用关于n-gram级的α值和识别的回退n-gram的相对频率,关于特定n-gram的具体分值然后在运行时响应于输入n-gram被计算。因此,各个回退分值不被存储在语言模型200中,而是根据需要被生成。
图3示出了用于生成语言模型的方法300。为简便,将相对于执行方法300的系统描述方法300。
系统接收302训练数据。训练数据可以是例如目标语料库(例如,目标语料库102)中的文本的一部分或全部。在一些实现中,利用识别的训练数据生成n-gram语言模型。
另外,在一些实现中,分布式训练环境被用于大的训练数据(例如,百万兆字节的数据)。用于分布式训练的一个示例技术是MapReduce。术语MapReduce描述用于处理和生成大的数据集的模型的实现和编程模型两者。模型和它的库实现将都被称为MapReduce。利用MapReduce,程序员指定映射函数和化简函数,其中,映射函数处理输入(键,值)对以生成中间(键,值)对的集,化简函数合并与同一中间键相关的所有中间值。以该函数风格编写的程序可以自动地在大集群的商业计算机上被并行化并且执行。运行系统或框架可以被执行为对输入数据进行划分,跨越一组机器调度程序的运行,处理机器故障并且管理需要的机器间通信。
MapReduce计算采取一组输入(键,值)对,并且产生一组输出(键,值)对。用户将计算表达为两个函数:映射和化简。
Map,例如是由程序员编写的,接纳输入(键,值)对,并且产生一组中间(键,值)对。MapReduce库将与同一中间键I相关的所有中间值分组在一起并且将它们传递到化简函数。
化简函数,也例如是由程序员编写的,接受中间键I和关于该键的一组值。它将这些值合并在一起以形成可能更小组的值。典型地,对于每一化简调用(invocation),仅仅产生零或一个输出值。中间值通过迭代器被提供给用户的化简函数。按照这种方式,可以处理太大而不能适配在存储器中的值的列表。在J.Dean和S.Ghemawat,MapReduce:Simplified Data Processing on Large Clusters,Proceedings of the 6thSymposium on Operating Systems Design and Implementation,pp.137150(2004年11月6日)中描述了MapReduce的附加细节。
典型地,若干映射任务在不同的处理器(例如,在不同的计算装置上)独立地运行,并且在输入数据的不同部分上运行。类似地,若干化简任务在中间数据的一部分上独立地运行。中间数据的部分根据中间键被划分,从而相同的化简器在关于给定的中间键的所有值上运行。
系统从训练数据生成304词汇表。词汇表识别在训练数据中的各个符号(例如词、标点符号)。MapReduce可以被应用到训练数据以生成词汇表和与在词汇表中的每个符号相关联的频率计数。
映射阶段采用输入(键、值)对,并且产生中间(键,值)对。具体地,映射阶段的输入(键、值)对对应于识别节点的键和是在节点中的文本的值。中间(键,值)对具有对应于各个词的键值和关于该词的对应值。化简阶段将具有相同键的中间(键,值)对化简为单个输出(键、值)。具体地,化简输出关于在训练数据中的词的词汇表以及它们的频率(词,词汇表)。
例如,对于三个分片S1、S2和S3,可以生成词汇表和词频率。分片S1包括训练数据文本“a rose”。分片S2包括文本“is a rose”。分片S3包括文本“a rose is a rose”。在映射阶段,关于每个分片的输入是键=ID并且值=句子。映射输出是:键=词并且值=1。具体地,来自S1的映射产生中间(键,值)对:
(<s>,1)
(a,1)
(rose,1)
(</s>,1)。
来自S2的映射被输出为中间(键,值)对:
(<s>,1)
(is,1)
(a,1)
(rose,1)
(</s>,1)。
最后,来自S3的映射产生中间(键,值)对:
(<s>,1)
(a,1)
(rose,1)
(is,1)
(a,1)
(rose,1)
(</s>,1)。
在一些实现中,通过简化冗余条目,可以在化简阶段之前优化中间(键,值)对。例如,来自S3的中间(键,值)对可以被优化为:
(<s>,1)
(a,2)
(rose,2)
(is,1)
(</s>,1)。
在化简阶段,中间(键,值)对被组合以产生输出(键,值)对,其中,键=词并且值=计数。在该示例中的结果输出(键,值)对是:
(<s>,3)
(a,4)
(is,2)
(rose,4)
(</s>,3)。
化简阶段的结果提供关于在训练数据中的文本的词汇表以及词频率。在一些实现中,为特定分片的中间(键,值),利用例如散列函数识别特定化简分片。
用于生成词汇表的映射和化简函数可以表示如下:
    Map(string key,string value){
           //key=docid,ignored;value=document
           array words=Tokenize(value);
           for i=1..#words Emit(words[i],“1”);}
    int ShardForKey(string key,int nshards){return Hash(key)%n
shards;
    }
    Reduce(string key,iterator values){
          //key=term;values=counts
          int sum=0;
          for each v in values
                   sum+=Parselnt(v);
          Emit(AsString(sum));
}
系统利用词汇表生成306n-gram。词汇表允许系统确定达到最大n-gram级的词汇表符号的每个可能组合。系统可利用MapReduce被实现,以生成训练数据中的n-gram以及它们的频率。
映射阶段可以根据词汇表处理训练数据分片。化简阶段组合n-gram从而输出(键,值)对是(n-gram,频率)对。
例如,利用MapReduce,三个示例分片被用于说明关于2-gram的n-gram。时例分片是S4、S5、和S6。分片S4包括文本“a rose foo”。分片S5包括文本“is a rose bar”并且分片S6包括文本“a rose is a rose”。
在映射阶段,映射函数被应用于节点的输入(键,值)作为词汇表的函数。在该示例中词汇表是(<s>,</s>,<UNK>,a,is,rose),其中<UNK>提供代表在训练数据中的罕见词例如“foo”的通用占位符。在映射阶段产生的中间(键,值)对具有等于2-gram的键和关于该2-gram的值。因此,对于S4,中间(键,值)对是:
(<s>a,1)
(a rose,1)
(rose<UNK>,1)
(<UNK></s>,1)。
对于S5,中间(键,值)对是:
(<s>is,1)
(is a,1)
(a rose,1)
(rose<UNK>,1)
(<UNK></s>,1)。
最后,对于S6的中间(键,值)对是:
(<s>a,1)
(a rose,1)
(rose is,1)
(is a,1)
(a rose,1)
(rose</s>,1)。
在化简阶段期间,中间(键,值)对被组合以产生输出(键,值)对,其中,键是独特的2-gram,并且值是关于每个n-gram的计数:键=2-gram,值=计数。在示例中的结果输出(键,值)对是:
(<s>a,2)
(<s>is,1)
(a rose,3)
(is a,2)
(rose is,1)
(rose<UNK>,2)
(rose</s>,1)
(<UNK></s>,2)。
因此,化简阶段的结果提供2-gram和在语料库中的它们的频率。
用于生成n-gram的映射函数可以被表示为如下:
   Map(string key,string value){
          //key=docid,ignored;value=document
          array ids=Tolds(Tokenize(value));
          for i=1..#ids
for j=0..maxorder-1
Emit(ids[i-j..i],“1”);
}
化简函数可以以与用于词汇表生成的化简函数相同的方式表示。
系统确定308关于n-gram的相对频率。回忆,在上面相对频率被定义为:
r ( w i | w i - n + 1 i - 1 ) = f ( w i - n + 1 i ) f ( w i - n + 1 i - 1 )
利用MapReduce也可以识别在语料库中的n-gram的相对频率。例如,n-gram可以被划分成多个分片。n-gram和频率的输入可以在映射和化简阶段中被处理,从而以与上述类似的方式产生关于n-gram的相对频率。
具体地,可以使用分片函数,其设置用于分子和分母的值,以计算在同一分片上的相对频率。具体地,散列函数可以被应用到n-gram的第一个词。结果,需要的n-gram wi-n+1 i和wi-n+1 i-1将共享相同的第一个词wi-n+1,并且将被设置在相同的分片上(除了所有的单gram以外)。
然而,在一些实现中,利用第一个词进行分片只能导致不平衡的分片。例如,在不匀称数量的n-gram的开始可以发现一些词语(例如停用词(stopwords)、一些标点符号标志、或句子的开始标志)。通过基于n-gram的前两个词进行散列,可以使分片更加平衡,例如:
Int ShardForkey(string key,int nshards){
         String prefix=FirstTwoWords(key);
         Return Hash(prefix)%nshards;
}
另外,在每个分片上再生单gram计数,以计算在各个分片中的相对频率。然而,与n-gram的总数相比,数据量小。
系统确定310回退分值。各个分片包括计算在分片中的n-gram的相对频率所必需的所有信息。当没有发现完整的n-gram时,计算回退分值。因此,如果没有发现完整的n-gram的相对频率r(wi|wi-n+1 i-1),则系统递归地寻找回退相对频率,例如r(wi|wi-n+2 i-1)、r(wi|wi-n+3 i-1)等,直到达到单gram回退。因为在其最后两个词上分片的n-gram和在每个分片上复制的所有的单gram,所以所有回退计算可以在同一分片中执行。
在一些实现中,回退分值被存储在每个分片上,用于分片的各自回退n-gram。替选地,系统存储关于回退因子α的值,所述值被各个分片使用以在运行时响应于输入n-gram(例如,来自将被翻译的输入字符串)计算特定回退分值。
总而言之,语言模型可以在下面步骤中从语料库生成。系统生成词汇表。利用来自语料库的输入文本,系统输出1-gram的词汇表以及它们的频率。接着,n-gram和它们的频率被识别。将文本和词汇表用作输入来识别n-gram和它们的频率。利用n-gram和它们各自的频率来计算关于n-gram的相对频率。利用如上所述的MapReduce实现在该过程中的每个步骤。然后作为n-gram的相对频率的函数直接确定回退分值。
如上述,根据n-gram级可能具有多个关于回退因子α的值。例如,如果对于特定样本数据,经常使用4-gram,则用于从5-gram回退到4-gram的惩罚(即α值)应该小。相反,如果在样本数据中经常使用4-gram,那么用于从4-gram回退到3-gram的惩罚应该大。
对于被称为留存数据(heldout data)的特定样本数据,可以获得关于在每一级多少n-gram也出现在语言模型中的计数.用于在n-gram语言模型中确定多个回退因子α的一种技术包括确定与在每一级的计数成比例的回退因子.例如,对于特定留存数据集,检验达到某个最大级n的所有k-gram,即,k=1,...,n.在级k的n-gram的覆盖被计算为在也出现于语言模型中的留存数据中的级k的n-gram出现的数量除以在留存数据中的级k的n-gram出现的总数,即,Ck=Lk/Nk,其中,Lk小于或等于Nk。另外,Ck小于或等于在低一级的n-gram级的覆盖,即,Ck小于或等于Ck-1。假定计算值为Ck,在每一级的回退因子值αk被确定为:
αk=1-Ck  如果k=n(最高的级)并且
&alpha; k = ( 1 - C k ) &alpha; ( k + 1 ) 如果k=1,...,(n-1)。
因此,在每一级αk值与计数成比例。例如,对于一组留存数据和最大级5,可以计算下面的回退因子:α5=0.7012,α4=0.6090,α3=0.2547,α2=0.1052,α1=0.0399。符号α5表示当从5-gram回退到4-gram时的回退因子。在一些实现中,不存在从1-gram到0-gram的回退,因此α1值不被使用。
另一技术稍微调整用于计算回退因子的公式为:
αk=1-Ck  如果k=n(最高的级)并且
&alpha; k = ( 1 - C k ) ( 1 - C k + 1 ) 如果k=1,...,(n-1)。
上述调整导致关于较低级的回退的αk值略有增加。例如,利用相同的留存数据,回退因子被计算为:
α5=0.7012,α4=0.6090,α3=0.3632,并且α2=0.1728。
在另一技术中,用于计算回退因子的公式对于较高级的回退提供更高的回退值:
αk=(Ck-1-Ck)/Ck如果k=n(最高的级),
&alpha; k = ( C k - 1 - C k ) ( C k - C k + 1 ) 如果k=2,...,(n-1),并且
&alpha; k = ( 1 - C k ) ( C k - C k + 1 ) 如果k=1。
上述公式将上面的样本αk值调整如下:α5=0.9177,α4=0.9916,α3=0.4719,α2=0.1761,α1=0.1858。如上,对于给定的语言模型,α1可以被忽略。
在一些实现中,可以包括上限值(cap value)。上限值可以被引入以防止回退值变得太大。因此,可以将回退因子的上限定为αmax,使得回退值等于计算的αk值或αmax的最小值。例如,在上面的样本α值中,当使用αmax=0.95时,回退因子α4被从计算的值0.9916减小到上限值0.95。
在用于计算回退因子的另一技术中,引入术语Mk。Mk是在留存数据集中使用的在级k的概率的总和。回退因子然后被计算,从而在级k的回退分布的总量与在级k的留存集的概率量成比例:
αk=Mk-1/Mk    如果k=2...n并且
αk=0          如果k=1。
再次对于留存数据的相同样本集,上面公式提供了下面的示例回退值:α5=0.5396,α4=0.5138,α3=0.1111,α2=0.0248,α1=0.0。如同前一示例,最大回退值αmax可以被用于对回退值设定上限。
在一些实现中,可以使用区别训练来确定关于一个或多个回退因子的值。机器翻译系统典型地使用区别训练技术优化自由参数,以在一组参考翻译对其是可用的一些样本数据上最小化翻译质量的自动化测量,例如,双语评估替代(“BLEU”)分值。区别训练不试图直接优化数值分值。而是,识别产生比其他回退因子值好的翻译分值的一组回退因子值。例如在Papineni,K.,Roukos,S.,Ward,T.,和Zhu,W.J.“BLEU:a method for automatic evaluation of machine translation”inACL-2002:40th Annual meeting of the Association for ComputationalLinguistics pp.311-318(2002)中描述了BLEU分值。
具体地,为了区别地训练回退因子,利用关于回退因子的不同值来翻译对其翻译是可用的句子的集合。导致较高值的BLEU(或类似的)分值的回退因子被使用。在Franz Josef Och,Minimum error rate trainingin statistical machine translation,In Proc.of the 41st Annual Meeting ofthe Association for Computational Linguistics(ACL),160-167页(2003)中描述了在统计机器翻译中区别地训练特征的一个示例方法。上面的方法可以被用于训练回退因子。通过将当在翻译期间在每一词位置应用语言模型时所遇到的实际回退的程度作为附加“特征函数”,在上面文献中描述的一般方法可以被应用于确定回退因子。作为结果的特征函数权重然后被利用对数线性关系(例如,解码研究目标函数的对数线性公式)转换为回退因子。特征函数可以是关于特定回退水平的指标函数(例如,当语言模型已经确切地回退k次时为1,否则为零)、阶跃函数(例如,当语言模型已经回退至少k次时为1)、或其他参数化。
已经参考机器翻译系统描述了该说明书。然而,公开的语言模型和用于生成和训练语言模型的技术可以在使用包括例如语音识别、光学字符识别、和字符识别等的语言模型的其他系统中被实现。
图4是用于机器翻译的示例系统。数据处理设备410可以包括硬件/固件、操作系统和包括翻译程序420的一个或多个程序。翻译程序420与数据处理设备410联合运行,以完成在该说明书中描述的操作。因此,与一个或多个处理器以及计算机可读介质(例如,存储器)结合,翻译程序420表示在系统400中的一个或多个结构组件。
翻译程序420可以是翻译处理应用或一部分。如这里使用的,应用是计算机程序,该计算机程序被用户理解为用于确定目的的独特计算机工具。应用可以被完全构建于数据处理设备410的操作系统(OS)中,或者应用可以具有位于不同位置的不同部件(例如,在OS或核心模式中的一部分、在用户模式中的一部分、以及在远程服务器的一部分),并且应用可以被构建在用作设备410的软件平台的运行库上。此外,利用一个或多个处理器490可以将应用处理分布在网络480上。例如,翻译程序420的语言模型可以分布地在一个或多个处理器490上训练。
数据处理设备410包括一个或多个处理器430和至少一个计算机可读介质440(例如,随机存取存储器、存储装置等)。数据处理设备410还可以包括通信接口450、一个或多个用户接口装置460、以及一个或多个附加装置470。用户接口装置460可以包括显示屏幕、键盘、鼠标、指示笔或其组合。
一旦被编程,数据处理设备410可操作以将回退因子识别为相对n-gram频率的函数。另外,语言模型可以被生成为使得回退因子可以从单个分片取得。
在该说明书中描述的主题和功能操作的实施例可以以数字电子电路、或者以计算机软件、固件、或硬件或者以它们的一个或多个的组合实现,包括在该说明书中公开的结构和它们的结构等效物。在该说明书中描述的主题的实施例可以被实现为一个或多个计算机程序产品,即,在有形的程序载体上编码的计算机程序指令的一个或多个模块,以用于数据处理设备的运行或者以控制数据处理设备的操作。有形的程序载体可以是传输的信号或计算机可读介质。传输的信号是人工生成的信号,例如机器生成的电、光或电磁信号,其被生成以编码信息用于传输到合适的接收器设备,便于计算机的运行。计算机可读介质可以是机器可读存储装置、机器可读存储基底、存储器装置、实现机器可读传输信号的物质的构成,或者它们中的一个或多个的组合。
术语“数据处理设备”涵盖用于处理数据的所有设备、装置、和机器,例如包括可编程处理器、计算机或者多处理器或计算机。除了硬件,设备可以包括为所讨论的计算机程序创建运行环境的代码,例如,构成处理器固件、协议栈、数据库管理系统、操作系统、或它们中的一个或多个的组合的代码。
计算机程序(也被称为程序、软件、软件应用、脚本或代码)可以以任何编程语言形式被编写,包括编译或解释语言、或者声明或过程语言,并且可以以任何格式被部署,包括作为独立程序或作为适合于在计算环境中使用的模块、组件、子程序或其他单元。计算机程序不必对应于文件系统中的文件。程序可以被存储在保持其他程序或数据的文件的一部分中(例如,存储在标记语言文档中的一个或多个脚本)、在专用于所讨论的程序的单个文件中或在多个协同文件中(例如,存储一个或多个模块、子程序、或部分代码的文件)。计算机程序可以被部署为在位于一个位置或分布在多个位置上并且通过通信网络互连的一个或多个计算机上被执行。
在该说明书中描述的过程和逻辑流程可以通过运行一个或多个计算机程序的一个或多个可编程处理器执行,以通过对输入数据操作以及生成输出而执行功能。过程和逻辑流程也可以通过专用逻辑电路例如FPGA(现场可编程门阵列)或ASIC(专用集成电路)执行,并且设备也可以被实现为专用逻辑电路。
适合计算机程序的运行的处理器包括例如通用和专用微处理器,以及任何种类的数字计算机的一个或多个处理器。一般地,处理器将会从只读存储器或随机存取存储器或两者接收指令和数据。计算机的重要元件是用于执行指令的处理器和用于存储指令和数据的一个或多个存储器装置。一般地,计算机也将包括一个或多个用于存储数据的大容量存储装置,例如磁盘、磁光盘、或光盘,或者计算机被可操作地耦接以从上面的大容量存储装置接收数据或向上面的大容量存储装置传递数据或既接收数据又传递数据。然而,计算机不必具有如此的装置。并且,计算机可以被嵌入在另一装置中,例如,移动电话、个人数字助理(PDA)、移动音频或视频播放器、游戏机、全球定位系统(GPS)接收器,这里只列举了少数。
适合于存储计算机程序指令和数据的计算机可读介质包括所有形式的非易失性存储器、介质和存储器装置,举例来说,包括:半导体存储器装置,例如EPROM、EEPROM、以及闪存装置;磁盘,例如内置硬盘或可移动盘;磁光盘;以及CD-ROM和DVD-ROM盘。处理器和存储器可以通过专用逻辑电路补充,或者合并在专用逻辑电路中。
为了提供与用户的交互,在该说明书中描述的主题的实施例可以被实现在具有显示装置、键盘和指示装置的计算机上,显示装置例如是CRT(阴极射线管)或LCD(液晶显示器)监视器,用于向用户显示信息,指示装置例如是鼠标或跟踪球,通过指示装置用户可以向计算机提供输入.其他种类的装置也可以用于提供与用户的交互,例如,提供给用户的反馈可以是任何形式的感觉反馈,例如视觉反馈、听觉反馈、或触觉反馈;并且来自用户的输入可以以任何形式被接收,包括声学、语音、或触觉输入.
在该说明书中描述的主题的实施例可以被实现在包括例如数据服务器的后端组件的计算系统、或者包括例如应用程序服务器的中间件组件的计算系统、或者包括例如具有图形用户接口或Web浏览器的客户端计算机的前端组件的计算系统,或者包括一个或多个这种后端、中间件、或前端组件的任何组合的计算系统中,其中用户通过所述图形用户接口或Web浏览器可以与在该说明书中的描述的主题的实现交互。系统的组件可以通过任何形式或介质的数字数据通信例如通信网络而互连。通信网络的示例包括局域网(“LAN”)和广域网(“WAN”),例如因特网。
计算系统可以包括客户端和服务器。客户端和服务器通常彼此远离并且典型地通过通信网络交互。客户端和服务器的关系依靠在各个计算机上运行的并且彼此具有客户端-服务器关系的计算机程序而发生。
尽管该说明书包括很多细节,但是这些不应该被理解为本发明的范围的限制或要求保护的限制,而是可以特定于特定发明的具体实施例的特征的描述。在该说明书中在分立实施例的上下文中描述的某些特征可以在单个实施例中以组合的形成被实现。相反,在单个实施例的上下文中描述的各种特征也可以在多个实施例中或者在任何的子组合中分立地被实现。而且,虽然特征可以被如上地描述为在某些实施例中作用并且被最初地如此要求保护,但是来自要求保护的组合的一个或多个特征在一些情形中可以从组合中被除去,并且要求保护的组合可以涉及子组合或子组合的变化。
类似地,尽管按照特定顺序在附图中描述了操作,但是这不应该被理解为操作需要被按照示出的该特定顺序或连续的顺序执行,或者所有示出的操作都应该被执行,以实现期望的结果。在某些环境下,多任务和并行处理可以是有利的。而且,在上面描述的实施例中的各种系统组件的分离不应该被理解为在所有实施例中都需要这种分离,并且应该理解,描述的程序组件和系统一般可以被集成在单个软件产品中或者被封装到多个软件产品中。
已经描述了在该说明书中描述的主题的具体实施例。其他实施例在所附权利要求的范围内。例如,在权利要求中引用的动作可以按不同的顺序被执行,并且仍然实现理想的结果。作为一个示例,在附图中描述的过程不必需要示出的特定顺序或连续的顺序,以实现理想的结果。在某些实现中,多任务和并行处理可以是有利的。

Claims (22)

1.一种系统,包括:
语言模型,所述语言模型包括:
来自语料库的n-gram的集合,每个n-gram具有在所述语料库中的对应的相对频率和与在所述n-gram中的符号的数量对应的级n,每个n-gram与具有n-1的级的回退n-gram对应;和
回退分值的集合,每个回退分值与n-gram相关联,所述回退分值被确定为回退因子和在所述语料库中的对应的回退n-gram的相对频率的函数。
2.根据权利要求1所述的系统,其中所述回退因子包括恒定的惩罚值。
3.根据权利要求1所述的系统,其中所述回退因子取决于n-gram级。
4.根据权利要求3所述的系统,其中利用在样本数据中出现的每个级的n-gram的数量取得所述回退因子。
5.根据权利要求1所述的系统,其中利用翻译模型的区别训练取得所述回退因子。
6.根据权利要求5所述的系统,其中指标特征函数被用于识别所述回退因子。
7.一种方法,包括:
生成语言模型,包括:
识别来自训练数据的语料库的n-gram的集合,所述集合的每个n-gram具有在所述语料库中出现的对应的相对频率和与在所述n-gram中的符号的数量对应的级n,每个n-gram与具有n-1的级的回退n-gram对应;和
识别一个或多个回退因子,其中所述回退因子被用于作为回退n-gram的相对频率的函数识别关于一个或多个n-gram的回退分值。
8.根据权利要求7所述的方法,其中识别所述一个或多个回退因子包括:
对一组样本数据执行区别训练,所述区别训练识别最大化翻译质量的测量的关于所述一个或多个回退因子的值。
9.根据权利要求8所述的方法,其中指标特征函数被用于识别所述一个或多个回退因子。
10.根据权利要求7所述的方法,其中识别所述一个或多个回退因子包括:
确定关于每个n-gram级的回退因子,其中所述回退因子是从在样本数据集中的每个级的n-gram的出现数量得到的。
11.根据权利要求7所述的方法,进一步包括利用所述一个或多个回退因子计算关于n-gram的回退分值以及存储所述回退分值。
12.一种计算机程序产品,编码在有形的程序载体上,可操作以使数据处理设备执行操作,所述操作包括:
生成语言模型,包括:
识别来自训练数据的语料库的n-gram的集合,所述集合的每个n-gram具有在所述语料库中出现的对应的相对频率和与在所述n-gram中的符号的数量对应的级n,每个n-gram与具有n-1的级的回退n-gram对应;和
识别一个或多个回退因子,其中所述回退因子被用于作为回退n-gram的相对频率的函数识别关于一个或多个n-gram的回退分值。
13.根据权利要求12所述的计算机程序产品,其中识别所述一个或多个回退因子包括:
对一组样本数据执行区别训练,所述区别训练识别最大化翻译质量的测量的关于所述一个或多个回退因子的值。
14.根据权利要求13所述的计算机程序产品,其中指标特征函数被用于识别所述一个或多个回退因子。
15.根据权利要求12所述的计算机程序产品,其中识别所述一个或多个回退因子包括:
确定关于每个n-gram级的回退因子,其中所述回退因子是从在样本数据集中的每个级的n-gram的出现数量得到的。
16.根据权利要求12所述的计算机程序产品,进一步包括:包括利用所述一个或多个回退因子计算关于n-gram的回退分值以及存储所述回退分值的操作。
17.一种方法,包括:
接收具有多个符号的输入字符串,所述输入字符串被划分成一个或多个n-gram,每个n-gram具有级,所述级识别在所述n-gram中的符号的数量;以及
利用语言模型识别在所述输入字符串中每个n-gram的概率;
当在所述语言模型中没有发现在所述输入字符串中的第一n-gram时,
识别回退n-gram,所述回退n-gram具有比所述第一n-gram的级小1的级,并且此时在所述语言模型中发现所述回退n-gram  并且
识别关于所述第一n-gram的回退分值,所述回退分值是回退因子和在所述语言模型中所述回退n-gram的相对频率的函数。
18.根据权利要求17所述的方法,其中识别回退分值包括查找经计算的关于所述n-gram的回退分值。
19.根据权利要求17所述的方法,其中识别回退分值包括利用关于所述n-gram的所述回退因子和所述回退n-gram的所述相对频率计算所述回退分值。
20.一种计算机程序产品,编码在有形的程序载体上,可操作以使数据处理设备执行操作,所述操作包括:
接收具有多个符号的输入字符串,所述输入字符串被划分成一个或多个n-gram,每个n-gram具有级,所述级识别在所述n-gram中的符号的数量;以及
利用语言模型识别在所述输入字符串中每个n-gram的概率;
当在所述语言模型中没有发现在所述输入字符串中的第一n-gram时,
识别回退n-gram,所述回退n-gram具有比所述第一n-gram的级小1的级,并且此时在所述语言模型中发现所述回退n-gram;并且
识别关于所述第一n-gram的回退分值,所述回退分值是回退因子和在所述语言模型中所述回退n-gram的相对频率的函数。
21.根据权利要求20所述的计算机程序产品,其中识别回退分值包括查找经计算的关于所述n-gram的回退分值。
22.根据权利要求20所述的计算机程序产品,其中识别回退分值包括利用关于所述n-gram的所述回退因子和所述回退n-gram的所述相对频率计算所述回退分值。
CN2008800168306A 2007-03-26 2008-03-25 机器翻译中的大语言模型 Active CN101707873B (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US92028307P 2007-03-26 2007-03-26
US60/920,283 2007-03-26
US11/767,436 2007-06-22
US11/767,436 US8332207B2 (en) 2007-03-26 2007-06-22 Large language models in machine translation
PCT/US2008/058116 WO2008118905A2 (en) 2007-03-26 2008-03-25 Large language models in machine translation

Publications (2)

Publication Number Publication Date
CN101707873A true CN101707873A (zh) 2010-05-12
CN101707873B CN101707873B (zh) 2013-07-03

Family

ID=39789254

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2008800168306A Active CN101707873B (zh) 2007-03-26 2008-03-25 机器翻译中的大语言模型

Country Status (6)

Country Link
US (2) US8332207B2 (zh)
EP (1) EP2137639B1 (zh)
JP (1) JP5484317B2 (zh)
KR (1) KR20100015518A (zh)
CN (1) CN101707873B (zh)
WO (1) WO2008118905A2 (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101882226A (zh) * 2010-06-24 2010-11-10 汉王科技股份有限公司 提高字符间语言区分度的方法及装置
CN102486770A (zh) * 2010-12-02 2012-06-06 财团法人资讯工业策进会 文字转换方法与系统
CN102663083A (zh) * 2012-04-01 2012-09-12 南通大学 基于分布式计算的大规模社交网络信息抽取方法
US8600729B2 (en) 2010-11-03 2013-12-03 Institute For Information Industry Method and system for co-occurrence-based text conversion
CN103631771A (zh) * 2012-08-28 2014-03-12 株式会社东芝 改进语言模型的方法及装置
CN105593845A (zh) * 2013-10-02 2016-05-18 系统翻译国际有限公司 基于自学排列的排列语料库的生成装置及其方法、使用排列语料库的破坏性表达语素分析装置及其语素分析方法
CN113168830A (zh) * 2018-11-30 2021-07-23 谷歌有限责任公司 言语处理

Families Citing this family (54)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008083503A1 (en) * 2007-01-10 2008-07-17 National Research Council Of Canada Means and method for automatic post-editing of translations
US8332207B2 (en) 2007-03-26 2012-12-11 Google Inc. Large language models in machine translation
US9002869B2 (en) 2007-06-22 2015-04-07 Google Inc. Machine translation for query expansion
US8060360B2 (en) * 2007-10-30 2011-11-15 Microsoft Corporation Word-dependent transition models in HMM based word alignment for statistical machine translation
US8849665B2 (en) * 2008-01-30 2014-09-30 At&T Intellectual Property I, L.P. System and method of providing machine translation from a source language to a target language
US8844033B2 (en) * 2008-05-27 2014-09-23 The Trustees Of Columbia University In The City Of New York Systems, methods, and media for detecting network anomalies using a trained probabilistic model
US20100023315A1 (en) * 2008-07-25 2010-01-28 Microsoft Corporation Random walk restarts in minimum error rate training
US8301619B2 (en) * 2009-02-18 2012-10-30 Avaya Inc. System and method for generating queries
US20100299132A1 (en) * 2009-05-22 2010-11-25 Microsoft Corporation Mining phrase pairs from an unstructured resource
JP2011028703A (ja) * 2009-07-23 2011-02-10 Toyo Networks & System Integration Co Ltd 検索システムに組み込んだセキュリティシステム
US20110035211A1 (en) * 2009-08-07 2011-02-10 Tal Eden Systems, methods and apparatus for relative frequency based phrase mining
WO2011050494A1 (en) * 2009-10-29 2011-05-05 Google Inc. Generating input suggestions
JP5408442B2 (ja) * 2010-01-21 2014-02-05 株式会社日立製作所 並列分散処理方法、及び、計算機システム
US8655647B2 (en) * 2010-03-11 2014-02-18 Microsoft Corporation N-gram selection for practical-sized language models
US8660836B2 (en) 2011-03-28 2014-02-25 International Business Machines Corporation Optimization of natural language processing system based on conditional output quality at risk
US9367526B1 (en) * 2011-07-26 2016-06-14 Nuance Communications, Inc. Word classing for language modeling
US8953885B1 (en) * 2011-09-16 2015-02-10 Google Inc. Optical character recognition
CN102509549B (zh) * 2011-09-28 2013-08-14 盛乐信息技术(上海)有限公司 语言模型训练方法及系统
US8983211B2 (en) * 2012-05-14 2015-03-17 Xerox Corporation Method for processing optical character recognizer output
US20130325436A1 (en) * 2012-05-29 2013-12-05 Wright State University Large Scale Distributed Syntactic, Semantic and Lexical Language Models
US10095692B2 (en) * 2012-11-29 2018-10-09 Thornson Reuters Global Resources Unlimited Company Template bootstrapping for domain-adaptable natural language generation
US9484023B2 (en) 2013-02-22 2016-11-01 International Business Machines Corporation Conversion of non-back-off language models for efficient speech decoding
IN2013MU02217A (zh) * 2013-07-01 2015-06-12 Tata Consultancy Services Ltd
CA2861469A1 (en) * 2013-08-14 2015-02-14 National Research Council Of Canada Method and apparatus to construct program for assisting in reviewing
US10346381B2 (en) * 2013-11-14 2019-07-09 Facebook, Inc. Atomic update operations in a data storage system
US10176256B1 (en) 2013-12-23 2019-01-08 BroadbandTV, Corp Title rating and improvement process and system
US9842592B2 (en) 2014-02-12 2017-12-12 Google Inc. Language models using non-linguistic context
US9412365B2 (en) 2014-03-24 2016-08-09 Google Inc. Enhanced maximum entropy models
US20150317314A1 (en) * 2014-04-30 2015-11-05 Linkedln Corporation Content search vertical
WO2016065327A1 (en) 2014-10-24 2016-04-28 Google Inc. Neural machine translation systems with rare word processing
US10134394B2 (en) * 2015-03-20 2018-11-20 Google Llc Speech recognition using log-linear model
US9959271B1 (en) 2015-09-28 2018-05-01 Amazon Technologies, Inc. Optimized statistical machine translation system with rapid adaptation capability
US10268684B1 (en) * 2015-09-28 2019-04-23 Amazon Technologies, Inc. Optimized statistical machine translation system with rapid adaptation capability
US10185713B1 (en) 2015-09-28 2019-01-22 Amazon Technologies, Inc. Optimized statistical machine translation system with rapid adaptation capability
US10496614B2 (en) * 2015-10-07 2019-12-03 Oracle International Corporation DDL processing in shared databases
US9690777B1 (en) * 2015-12-10 2017-06-27 Webinterpret Translating website listings and propagating the translated listings to listing websites in other regions
US10832664B2 (en) 2016-08-19 2020-11-10 Google Llc Automated speech recognition using language models that selectively use domain-specific model components
CN107885716B (zh) * 2016-09-29 2020-02-11 腾讯科技(深圳)有限公司 文本识别方法及装置
US9916305B1 (en) * 2016-12-28 2018-03-13 Facebook, Inc. Translating terms within a digital communication
CN110472257A (zh) * 2019-08-20 2019-11-19 南京题麦壳斯信息科技有限公司 一种基于句对的机器翻译引擎测评优选方法及系统
US11194773B2 (en) 2019-09-12 2021-12-07 Oracle International Corporation Integration of existing databases into a sharding environment
US11735169B2 (en) * 2020-03-20 2023-08-22 International Business Machines Corporation Speech recognition and training for data inputs
US11704497B2 (en) * 2020-09-09 2023-07-18 International Business Machines Corporation Generating and using a sentence model for answer generation
CN112466292B (zh) * 2020-10-27 2023-08-04 北京百度网讯科技有限公司 语言模型的训练方法、装置和电子设备
US12159119B2 (en) 2023-02-15 2024-12-03 Casetext, Inc. Text generation interface system
US12067366B1 (en) 2023-02-15 2024-08-20 Casetext, Inc. Generative text model query system
US11861320B1 (en) 2023-02-27 2024-01-02 Casetext, Inc. Text reduction and analysis interface to a text generation modeling system
US11860914B1 (en) 2023-02-27 2024-01-02 Casetext, Inc. Natural language database generation and query system
US11995411B1 (en) 2023-02-28 2024-05-28 Casetext, Inc. Large language model artificial intelligence text evaluation system
US20240296295A1 (en) * 2023-03-03 2024-09-05 Microsoft Technology Licensing, Llc Attribution verification for answers and summaries generated from large language models (llms)
US11861321B1 (en) 2023-06-29 2024-01-02 Casetext, Inc. Systems and methods for structure discovery and structure-based analysis in natural language processing models
US11972223B1 (en) 2023-06-30 2024-04-30 Casetext, Inc. Query evaluation in natural language processing systems
JP7441391B1 (ja) 2023-08-21 2024-03-01 株式会社医療情報技術研究所 大規模言語モデルを用いた電子カルテシステム
JP7592232B1 (ja) 2023-10-04 2024-12-02 株式会社医療情報技術研究所 大規模言語モデルを用いた診断、処方支援システム

Family Cites Families (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB9701866D0 (en) * 1997-01-30 1997-03-19 British Telecomm Information retrieval
US6272456B1 (en) * 1998-03-19 2001-08-07 Microsoft Corporation System and method for identifying the language of written text having a plurality of different length n-gram profiles
JP3004254B2 (ja) * 1998-06-12 2000-01-31 株式会社エイ・ティ・アール音声翻訳通信研究所 統計的シーケンスモデル生成装置、統計的言語モデル生成装置及び音声認識装置
US6167369A (en) * 1998-12-23 2000-12-26 Xerox Company Automatic language identification using both N-gram and word information
US20030191625A1 (en) * 1999-11-05 2003-10-09 Gorin Allen Louis Method and system for creating a named entity language model
US6865528B1 (en) * 2000-06-01 2005-03-08 Microsoft Corporation Use of a unified language model
US20020077823A1 (en) * 2000-10-13 2002-06-20 Andrew Fox Software development systems and methods
JP3950957B2 (ja) * 2002-03-15 2007-08-01 独立行政法人産業技術総合研究所 言語処理装置および方法
US7171358B2 (en) * 2003-01-13 2007-01-30 Mitsubishi Electric Research Laboratories, Inc. Compression of language model structures and word identifiers for automated speech recognition systems
US7197457B2 (en) * 2003-04-30 2007-03-27 Robert Bosch Gmbh Method for statistical language modeling in speech recognition
US7603267B2 (en) * 2003-05-01 2009-10-13 Microsoft Corporation Rules-based grammar for slots and statistical model for preterminals in natural language understanding system
US7711545B2 (en) * 2003-07-02 2010-05-04 Language Weaver, Inc. Empirical methods for splitting compound words with application to machine translation
JP2005100335A (ja) * 2003-09-01 2005-04-14 Advanced Telecommunication Research Institute International 機械翻訳装置、機械翻訳コンピュータプログラム及びコンピュータ
CA2486128C (en) * 2003-10-30 2011-08-23 At&T Corp. System and method for using meta-data dependent language modeling for automatic speech recognition
US7406416B2 (en) * 2004-03-26 2008-07-29 Microsoft Corporation Representation of a deleted interpolation N-gram language model in ARPA standard format
US7593843B2 (en) * 2004-03-30 2009-09-22 Microsoft Corporation Statistical language model for logical form using transfer mappings
US7260568B2 (en) * 2004-04-15 2007-08-21 Microsoft Corporation Verifying relevance between keywords and web site contents
US7701886B2 (en) * 2004-05-28 2010-04-20 Alcatel-Lucent Usa Inc. Packet loss concealment based on statistical n-gram predictive models for use in voice-over-IP speech transmission
US7584098B2 (en) * 2004-11-29 2009-09-01 Microsoft Corporation Vocabulary-independent search of spontaneous speech
US7565372B2 (en) * 2005-09-13 2009-07-21 Microsoft Corporation Evaluating and generating summaries using normalized probabilities
US20070078653A1 (en) * 2005-10-03 2007-04-05 Nokia Corporation Language model compression
WO2007091096A1 (en) * 2006-02-10 2007-08-16 Spinvox Limited A mass-scale, user-independent, device-independent, voice message to text conversion system
US7856350B2 (en) * 2006-08-11 2010-12-21 Microsoft Corporation Reranking QA answers using language modeling
US8401841B2 (en) * 2006-08-31 2013-03-19 Orcatec Llc Retrieval of documents using language models
US7783636B2 (en) * 2006-09-28 2010-08-24 Microsoft Corporation Personalized information retrieval search with backoff
US20080154600A1 (en) * 2006-12-21 2008-06-26 Nokia Corporation System, Method, Apparatus and Computer Program Product for Providing Dynamic Vocabulary Prediction for Speech Recognition
US20080162117A1 (en) * 2006-12-28 2008-07-03 Srinivas Bangalore Discriminative training of models for sequence classification
US8332207B2 (en) 2007-03-26 2012-12-11 Google Inc. Large language models in machine translation
US8583416B2 (en) * 2007-12-27 2013-11-12 Fluential, Llc Robust information extraction from utterances
US8364481B2 (en) * 2008-07-02 2013-01-29 Google Inc. Speech recognition with parallel recognition tasks

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101882226A (zh) * 2010-06-24 2010-11-10 汉王科技股份有限公司 提高字符间语言区分度的方法及装置
CN101882226B (zh) * 2010-06-24 2013-07-24 汉王科技股份有限公司 提高字符间语言区分度的方法及装置
US8600729B2 (en) 2010-11-03 2013-12-03 Institute For Information Industry Method and system for co-occurrence-based text conversion
CN102486770A (zh) * 2010-12-02 2012-06-06 财团法人资讯工业策进会 文字转换方法与系统
CN102486770B (zh) * 2010-12-02 2014-09-17 财团法人资讯工业策进会 文字转换方法与系统
CN102663083A (zh) * 2012-04-01 2012-09-12 南通大学 基于分布式计算的大规模社交网络信息抽取方法
CN103631771A (zh) * 2012-08-28 2014-03-12 株式会社东芝 改进语言模型的方法及装置
CN105593845A (zh) * 2013-10-02 2016-05-18 系统翻译国际有限公司 基于自学排列的排列语料库的生成装置及其方法、使用排列语料库的破坏性表达语素分析装置及其语素分析方法
CN105593845B (zh) * 2013-10-02 2018-04-17 系统翻译国际有限公司 基于自学排列的排列语料库的生成装置及其方法、使用排列语料库的破坏性表达语素分析装置及其语素分析方法
US10282413B2 (en) 2013-10-02 2019-05-07 Systran International Co., Ltd. Device for generating aligned corpus based on unsupervised-learning alignment, method thereof, device for analyzing destructive expression morpheme using aligned corpus, and method for analyzing morpheme thereof
CN113168830A (zh) * 2018-11-30 2021-07-23 谷歌有限责任公司 言语处理

Also Published As

Publication number Publication date
KR20100015518A (ko) 2010-02-12
JP5484317B2 (ja) 2014-05-07
US8812291B2 (en) 2014-08-19
WO2008118905A2 (en) 2008-10-02
EP2137639B1 (en) 2019-01-16
US20080243481A1 (en) 2008-10-02
CN101707873B (zh) 2013-07-03
JP2010522938A (ja) 2010-07-08
EP2137639A2 (en) 2009-12-30
US20130346059A1 (en) 2013-12-26
WO2008118905A3 (en) 2009-02-12
US8332207B2 (en) 2012-12-11

Similar Documents

Publication Publication Date Title
CN101707873B (zh) 机器翻译中的大语言模型
US8626488B1 (en) Word alignment with bridge languages
US8478787B2 (en) Name detection
CN100430929C (zh) 词典、分段和语言模型联合优化的系统和迭代方法
US20190087403A1 (en) Online spelling correction/phrase completion system
CN110427618B (zh) 对抗样本生成方法、介质、装置和计算设备
US7877258B1 (en) Representing n-gram language models for compact storage and fast retrieval
US8359201B1 (en) Randomized language models
US7983898B2 (en) Generating a phrase translation model by iteratively estimating phrase translation probabilities
US20060015323A1 (en) Method, apparatus, and computer program for statistical translation decoding
US20090326927A1 (en) Adaptive generation of out-of-dictionary personalized long words
KR20110043645A (ko) 기계 번역을 위한 파라미터들의 최적화
JP2009140503A (ja) 音声翻訳方法及び装置
CN111814493B (zh) 机器翻译方法、装置、电子设备和存储介质
Tan et al. A scalable distributed syntactic, semantic, and lexical language model
CN108897438A (zh) 一种面向印地语的多语言混合输入方法及装置
CN114548075A (zh) 文本处理方法、文本处理装置、存储介质与电子设备
JP2010244385A (ja) 機械翻訳装置、機械翻訳方法、およびプログラム
CN113268452A (zh) 一种实体抽取的方法、装置、设备和存储介质
CN103136190B (zh) Cjk姓名检测
Blackwood Lattice rescoring methods for statistical machine translation
JP2004280467A (ja) 翻訳装置、翻訳方法、及びそのプログラム
US20240362414A1 (en) Method and system for electronic decomposition of data string into structurally meaningful parts
Tambouratzis et al. Extensions to the PRESEMT Methodology
Gong On-demand Development of Statistical Machine Translation Systems

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CP01 Change in the name or title of a patent holder

Address after: American California

Patentee after: Google limited liability company

Address before: American California

Patentee before: Google Inc.

CP01 Change in the name or title of a patent holder