发明内容
本申请提供一种计算机翻译数据处理方法、***及终端,能够解决翻译查询效率低,***响应慢的问题。
为了解决上述问题,本申请公开了一种计算机翻译数据处理方法,包括以下步骤:
获取至少两个翻译模块输出的翻译结果;
确定所述翻译模块的加权权重值;
计算所述翻译结果的基础分值;
基于所述翻译结果的基础分值和对应的翻译模块的加权权重值计算所述翻译结果的最终分值;
根据所述翻译结果的最终分值选取部分或全部的翻译结果输出。
进一步地,所述至少两个翻译模块具有不同的翻译规则,所述翻译结果为所述至少两个翻译模块用各自的翻译规则对同一待翻译的源语句进行翻译后得到的翻译结果。
进一步地,所述确定所述翻译模块的加权权重值包括:
将训练样本输入各翻译模块得到输出结果;
对输出结果进行评分,得到输出结果的分值;
基于各翻译模块对应的输出结果的分值确定所述翻译模块的错误率;
根据错误率确定各翻译模块的加权权重值。
进一步地,所述翻译模块的错误率为输出结果的分值小于标准值的训练样本的初始权重之和;
所述根据错误率确定所述翻译模块的加权权重值采用如下公式计算:
log(1/(错误率/(1-错误率)))。
进一步地,所述计算所述翻译结果的基础分值包括:
根据错误率确定每个训练样本在各翻译模块中的最终权重;
确定与翻译结果对应的待翻译的源语句与每个训练样本的相似度;
根据每个训练样本在该翻译模块中的最终权重和与该待翻译的源语句的相似度计算经过该翻译模块翻译得到的翻译结果的基础分值。
进一步地,所述根据错误率确定每个训练样本在各翻译模块中的最终权重包括:
若某个训练样本通过该翻译模块翻译后的输出结果的分值小于标准值,则该训练样本在该翻译模块中的最终权重为:初始权重×错误率/(1-错误率);若输出结果的分值大于标准值,则该训练样本的最终权重为初始权重。
进一步地,在获取至少两个翻译模块输出的翻译结果之前还包括以下步骤:
接收待翻译的源语句,扫描获取所述源语句中的常量和非常量;
用预定变量替换所述源语句的非常量,得到标准语句,并记录所述预定变量与非常量的对应关系;
在模板库中查找与所述标准语句匹配的目标模板,若能查找到,则根据目标模板对标准语句进行翻译得到初始翻译结果;
根据预定变量与非常量的对应关系,用非常量替换初始翻译结果中与之对应的预定变量;
对替换后的初始翻译结果中的非常量进行翻译,得到翻译结果。
进一步地,所述扫描获取所述源语句中的常量和非常量包括:
扫描源语句中包含的字符串;
将常量数据库中包含的常量与所述字符串匹配,若能匹配上,则将所述字符串作为常量,若不能匹配,则将所述字符串作为非常量。
进一步地,所述对替换后的初始翻译结果中的非常量进行翻译包括:
采用预定的翻译模块对所述非常量进行翻译;或
查询特殊翻译数据库,判断所述非常量是否为特殊命名实体,若是,则基于所述特殊翻译数据库对所述为特殊命名实体的非常量进行翻译,若否,则采用预定的翻译模块对所述非特殊命名实体的非常量进行翻译。
本申请还公开了一种计算机翻译数据处理***,包括:
翻译结果获取模块,用于获取至少两个翻译模块输出的翻译结果;
翻译模块加权分值确定模块,用于确定每个翻译模块的加权权重值;
翻译结果基础分值确定模块,用于计算所述翻译结果的基础分值;
最终分值计算模块,用于基于所述翻译结果的基础分值和对应的翻译模块的加权权重值计算所述每个翻译结果的最终分值;
结果输出模块,用于根据每个翻译结果的最终分值选取部分或全部的翻译结果输出。
进一步地,所述翻译模块加权分值确定模块包括:
训练单元,用于将训练样本输入各翻译模块得到输出结果;
分值评定单元,用于对输出结果进行评分,得到输出结果的分值;
错误率计算模块,用于基于各翻译模块对应的输出结果的分值确定每个翻译模块的错误率;
加权值计算单元,用于根据错误率确定每个翻译模块的加权权重值。
进一步地,所述翻译结果基础分值确定模块包括:
最终权重计算单元,用于根据错误率确定每个训练样本在各翻译模块中的最终权重;
相似度计算单元,用于确定与翻译结果对应的待翻译的源语句与每个训练样本的相似度;
基础分值计算单元,用于根据每个训练样本在该翻译模块中的权重和与该待翻译的源语句的相似度计算经过该翻译模块翻译得到的翻译结果的基础分值。
进一步地,所述***还包括:
数据接收模块,用于接收待翻译的源语句,扫描获取所述源语句中的常量和非常量;
标准语句确定模块,用于用预定变量替换所述源语句的非常量,得到标准语句,并记录所述预定变量与非常量的对应关系;
模板翻译模块,用于在模板库中查找与所述标准语句匹配的目标模板,若能查找到,则根据目标模板对标准语句进行翻译得到初始翻译结果;
替换模块,用于根据预定变量与非常量的对应关系,用非常量替换初始翻译结果中与之对应的预定变量;
翻译模块,用于对替换后的初始翻译结果中的非常量进行翻译,得到翻译结果。
进一步地,所述数据接收模块包括:
字符串扫描单元,用于扫描源语句中包含的字符串;
字符串匹配单元,用于将常量数据库中包含的常量与所述字符串匹配,若能匹配上,则将所述字符串作为常量,若不能匹配,则将所述字符串作为非常量。
进一步地,所述***还包括:
特殊翻译数据库,用于判断所述非常量是否为特殊命名实体,若是,则基于所述特殊翻译数据库对所述为特殊命名实体的非常量进行翻译,若否,则触发翻译模块对所述非特殊命名实体的非常量进行翻译。
本申请还公开了一种终端,包括如前所述的计算机翻译数据处理***。
进一步地,所述终端为分布式结构,包括前端服务器和至少一台后台服务器,所述计算机翻译数据处理***置于所述至少一台后台服务器中;所述前端服务器接收包含有待翻译的源语句的翻译请求,并分发给所述至少一台后台服务器中的计算机翻译数据处理***。
进一步地,所述后台服务器数量大于1,所述终端还包括:
负载均衡模块,用于对前端服务器接收的翻译请求进行分发管理,并通过前端服务器分发到对应的后台服务器,使各后台服务器负载均衡。
与现有技术相比,本申请包括以下优点:
本申请的计算机翻译数据处理方法、***及终端采用多个(至少两个)翻译模块组合的方式来对源语句进行翻译,可以提高翻译查询的效率以及***的响应速度,避免占用大量的***空间,同时可以保证翻译结果的准确性。特别地,对多个翻译模块进行预先训练确定其加权权重值的方式,可以对多个翻译结果进行评分排序,得到较为准确的翻译结果。
其次,通过采用将源语句变换为标准语句的形式来与模板库中的模板相匹配的方式,按照模板中的格式对标准语句中的常量进行翻译,并确定最终的翻译句式,即进行静态翻译,真正需要动态翻译的部分只有非常量,因此实际翻译的处理工作量较小,可以提高翻译速度和***响应速度,减少对***资源的占用。同时,因为模板可以保证翻译结果的句式准确,从而可以提高翻译质量,避免因为翻译结果不准确,用户重复查询翻译导致的***负担增加。
另外,对于特殊领域,设定特殊翻译数据库,可以对特殊的或者非标准表述的非常量进行对应翻译,可以减少后续动态翻译的工作量,提高***响应速度,同时也可以保证翻译质量的准确。
进一步地,对于计算机翻译数据处理***及终端在具体实现时,可以采用分布式结构,即将计算机翻译数据处理***置于多个后台服务器中,前端服务器在接收翻译请求后分发到各后台服务器中,保证各后台服务器的负载均衡,同时因为后台服务器数量的增加,从而可以提高***的承载能力,并加快***响应速度,提高处理效率。
当然,实施本申请的任一产品不一定需要同时达到以上所述的所有优点。
具体实施方式
为使本申请的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本申请作进一步详细的说明。
参照图1,示出本申请的计算机翻译数据处理方法实施例一,本申请采用至少两个翻译模块进行翻译,并分别得到翻译结果,对翻译结果进行相应的处理,包括以下步骤:
步骤101,获取至少两个翻译模块输出的翻译结果。
可以理解,其中的至少两个可以是两个、三个或其他任意大于等于2的数量。
本申请中的翻译模块是指能够对源语句进行翻译的装置或者功能模块,每个翻译模块都具有自己的翻译规则和方式,即前述的至少两个翻译模块中的每个翻译模块的翻译规则不相同,因此这些翻译模块对于同一待翻译的源语句的翻译可能得到不同的翻译结果。前述的翻译结果为该至少两个翻译模块用各自的翻译规则对同一待翻译的源语句进行翻译后得到的翻译结果。例如,对于待翻译的源语句,采用5个翻译模块,那么可以得到5个翻译结果。
另外,如果单个翻译模块对待翻译的源语句是通过分拆后再翻译的方式进行翻译,那么可能会因为分拆方式不同,而出现不同的翻译结果。例如,对于待翻译的源语句,采用5个翻译模块,每个翻译模块都采用了三种方式分拆该源语句,那么每个翻译模块则可以得到3个翻译结果,5个翻译模块则可以得到15个翻译结果。
步骤102,确定翻译模块的加权权重值。
步骤103,计算翻译结果的基础分值。
可以理解,对于步骤102中的加权权重值和步骤103中的翻译结果的基础分值可以采用预先训练好的翻译模块组合来实现。翻译模块组合即是由本申请前述描述的多个翻译模块组合在一起。训练好的翻译模块组合中设定了各翻译模块所得到的翻译结果的基础分值的计算规则以及每个翻译模块的加权权重值,当得到翻译结果后,根据计算规则计算每个翻译结果的基础分值,并根据对应的加权权重值计算每个翻译结果的最终分值。
翻译模块组合的训练可以采用如下方式:
假设训练数据为规模为N的平行语料对,每对平行语料是一个训练样本,训练过程如下:
将训练样本输入各翻译模块得到输出结果;
对输出结果进行评分,得到输出结果的分值;
基于各翻译模块对应的输出结果的分值确定每个翻译模块的错误率;
根据错误率确定每个翻译模块的加权权重值。
具体的计算公式为:
每个训练样本具有初始权重,每个翻译模块的错误率Et为:输出结果的分值小于标准值的训练样本的初始权重之和;
每个翻译模块的加权权重值为:log(1/(Et/(1-Et)))。
优选地,每个训练样本具有相同的初始权重,例如假设一共有N个训练样本,则每个训练样本的初始权重都为1/N。
对于翻译结果的基础分值可以根据每个训练样本对应的输出结果来判断各翻译模块对于不同结构的语句的翻译效果,然后为每个翻译模块所翻译的不同结构的语句设定一个固定分值。例如,对于结构为A的语句,a翻译模块翻译得到的翻译结果的基础分值为40分,b翻译模块翻译得到的翻译结果的基础分值为80分。这样,根据每个翻译结果所对应的源语句的结构进行分析,判断其所属的结构类型,即可以得到每个翻译结果的基础分值。
优选地,为了使基础分值的计算更为客观,提高其准确性,还可以结合前述的翻译模块组合的训练时所采用的训练样本以及每个翻译模块的错误率来计算基础分值。具体过程如下:
根据错误率确定每个训练样本在各翻译模块中的最终权重;
确定与翻译结果对应的待翻译的源语句与每个训练样本的相似度;
根据每个训练样本在该翻译模块中的最终权重和与该待翻译的源语句的相似度计算经过该翻译模块翻译得到的翻译结果的基础分值。
其中,根据错误率确定每个训练样本在各翻译模块中的最终权重的具体计算公式为:
对于单个的翻译模块来说,若某个训练样本通过该翻译模块翻译后的输出结果的分值小于标准值,则将该训练样本在该翻译模块中的最终权重更改为:(1/N)×Et/(1-Et);若输出结果的分值大于标准值,则将该训练样本的最终权重仍然为初始权重1/N。最后,对各训练样本在该翻译模块中的最终权重进行调整,使之总和为1,具体的调整过程可以由人为确定也可以通过模型训练得到,本申请对此并不限制。
待翻译的源语句与每个训练样本的相似度,如果每个翻译模块对待翻译的源语句采用多种方式分拆,那么就可能出现同一源语句在同一个翻译模块中因为分拆方式不同而与同一训练样本的相似度不同,从而改变翻译结果的基础分值。正是因为如此,同一个翻译模块也可以得到多种结果,从而增加翻译结果的准确性。
因为每个翻译模块所擅长翻译的语句结构不同,因此,根据预先训练的方式确定每个翻译模块所擅长翻译的语句结构(每个训练样本对应不同的语句结构,最终权重值较大的训练样本的语句结构可以认为是该翻译模块擅长翻译的语句结构),并将待翻译的源语句与每个训练样本进行比较,从结构相似度的角度与权重结合的方式进行计算,从而可以较为准确的确定出经过该翻译模块翻译得到的翻译结果的基础分值。
步骤104,基于所述翻译结果的基础分值和对应的翻译模块的加权权重值计算所述每个翻译结果的最终分值。
最终分值可以直接采用基础分值与加权权重值相乘的方式计算得到。例如,对于待翻译的源语句X,一共有a,b,c三个翻译模块进行翻译分别得到Xa、Xb和Xc三个翻译结果,基础分值分别为70、80、90,三个翻译模块的加权权重值分别为0.3、0.5、0.9,那么三个翻译结果的最终分值则分别为21、40和81。当然,也可以采用其他方式来进行计算,本申请对此并不限制。
步骤105,根据每个翻译结果的最终分值选取部分或全部的翻译结果输出。
在计算出每个翻译结果的最终分值后,可以根据所述每个翻译结果的最终分值对其进行排序后输出部分或全部的翻译结果,例如选取最终分值排在前面三位的翻译结果,又或者直接选取分值最大的翻译结果输出。
本实施例中,采用多个翻译模块组合的方式来对源语句进行翻译,并为每个翻译模块的翻译结果按照预定权重进行评分,既可以保证翻译速度,提高***处理的效率,又使翻译结果尽可能的准确,避免因为翻译结果不准确时用户反复输入而增加***的负担。
参照图2,示出本申请的一种计算机翻译数据处理方法实施例二,在进行实施例一的步骤101之前,还可以包括对待翻译的源语句进行翻译的过程,包括以下步骤:
步骤201,接收待翻译的源语句,扫描获取所述源语句中的常量和非常量。
可以理解,可以对源语句进行切分得到词语,然后将词语与预先存储的常量数据库中的常量进行匹配的方式来确定常量和非常量。当然,也可以采用其他方式进行。
优选地,扫描获取源语句中的常量和非常量可以通过如下方式实现:
扫描源语句中包含的字符串;
将常量数据库中包含的常量与所述字符串匹配,若能匹配上,则将所述字符串作为常量,若不能匹配,则将所述字符串作为非常量。
例如,假设源语句为“一种保护视力的设备”,将常量数据库中包含的常量与该源语句的各字符串进行匹配时,可以得到“一种”和“的”为常量,而“保护视力”和“设备”为非常量。
步骤202,用预定变量替换所述源语句的非常量,得到标准语句,并记录所述预定变量与非常量的对应关系。
预定变量采用标准格式,例如,按照源语句中非常量出现的顺序,分别用X1,X2,X3,…,Xn表示,以此类推。以前述源语句为例,可以用X1替换“保护视力”,用X2替换“设备”,那么就得到标准语句“一种X1的X2”。同时,附加记录预定变量与非常量的对应关系“X1=保护视力,X2=设备”。
步骤203,在模板库中查找与所述标准语句匹配的目标模板,若能查找到,则根据目标模板对标准语句进行翻译得到初始翻译结果。
此时,若标准语句“一种X1的X2”在模板库中能够匹配到目标模板,则可以根据目标模板对应的翻译得到初始翻译结果为“a kind of X2for X1”。
步骤204,根据预定变量与非常量的对应关系,用非常量替换初始翻译结果中对应的预定变量。
例如,预定变量与非常量的对应关系为:X1=保护视力,X2=设备,那么替换后的初始翻译结果为“a kind of设备for保护视力”。
步骤205,对替换后的初始翻译结果中的非常量进行翻译,得到翻译结果。
此时,可以采用翻译模块对非常量进行翻译,并加入到对应位置中,从而得到翻译结果。例如,对“设备”翻译得到“equipment”,对“保护视力”翻译得到“protectingeyesight”,加入到初始翻译结果对应的位置即得到翻译结果,为“a kind of equipmentfor protecting eyesight”。
可以理解,在前述实施例中,源语句中的常量和非常量通过常量数据库中的常量进行匹配的方式来确定,那么就可能出现同一源语句的字符串拆分位置不同而与常量数据库中的不同常量相匹配,从而使最终的非常量也会随之改变。即有可能出现,同一源语句经过替换后得到一种标准语句,也可能出现同一源语句经过替换后得到多种标准语句。
对于得到多种标准语句的源语句,可以按照前述方法得到多个翻译结果,可以将多个翻译结果同时输出,供用户参考选择,也可以对多个翻译结果进行评分排序等,选取一个较为准确的翻译结果输出。
可以理解,对于非常量的翻译,除了利用预定的翻译模块进行翻译之外,***中还可以设置特殊翻译数据库,用于存储某些特殊领域所特有的翻译数据。例如,对于电子商务领域,可以将如产品词、品牌词、产品型号、公司名之类的命名实体存储在特殊翻译数据库中,另外,还可以将时间等规则化的命名实体存储在特殊翻译数据库中。
参照图3,示出本申请的计算机翻译数据处理方法实施例三,在实施例二的步骤205中的对源语句中的非常量进行翻译还可以包括以下步骤:
步骤301,查询特殊翻译数据库,判断所述非常量是否为特殊命名实体,若是,则基于所述特殊翻译数据库对所述为特殊命名实体的非常量进行翻译,若否,则采用预定的翻译模块对所述非特殊命名实体的非常量进行翻译。
当非常量为产品词、品牌词、型号等等命名实体,则可以直接根据特殊翻译数据库中的数据进行翻译;若非常量为规则化的命名实体,例如时间等,则对所述非常量中除数字以外的部分按照特殊数据库中的时间对应的翻译规则进行翻译,最后再补入非常量中的数字。此时,对于数字可以翻译,也可以不作处理。
可以理解,对于前述实施例二和三中所描述的方法,可以单独应用,也可以与目前常见的翻译方法相结合,例如记忆翻译方法。具体可以是,在接收待翻译的源语句后,采用记忆翻译方法翻译,若记忆翻译方法无法实现时,则可以继续使用本申请前述实施例中的方法来进行处理。因为有本申请前述实施例的方法,记忆翻译时无需存储大量的实例数据,可以减少对***存储空间的占用,同时可以保证快速的对翻译请求进行响应,提高***处理速度,并保证翻译结果的准确性。
本申请的计算机翻译数据处理方法采用多个(至少两个)翻译模块组合的方式来对源语句进行翻译,可以提高***的响应速度,同时可以保证翻译结果的准确性。特别地,对多个翻译模块进行预先训练确定其加权权重值的方式,可以对多个翻译结果进行评分排序,得到较为准确的翻译结果。
其次,通过采用将源语句变换为标准语句的形式来与模板库中的模板相匹配的方式,按照模板中的格式对标准语句中的常量进行翻译,并确定最终的翻译句式,即进行静态翻译,真正需要动态翻译的部分只有非常量,因此实际翻译的处理工作量较小,可以提高翻译速度和***响应速度,减少对***资源的占用。同时,因为模板可以保证翻译结果的句式准确,从而可以提高翻译质量,避免因为翻译结果不准确,用户重复查询翻译导致的***负担增加。
另外,对于特殊领域,设定特殊翻译数据库,可以对特殊的或者非标准表述的非常量进行对应翻译,可以减少后续动态翻译的工作量,提高***响应速度,同时也可以保证翻译质量的准确。
参照图4,示出本申请的计算机翻译数据处理***实施例一,包括翻译结果获取模块60、翻译模块加权分值确定模块62、翻译结果基础分值确定模块61、最终分值计算模块63和结果输出模块65。
翻译结果获取模块60,用于获取至少两个翻译模块输出的翻译结果。
翻译模块加权分值确定模块62,用于确定翻译模块的加权权重值。
翻译结果基础分值确定模块61,用于计算所述翻译结果的基础分值。
最终分值计算模块63,用于基于所述翻译结果的基础分值和对应的翻译模块的加权权重值计算所述每个翻译结果的最终分值。
结果输出模块65,用于根据每个翻译结果的最终分值选取部分或全部的翻译结果输出。
优选地,该翻译模块加权分值确定模块62包括:训练单元、分值评定单元、错误率计算模块和加权值计算单元。训练单元,用于将训练样本输入各翻译模块得到输出结果;分值评定单元,用于对输出结果进行评分,得到输出结果的分值;错误率计算模块,用于基于各翻译模块对应的输出结果的分值确定每个翻译模块的错误率;加权值计算单元,用于根据错误率确定每个翻译模块的加权权重值。
优选地,该翻译结果基础分值确定模块61包括最终权重计算单元、相似度计算单元和基础分值计算单元。最终权重计算单元,用于根据错误率确定每个训练样本在各翻译模块中的最终权重;相似度计算单元,用于确定与翻译结果对应的待翻译的源语句与每个训练样本的相似度;基础分值计算单元,用于根据每个训练样本在该翻译模块中的最终权重和与该待翻译的源语句的相似度计算经过该翻译模块翻译得到的翻译结果的基础分值。
可以理解,前述的实施例一中的这些模块可以集合在预定的模型中,通过预先训练的方式得到每个模块计算所需要的权重或公式,在实际使用时,则可以直接使用。
参照图5,示出本申请的计算机翻译数据处理***实施例二,在实施例一的基础上该***还包括数据接收模块10、标准语句确定模块20、模板翻译模块30、替换模块40和翻译模块50。
数据接收模块10,用于接收待翻译的源语句,扫描获取所述源语句中的常量和非常量。优选地,数据接收模块包括字符串扫描单元和字符串匹配单元。字符串扫描单元,用于扫描源语句中包含的字符串。字符串匹配单元,用于将常量数据库中包含的常量与所述字符串匹配,若能匹配上,则将所述字符串作为常量,若不能匹配,则将所述字符串作为非常量。
标准语句确定模块20,用于用预定变量替换所述源语句的非常量,得到标准语句,并记录所述预定变量与非常量的对应关系。
模板翻译模块30,用于在模板库中查找与所述标准语句匹配的目标模板,若能查找到,则根据目标模板对标准语句进行翻译得到初始翻译结果。
替换模块40,用于根据预定变量与非常量的对应关系,用非常量替换初始翻译结果中与之对应的预定变量。
翻译模块50,用于对替换后的初始翻译结果中的非常量进行翻译,得到翻译结果。其中,翻译模块50至少为两个,可以是两个、三个或者多个。其中,翻译结果获取模块60则是从翻译模块50获取对应的翻译结果。
参照图6,示出本申请的计算机翻译数据处理***实施例三,该***还包括特殊翻译数据库67,用于判断所述非常量是否为特殊命名实体,若是,则基于所述特殊翻译数据库67对所述为特殊命名实体的非常量进行翻译,若否,则触发翻译模块50对所述非特殊命名实体的非常量进行翻译。
优选地,参照图7,示出本申请的计算机翻译数据处理***实施例四,该***还可以在前述各模块的基础上增加记忆翻译模块70,记忆翻译模块70可以对常见的语句进行记忆翻译,对于记忆翻译模块无法翻译的,再通过后续模块进行处理翻译。此种结合方式,可以减少记忆模块中的实例数据的存储量,但是同样可以实现对源语句的准确翻译,因此可以减少对***存储空间的占用,并保证翻译结果的准确性。
优选地,本申请还涉及一种终端,包括如前述实施例一、二或三中的计算机翻译数据处理***。终端可以是客户端、服务器端。若终端为服务器端,可以采用独立的结构,即计算机翻译数据处理***置于服务器中,该服务器同时也接收翻译请求。可以理解,此时可以将计算机翻译数据处理***直接置于服务器中,各个模块从物理部署上作为一个整体。优选地,也可以将计算机翻译数据处理***的各个模块分别布置在服务器中,即各个模块从物理部署上为分布式结构。具体的,计算机翻译数据处理***在服务器中可以分为三层物理结构:第一层为数据接收层,用于接收客户端发送的翻译请求,实现数据的拆分、合并以及分发等功能;第二层为翻译逻辑层,第三层为数据库(前述的计算机翻译数据处理***的各模块则分别对应置于第二层和第三层),二者共同实现对数据接收层分发的数据进行翻译。其中,翻译逻辑层可以设置多个相互独立的翻译节点,数据分发层可以直接将数据分发到具体的翻译节点。当数量较少时,第二层和第三层在物理部署上可以合并为一体,当数据量较多时,二者在物理部署上相互独立。该三层物理结构在服务器中可以部署为行列结构,相互之间通过发送请求来实现数据交互。在前述同一服务器中实现分布式结构时,还可以在服务器中内置负载均衡模块,用于实现数据的均衡分发到第二层的各个翻译节点中。通过此种物理结构上分别布置的方式,将翻译任务转移到多个翻译节点,从而提高效率,并且可以根据需要动态调整计算资源,满足大数据量、实时的翻译任务要求,具有高可扩展性和伸缩性;同时分布式技术可以避免由于单个节点失效而使整个***崩溃的危险,具有较好的容错性。
另外,可以理解,除了在一台服务器中实现分布式结构外,还可以使用多台服务器的分布式结构,即终端可以包括前端服务器和至少一台后台服务器,计算机翻译数据处理***置于所述至少一台后台服务器中;所述前端服务器接收包含有待翻译的源语句的翻译请求,并分发给所述至少一台后台服务器中的计算机翻译数据处理***。其中,后台服务器的数量可以根据实际需要来设置。
参照图8,示出终端实施例一,包括前端服务器、多台后台服务器以及负载均衡模块。
负载均衡模块可以置于前端服务器中,也可以独立设置。负载均衡模块对前端服务器接收到的包含有待翻译的源语句的翻译请求根据各后台服务器的实时状态进行分发,并通过前端服务器传送给对应的后台服务器。
优选地,还可以对后台服务器进行分类,例如,分别负责不同语种之间的翻译,负载均衡模块则可以根据各后台服务器对应的语种进行分发。例如,后台服务器1负责英语-汉语翻译,后台服务器2负责德语-汉语翻译,以此类推。负载均衡模块则可以根据翻译请求中对应的翻译要求来进行分发。
通过分布式结构,可以保证各后台服务器的负载均衡,同时因为可以增加后台服务器的数量,从而可以提高***的承载能力,并加快***响应速度,提高处理效率。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于***实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本申请是参照根据本申请实施例的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上对本申请所提供的计算机翻译数据处理方法、***及终端进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。