文本处理方法、装置、电子设备及可读存储介质与流程

文档序号:21365379发布日期:2020-07-04 04:40阅读:136来源:国知局
文本处理方法、装置、电子设备及可读存储介质与流程

本公开涉及文本翻译及系统监控领域,更具体地,涉及一种文本处理方法、装置、电子设备及可读存储介质。



背景技术:

随着电子技术的发展,为了提高处理效率,降低人工成本,基于机器学习模型的语言处理得到快速发展。其中,机器翻译为该语言处理的一个重要分支。

在实现本公开构思的过程中,发明人发现现有技术中至少存在以下技术问题:机器翻译除了可以应用于日常的口语翻译外,还可以应用于各种不同的专业领域中。在应用于各种不同的专业领域时,往往需要大量的平行语料作为先验知识来对机器模型进行训练。但考虑到领域专业性及平行语料获取的广泛性,用于训练模型的语料往往鱼目混杂,很难保证训练的模型的准确性,从而在一定程度上影响翻译得到的文本的准确性。



技术实现要素:

有鉴于此,本公开提供了一种能够提高翻译准确性的文本处理方法、装置、电子设备及计算机可读存储介质。

本公开的一个方面提供了一种文本处理方法,该方法包括:获得混合平行语料和目标平行语料;以混合平行语料和目标平行语料作为训练样本,训练预定模型得到第一翻译模型;以及以待处理文本作为第一翻译模型的输入,获得针对待处理文本的翻译文本。其中,目标平行语料为针对目标领域的平行语料,目标平行语料包括通过第二翻译模型筛选得到的平行语料。第二翻译模型以混合平行语料作为训练样本训练得到。

根据本公开的实施例,上述获得目标平行语料包括:获得针对目标领域的多个平行语料;采用第二翻译模型,确定多个平行语料中满足第一条件的平行语料;以及根据满足第一条件的平行语料,获得目标平行语料。

根据本公开的实施例,上述确定多个平行语料中满足第一条件的平行语料包括:针对多个平行语料中的第一平行语料执行以下操作:以第一平行语料包括的源语句作为第二翻译模型的输入,输出得到第一平行语料对应的预测翻译语句;以及根据第一平行语料包括的源语句、第一平行语料包括的翻译语句以及第一平行语料对应的预测翻译语句,确定第一平行语料是否满足第一条件。其中,第一平行语料为多个平行语料中的任意一个平行语料。

根据本公开的实施例,上述确定第一平行语料是否满足第一条件包括:确定第一平行语料对应的预测翻译语句中的多个目标词串,该多个目标词串中的每个目标词串由预测翻译语句中位置连续的多个第一词组成,多个第一词中目标词的占比不小于预定占比;确定多个目标词串中长度最大的目标词串为最大目标词串;确定最大目标词串包括的目标词属于第一平行语料包括的翻译语句的第一比例;以及在第一比例不小于第一预定比例的情况下,确定第一平行语料满足第一条件。其中,目标词包括预定词汇表中的词及多个平行语料包括的翻译语句中的词。

根据本公开的实施例,上述根据满足第一条件的平行语料,获得目标平行语料包括:针对满足第一条件的平行语料中的第二平行语料执行以下操作:根据第二平行语料对应的预测翻译语句的最大目标词串,确定第二平行语料包括的翻译语句中满足第二条件的至少一个分句;确定第二平行语料包括的源语句中与第二平行语料对应的最大目标词串匹配的至少一个第二词;以及拼接至少一个第二词得到目标源语句,拼接至少一个分句得到目标翻译语句。其中,根据第二平行语料得到的目标平行语料包括目标源语句及目标翻译语句,第二平行语料为满足第一条件的平行语料中的任意一个平行语料。

根据本公开的实施例,上述确定第二平行语料包括的翻译语句中满足第二条件的至少一个分句包括:将第二平行语料包括的翻译语句进行分句处理,得到多个分句;确定多个分句各自包括的目标词在第二平行语料对应的最大目标词串中出现的第二比例,得到多个第二比例;确定多个第二比例中不小于第二预定比例的第二比例为目标比例;确定目标比例所对应的分句为满足第二条件的至少一个分句;在第二比例均小于第二预定比例的情况下,确定多个第二比例中最大第二比例对应的分句为所述满足第二条件的至少一个分句。

根据本公开的实施例,上述文本处理方法还包括在训练预定模型得到第一翻译模型之前:针对混合平行语料和目标平行语料中任意一个平行语料包括的源语句和翻译语句执行以下操作:对源语句和翻译语句进行分词处理,得到针对源语句的第一词序列及针对翻译语句的第二词序列;根据预定词汇表,将第一词序列转换得到第一编号序列,将第二词序列转换得到第二编号序列;以及采用词嵌入技术,根据第一编号序列,得到针对第一词序列的第一词向量,以及根据第二编号序列,得到针对第二词序列的第二词向量。其中,预定词汇表中包括多个词与针对多个词的编号的对应关系,多个词从混合平行语料和目标平行语料中提取得到;第一翻译模型根据第一词向量和第二词向量训练得到。

根据本公开的实施例,上述第一翻译模型包括第一子模型和第二子模型,上述以待处理文本作为第一翻译模型的输入,获得针对待处理文本的翻译文本包括:以待处理文本作为第一子模型的输入,获得针对待处理文本的语义向量;以及以语义向量作为第二子模型的输入,获得针对待处理文本的翻译文本。其中,第二子模型包括长短期记忆网络模型,第二编号序列包括语句起始编号和语句结束编号。

本公开的另一方面提供了一种文本处理装置,该装置包括:第一语料获得模块,用于获得混合平行语料和目标平行语料;模型训练模块,用于以混合平行语料和目标平行语料作为训练样本,训练预定模型得到第一翻译模型;翻译文本获得模块,用于以待处理文本作为第一翻译模型的输入,获得针对待处理文本的翻译文本。其中,目标平行语料为针对目标领域的平行语料,目标平行语料包括通过第二翻译模型筛选得到的平行语料。第二翻译模型以混合平行语料作为训练样本训练得到。

本公开的另一方面提供了一种电子设备,该电子设备包括:一个或多个处理器;存储装置,用于存储一个或多个程序,其中,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器执行前述的文本处理方法。

本公开的另一方面提供了一种计算机可读存储介质,存储有计算机可执行指令,该指令在被执行时使处理器执行前述的文本处理方法。

根据本公开的实施例,可以至少部分地解决将机器翻译方法应用于专业领域存在的翻译准确性低的问题,并因此通过将混合平行语料和目标平行语料混合后作为训练样本,且通过第二翻译模型筛选来得到目标平行语料,可以至少部分地提高训练样本的质量及完整性。从而至少部分地提高训练得到的第一翻译模型的精度,提高得到的翻译文本的准确性。

附图说明

通过以下参照附图对本公开实施例的描述,本公开的上述内容以及其他目的、特征和优点将更为清楚,在附图中:

图1示意性示出了根据本公开实施例的文本处理方法、装置、电子设备及可读存储介质的应用场景图;

图2示意性示出了根据本公开示例性实施例一的文本处理方法的流程图;

图3示意性示出了根据本公开示例性实施例二的文本处理方法的流程图;

图4示意性示出了根据本公开实施例的获得针对待处理的文本的翻译文本的流程图;

图5示意性示出了根据本公开实施例的获得目标平行语料的流程图;

图6示意性示出了根据本公开实施例的确定多个平行语料中每个平行语料是否满足第一条件的流程图;

图7示意性示出了根据本公开实施例的确定第一平行语料是否满足第一条件的流程图;

图8示意性示出了根据本公开实施例的根据每个满足第一条件的平行语料,获得目标平行语料的流程图;

图9示意性示出了根据本公开实施例的确定第二平行语料包括的翻译语句中满足第二条件的至少一个分句的流程图;

图10示意性示出了根据本公开实施例的文本处理装置的结构框图;以及

图11示意性示出了根据本公开实施例的适于执行文本处理方法的电子设备的结构框图。

具体实施方式

以下,将参照附图来描述本公开的实施例。但是应该理解,这些描述只是示例性的,而并非要限制本公开的范围。在下面的详细描述中,为便于解释,阐述了许多具体的细节以提供对本公开实施例的全面理解。然而,明显地,一个或多个实施例在没有这些具体细节的情况下也可以被实施。此外,在以下说明中,省略了对公知结构和技术的描述,以避免不必要地混淆本公开的概念。

在此使用的术语仅仅是为了描述具体实施例,而并非意在限制本公开。在此使用的术语“包括”、“包含”等表明了所述特征、步骤、操作和/或部件的存在,但是并不排除存在或添加一个或多个其他特征、步骤、操作或部件。

在此使用的所有术语(包括技术和科学术语)具有本领域技术人员通常所理解的含义,除非另外定义。应注意,这里使用的术语应解释为具有与本说明书的上下文相一致的含义,而不应以理想化或过于刻板的方式来解释。

在使用类似于“a、b和c等中至少一个”这样的表述的情况下,一般来说应该按照本领域技术人员通常理解该表述的含义来予以解释(例如,“具有a、b和c中至少一个的系统”应包括但不限于单独具有a、单独具有b、单独具有c、具有a和b、具有a和c、具有b和c、和/或具有a、b、c的系统等)。

本公开的实施例提供了一种文本处理方法,该方法包括:先获得混合平行语料和目标平行语料。然后以混合平行语料和目标平行语料作为训练样本,训练预定模型得到第一翻译模型。最后以待处理文本作为第一翻译模型的输入,获得针对待处理文本的翻译文本。其中,目标平行语料为针对目标领域的平行语料,目标平行语料包括通过第二翻译模型筛选得到的平行语料。其中,第二翻译模型以混合平行语料作为训练样本训练得到。

图1示意性示出了根据本公开实施例的文本处理方法、装置、电子设备及可读存储介质的应用场景100。需要注意的是,图1所示仅为可以应用本公开实施例的应用场景的示例,以帮助本领域技术人员理解本公开的技术内容,但并不意味着本公开实施例不可以用于其他设备、系统、环境或场景。

如图1所示,该应用场景100例如可以包括终端设备111、112、113,网络120和数据库130。网络120用以在终端设备111、112、113和数据库130之间提供通信链路的介质。网络120可以包括各种连接类型,例如有线、无线通信链路等等。

终端设备111、112、113例如可以通过网络120从数据库130中获取平行语料,以根据该平行语料对预定模型进行训练,得到翻译模型。其中,平行语料是指表达同一个意思的两种不同的语言的语句,因此每个平行语料可以包括:源语句和翻译语句。

终端设备111、112、113例如可以安装有各种客户端应用,例如可以包括监控类应用、网页浏览器应用、搜索类应用、邮箱客户端等(仅为示例)。该终端设备111、112、113例如可以是具有显示屏的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等,该终端设备111、112、113可以对根据翻译模型得到的翻译结果进行展示。

监控类应用例如可以是用于对监控信息系统时得到的结果进行处理的应用。其中,对信息系统的监控例如可以采用告警手段。考虑到告警监控中会产生一些信息系统无法识别的未知告警,该大量的未知告警会给监控人员造成困惑。而监控人员往往难以理解该些未知告警的含义,从而无法判断该未知告警对信息系统的影响,也无法针对该未知告警进行处理,且未知告警往往为非中文的语言表述的内容。因此,为了理解该未知告警的含义,该监控类应用对监控的结果进行的处理例如可以包括:将该未知告警的内容翻译为监控人员熟悉的语言表述的内容。从而解决随着告警量的不断增加,人工翻译的模式越来越难以为继,大量未知告警未及时翻译转化,从而影响生产安全的技术问题。

根据本公开的实施例,如图1所示,该应用场景100例如还可以包括服务器140,该服务器140可以通过网络120与终端设备111、112、113进行通信。服务器140中例如可以运行有前述的信息系统及用于监控信息系统的工具,则前述的监控类应用包括与该用于监控信息系统的工具配套的客户端应用。用于监控信息系统的工具可以通过网络120将告警信息反馈给该监控类应用。

需要说明的是,本公开实施例所提供的文本处理方法一般可以由终端设备111、112、113执行。相应地,本公开实施例所提供的文本处理装置一般可以设置于终端设备111、112、113中。

应该理解,图1中的终端设备、网络、数据库和服务器的数目和类型仅仅是示意性的。根据实现需要,可以具有任意数目和类型的终端设备、网络、数据库和服务器。

以下将参考图1的应用场景,结合图2~图9对本公开提供的文本处理方法进行详细描述。

图2示意性示出了根据本公开示例性实施例一的文本处理方法的流程图。

如图2所示,本公开实施例的文本处理方法例如可以包括操作s210~操作s230。

在操作s210,获得混合平行语料和目标平行语料。根据本公开的实施例,该操作s210例如可以是由终端设备从数据库中获取得到该些混合平行语料和目标平行语料。

其中,混合平行语料例如可以指从众多领域中获取得到的平行语料。该混合平行语料例如可以包括现有技术中的平行语料,该混合平行语料可以为从新闻、字幕、联合国文件和维基百科中提取得到的平行语料。

其中,目标平行语料为针对目标领域的平行语料。该目标领域例如可以包括图1中描述的监控领域或材料领域、航天领域等。该目标平行语料中的源语句和翻译语句中包括该目标领域中的专业词汇。

根据本公开的实施例,为了提高训练得到的翻译模型的稳定性,在从数据库中获取到目标领域的平行语料后,还可以对该目标领域的平行语料进行筛选,筛选得到包括的源文本和翻译文本的匹配度高的平行语料。其中,为了确定平行语料包括的源文本和翻译文本的匹配度,例如可以借助于以混合平行语料作为训练样本训练得到的翻译模型来实现。因此,操作s210中获得的目标平行语料例如可以包括通过第二翻译模型筛选得到的平行语料,该第二翻译模型即为以混合平行语料作为训练样本训练得到的模型。

根据本公开的实施例,对该目标领域的平行语料进行筛选,得到目标平行语料的操作可以详见后续图5~图9描述的流程,在此不再详述。

在操作s220,以混合平行语料和目标平行语料作为训练样本,训练预定模型得到第一翻译模型。

根据本公开的实施例,预定模型例如可以包括序列到序列模型,该序列到序列模型例如可以由两个循环神经网络串联而成。串联的两个循环神经网络中:前一个循环神经网络用于将语句编码成一个语义向量,后一个循环神经网络用于将语义向量解码成与编码的语句对应的翻译语句。

根据本公开的实施例,该训练样本中,混合平行语料和目标平行语料的比例可以根据实际需求进行设定。例如,若希望使得第一翻译模型更加注重目标领域的专业表述,则目标平行语料所占的比例可以大一些。若希望使得第一翻译模型更加注重翻译的准确率,则混合平行语料所占的比例可以大一些。在一实施例中,该混合平行语料和目标平行语料所占的比例例如可以相等。

根据本公开的实施例,前述的第二翻译模型例如可以是采用与操作s220类似的方式,基于所述的预定模型训练得到的翻译模型。在训练过程中,例如可以采用梯度下降算法等对该预定模型的参数进行调整优化,得到第一翻译模型和/或第二翻译模型。该第一翻译模型和第二翻译模型的区别在于:训练时第一翻译模型的训练样本中包括目标平行语料,而第二翻译模型的训练样本中不包括目标平行语料。

根据本公开的实施例,为了便于训练该预定模型,例如还可以包括对训练样本中的每个平行语料进行预处理的操作,以将训练样本转换为预定模型的输入,并便于后续对预定模型的参数进行调整。其中,对每个平行语料进行的预处理的操作例如可以通过后续图3描述的流程来实现,在此不再详述。

在操作s230,以待处理文本作为第一翻译模型的输入,获得针对待处理文本的翻译文本。

在训练得到第一翻译模型后,即可采用该第一翻译模型对待处理文本进行翻译,得到翻译文本。其中,待处理文本例如可以为图1描述的应用场景中的未知告警文本。类似地,为了便于输入第一翻译模型,例如还可以先对待处理文本进行预处理,将该待处理文本转换为词向量,然后将词向量输入第一翻译模型。该第一翻译模型的输出例如也可以为针对翻译文本的词向量,通过将针对翻译文本的词向量进行与预处理相反的处理,得到待处理文本的翻译文本。

根据本公开的实施例,对待处理文本的预处理例如可以包括:先对该待处理文本进行分词处理,得到词序列。然后采用预定义的词汇表将词序列中的每个词对应至词编号,最后根据词汇表将该词序列对应得到的多个词编号投影至词向量空间,得到词向量。

根据本公开的实施例,在监控领域,为了使得展示的翻译结果更能表征告警信息,在操作s230得到翻译文本后,例如可以将从该翻译文本中挑选得到重要词串作为翻译结果。其中,从翻译文本中挑选得到重要词串的流程例如可以包括:先确定翻译文本中的多个目标词串,然后确定该多个目标词串中长度最大的目标词串为翻译结果。其中,该从翻译文本中挑选得到重要词串的流程可以详见后续图7描述的操作s721~操作s722,在此不再详述。

图3示意性示出了根据本公开示例性实施例二的文本处理方法的流程图。

为了便于对预定模型进行训练,还需要对训练样本中每个平行语料进行预处理,例如将每个平行语料包括的源语句和翻译语句转换为词向量。因此,如图3所示,本公开实施例的文本处理方法除了操作s210~操作s230外,还包括针对混合平行语料和目标平行语料中的任意一个平行语料包括的源语句和翻译语句执行操作s340~操作s360。该操作s340~操作s360例如可以在操作s220之前执行。

在操作s340,对源语句和翻译语句进行分词处理,得到针对源语句的第一词序列及针对翻译语句的第二词序列。

根据本公开的实施例,若语句(源语句或翻译语句)为英文表述的语句,对该语句进行分词处理时,例如可以直接根据标点符号进行分词。或者,可以先在源语句中的标点符号前加空格,然后根据空格对源语句进行分词。若语句(翻译语句或源语句)为中文表述的语句,则对该语句进行分词处理时,可以直接根据字符进行分词,使得每个中文字符为一个词。通过对每个平行语料包括的源语句进行分词,可以得到多个第一词,该些第一词组合形成第一词序列。通过对每个平行语料包括的翻译语句进行分词,可以得到多个第二词,该些第二词组合形成第二词序列。可以理解的是,前述分词处理时采用的方法仅作为示例以利于理解本公开,本公开对此不作限定。分词处理时采用的方法具体可以根据表述语句的语言类型来确定。

在操作s350,根据预定词汇表,将第一词序列转换得到第一编号序列,将第二词序列转换得到第二编号序列。

根据本公开的实施例,预定词汇表(前述的预定义的词汇表)中包括多个词与针对多个词的编号的对应关系。根据本公开的实施例,该预定词汇表例如可以包括针对表述源语句的第一语言的第一词汇表,以及针对表述翻译语句的第二语言的第二词汇表。第一词汇表可以包括从混合平行语料的源语句中提取得到的词,以及从目标领域的平行语料的源语句中提取得到的词。第二词汇表包括从翻译语句中提取得到的词,以及从目标领域的平行语料的翻译语句中提取得到的词。操作s350例如可以包括:在第一词汇表中查找第一词序列包括的多个第一词,若在该第一词汇表中找到某个第一词,则将该某个第一词的编号作为第一编号序列中的一个编号。若该第一词汇表中没有找到某个第一词,则为该某个第一词分配预定编号。从而得到多个第一词分别对应的多个编号,该多个编号组成第一编号序列。基于同样的方法,根据第二词序列包括的多个第二词及第二词汇表,可以得到第二编号序列。

根据本公开的实施例,第一词汇表和/或第二词汇表的构建方法例如可以包括:先选定词汇表大小v,然后从众多平行语料(混合平行语料和目标领域的平行语料)的源语句和/或翻译语句中提取出现最频繁的v个词纳入第一词汇表和/或第二词汇表,然后为该v个词分别进行编号,使得每个词具有唯一的编号。

根据本公开的实施例,在构建词汇表时,可以先通过前述类似的词汇表的构建方法根据混合平行语料构建得到通用词汇表。然后再从筛选得到的目标平行语料中提取得到出现最频繁的v’个词纳入该通用词汇表,得到最终的预定词汇表。

根据本公开的实施例,为了便于第一翻译模型能够识别翻译的开始和结束,在得到第二编号序列时,可以在该第二编号序列的头部加上表示语句开始的编号,在第二编号序列的尾部加上表示语句结束的编号。

在操作s360,采用词嵌入技术,根据第一编号序列,得到针对第一词序列的第一词向量,以及根据第二编号序列,得到针对第二词序列的第二词向量。

根据本公开的实施例,词嵌入技术例如可以通过word2vec(wordtovector)方法来实现,word2vec是一种将文本中的各个词使用一个定长的向量来表示的方法。或者,词嵌入技术可以使用glove(globalvectorsforwordrepresentation)工具来实现,该glove工具是一个基于全局词频统计的词表征工具,可以把一个单词表达成一个由实数组成的向量,这些向量可以捕捉到单词之间的一些语义特征。

根据本公开的实施例,在操作s360中,可以先根据第一编号序列和第二编号序列对应到预定词汇表中的词,然后再将该对应到的词通过词嵌入技术转换得到词向量。

在得到第一词向量和第二词向量后,操作s220例如可以根据第一词向量和第二词向量训练得到第一翻译模型。具体地,训练预定模型的过程例如可以包括:将根据操作s210中的平行语料中的多个源语句得到的多个第一词向量依次输入预定模型,然后根据该预定模型的输出向量及与多个源语句对应的多个翻译语句,采用梯度下降算法对预定模型的参数进行调整和优化,直至预定模型的输出向量与翻译语句的相似度不小于第一预定相似度(例如0.9)。最终优化得到的模型即为第一翻译模型。

图4示意性示出了根据本公开实施例的获得针对待处理的文本的翻译文本的流程图。

根据本公开的实施例,第一翻译模型例如可以包括第一子模型和第二子模型。如图4所示,以待处理文本作为第一翻译模型的输入,获得针对待处理文本的翻译文本的操作s230例如可以包括操作s431~操作s432。

在操作s431,以待处理文本作为第一子模型的输入,获得针对待处理文本的语义向量。

根据本公开的实施例,该操作s431例如可以包括:将对待处理文本进行预处理后得到的词向量作为第一子模型的输入,由该第一子模型输出得到语义向量。其中,第一子模型例如可以为循环神经网络模型。该操作s431具体例如可以包括:将词向量中的第一个向量值作为第一子模型第一次循环的输入,得到第一输出向量。然后将该第一输出向量和词向量中的第二个向量值作为第一子模型第二次循环的输入,得到第二输出向量,依次类推,直至词向量中的最后一个向量值输入第一子模型,将输出得到的隐含层的输出作为语义向量。该第一子模型例如可以为长短期记忆网络(lstm,longshort-termmemory),用于对词向量进行编码,最终输出的语义向量蕴含了多次循环中的输入内容。

在操作s432,以语义向量作为第二子模型的输入,获得针对待处理文本的翻译文本。

根据本公开的实施例,该第二子模型例如可以为有注意力机制的长短期记忆网络。该操作s432例如可以包括:将语义向量和句子起始标识符(例如“<s>”)作为该第二子模型第一次循环的输入,由该第二子模型输出得到翻译文本的第一个词的词向量。然后,将该第一个词的词向量作为第二子模型第二次循环的输入,输出得到翻译文本的第二个词的词向量。然后,将该第二个词的词向量作为第二子模型第三次循环的输入,输出得到翻译文本的第三个词的词向量,依次类推,直至第二子模型输出句子结束标识符(“例如“</s>”)或输出的多个词组成的语句长度达到了设定的语句长度。其中,设定的语句长度例如可以为待处理文本中语句长度的两倍等,该设定的语句长度可以根据实际需求进行设定。

以下将结合图5~图9对本公开实施例的获得目标平行语料的流程进行详细描述。

图5示意性示出了根据本公开实施例的获得目标平行语料的流程图。

如图5所示,本公开实施例的获得目标平行语料的操作s210例如可以包括操作s511~操作s513。

在操作s511,获得针对目标领域的多个平行语料。该操作s511例如可以是从数据库130中获取目标领域的多个平行语料。为了便于获得目标领域的多个平行语料,数据库中的平行语料例如可以具有针对领域的标签或者索引,用于表征平行语料所属的领域。在获取平行语料时,应根据针对目标领域的标签来获取,从而得到目标领域的多个平行语料。

在操作s512,采用第二翻译模型,确定多个平行语料中满足第一条件的平行语料。在操作s513,根据满足第一条件的平行语料,获得目标平行语料。

根据本公开的实施例,第一条件例如可以为源语句和翻译语句的匹配度高于预定匹配度,或者源语句和翻译语句中包括预定词汇表中的词个数不小于预定个数等。操作s512例如可以通过图6描述的流程来实现。

图6示意性示出了根据本公开实施例的确定多个平行语料中每个平行语料是否满足第一条件的流程图。

如图6所示,确定多个平行语料中满足第一条件的平行语料的操作s512例如可以包括:针对多个平行语料中的第一平行语料执行操作s621~操作s622。其中,第一平行语料为多个平行语料中的任意一个平行语料。

在操作s621,以第一平行语料包括的源语句作为第二翻译模型的输入,输出得到第一平行语料对应的预测翻译语句。根据本公开的实施例,该操作s621的实现方式与前述操作s230中得到待处理文本的翻译文本的流程相似,在此不再赘述。

在操作s622,根据第一平行语料包括的源语句、第一平行语料包括的翻译语句以及第一平行语料对应的预测翻译语句,确定第一平行语料是否满足第一条件。

根据本公开的实施例,该操作s622例如可以包括:先确定第一平行语料包括的翻译语句与操作s621中得到的预测翻译语句的相似度,若相似度不小于第二预定相似度(例如0.6),则确定该翻译语句所属的第一平行语料满足第一条件。

根据本公开的实施例,该操作s622例如还可以通过图7描述的流程来实现,在此不再详述。

图7示意性示出了根据本公开实施例的确定第一平行语料是否满足第一条件的流程图。

如图7所示,确定第一平行语料是否满足第一条件的操作s622例如可以包括操作s721~操作s726。

在操作s721,确定第一平行语料对应的预测翻译语句中的多个目标词串。

其中,多个目标词串中的每个目标词串由预测翻译语句中位置连续的多个第一词组成,多个第一词中目标词的占比不小于预定占比。其中,目标词例如可以包括预定词汇表中的词及多个平行语料包括的翻译语句中的词。

根据本公开的实施例,该操作s721例如可以包括:先对预测翻译语句进行分词处理,得到词序列,然后词序列包括的多个词按顺序查找目标词的占比不小于预定占比的连续的多个词,得到一个目标词串,直至顺序查找至预测翻译语句的最后一个词,总共得到多个目标词串。例如,若预测翻译语句为“第一服务器的线程拥堵,第二服务器存在非法请求”,则先得到词序列:<“第一”,“服务器”,“的”,“线程”,“拥堵”,“,”,“第二”,“服务器”,“存在”,“非法”,“请求”>,然后查找得到以下多个词串:“第一服务器”、“第一服务器的”、“第一服务器的线程”、“第一服务器的线程拥堵”、…、“第一服务器的线程拥堵,第二服务器存在非法请求”、“服务器的”、“服务器的线程”、“服务器的线程拥堵”…、“非法请求”。然后确定该多个词串中包括目标词的占比,通过与预定占比相比对,得到多个目标词串。得到的目标词串例如可以包括“第一服务器的线程拥堵”和“线程拥堵,第二服务器存在”。

在操作s722,确定多个目标词串中长度最大的目标词串为最大目标词串。该操作s722例如可以包括:确定多个目标词串中包括的字符最多的目标词串为最大目标词串。根据前述实施例中的目标词串,确定的最大目标词串例如可以为“线程拥堵,第二服务器存在”。

在操作s723,确定最大目标词串包括的目标词属于第一平行语料包括的翻译语句的第一比例。该操作s723例如可以包括:先确定最大目标词串中包括的各个词是否在第一平行语料包括的翻译语句中出现,从而确定最大目标词串包括的多个词中在第一平行语料包括的翻译语句中出现的至少一个词,然后计算该至少一个词的个数与最大目标词串包括的多个词总数量的比例,得到第一比例。

在操作s724,判断第一比例是否小于第一预定比例。

根据本公开的实施例,第一预定比例例如可以为0.6等。在第一比例不小于第一预定比例的情况下,执行操作s725,确定第一平行语料满足第一条件。在第一比例小于第一预定比例的情况下,执行操作s726,确定第一平行语料不满足第一条件,则将该第一平行语料从多个平行语料中剔除。

图8示意性示出了根据本公开实施例的根据每个满足第一条件的平行语料,获得目标平行语料的流程图。

如图8所示,根据满足第一条件的平行语料,获得目标平行语料的操作s513例如可以包括:针对满足第一条件的平行语料中的第二平行语料执行操作s831~操作s833。其中,该第二平行语料为满足第一条件的平行语料中的任意一个平行语料。

在操作s831,根据第二平行语料对应的预测翻译语句的最大目标词串,确定第二平行语料包括的翻译语句中满足第二条件的至少一个分句。

根据本公开的实施例,该操作s831例如可以包括:先对翻译语句进行分句处理,得到多个分句。然后确定该多个分句与最大目标词串的相似度,确定相似度大于第三预定相似度(例如可以为0.5)的分句为满足第二条件的分句。该操作s831例如可以通过图9描述的流程来实现,在此不再详述。

在操作s832,确定第二平行语料包括的源语句中与第二平行语料对应的最大目标词串匹配的至少一个第二词。

根据本公开的实施例,该操作s832例如可以包括:根据第二平行语料的源语句与预测翻译语句的对应关系,来确定源语句中与第二平行语料对应的最大目标词串对应的第二词,得到至少一个第二词。该对应关系例如可以通过第二翻译模型中的输入词向量和输出词向量的对应关系来确定的。

操作s833,拼接至少一个第二词得到目标源语句,拼接至少一个分句得到目标翻译语句。因此,根据该第二平行语料得到的目标平行语料包括该目标源语句及该目标翻译语句。

图9示意性示出了根据本公开实施例的确定第二平行语料包括的翻译语句中满足第二条件的至少一个分句的流程图。

如图9所示,确定第二平行语料包括的翻译语句中满足第二条件的至少一个分句的包括操作s831例如可以包括操作s911~操作s916。

在操作s911,将第二平行语料包括的翻译语句进行分句处理,得到多个分句。根据本公开的实施例,该操作s911例如可以根据翻译语句中的标点对翻译语句进行切分,从而得到多个分句。

在操作s912,确定多个分句各自包括的目标词在第二平行语料对应的最大目标词串中出现的第二比例,得到多个第二比例。

该操作s912例如可以包括:先通过与预定词汇表比对来确定多个分句中每个分句包括的目标词的第一个数。然后确定每个分句包括的目标词是否在最大目标词串中出现。从而得到每个分句包括的目标词中在最大目标词串中出现的目标词的第二个数。最后,将该第二个数与第一个数相除,计算得到第二比例。对多个分句中的每个分句执行相似的操作,得到多个第二比例。

在操作s913,判断多个第二比例是否均小于第二预定比例。

在多个第二比例均小于第二预定比例的情况下,执行操作s914,确定多个第二比例中最大第二比例对应的分句为满足第二条件的至少一个分句。

在多个第二比例中存在不小于第二预定比例的第二比例时,则执行操作s915~操作s916。在操作s915,确定多个第二比例中不小于第二预定比例的第二比例为目标比例。在操作s916,确定目标比例所对应的分句为满足第二条件的至少一个分句。

图10示意性示出了根据本公开实施例的文本处理装置的结构框图。

如图10所示,本公开实施例的文本处理装置1000包括语料获得模块1010、模型训练模块1020和翻译文本获得模块1030。

语料获得模块1010用于获得混合平行语料和目标平行语料。其中,目标平行语料为针对目标领域的平行语料,目标平行语料包括通过第二翻译模型筛选得到的平行语料。第二翻译模型以混合平行语料作为训练样本训练得到。该语料获得模块1010例如可以用于执行图2描述的操作s210,在此不再赘述。

模型训练模块1020用于以混合平行语料和目标平行语料作为训练样本,训练预定模型得到第一翻译模型。该模型训练模块1020例如可以用于执行图2描述的操作s220,在此不再赘述。

翻译文本获得模块1030用于以待处理文本作为第一翻译模型的输入,获得针对待处理文本的翻译文本。该翻译文本获得模块1030例如可以用于执行图2描述的操作s230,在此不再赘述。

根据本公开的实施例,上述语料获得模块1010例如可以包括第一获得子模块1011、确定子模块1012和第二获得子模块1013。第一获得子模块用于获得针对目标领域的多个平行语料。确定子模块用于确定多个平行语料中满足第一条件的平行语料。第二获得子模块用于根据满足第一条件的平行语料,获得目标平行语料。第一获得子模块1011、确定子模块1012和第二获得子模块1013例如可以分别用于执行图5描述的操作s511~操作s513,在此不再赘述。

根据本公开的实施例,上述确定子模块1012用于针对多个平行语料中的第一平行语料执行以下操作:以第一平行语料包括的源语句作为第二翻译模型的输入,输出得到第一平行语料对应的预测翻译语句(操作s621);以及根据第一平行语料包括的源语句、第一平行语料包括的翻译语句以及第一平行语料对应的预测翻译语句,确定第一平行语料是否满足第一条件(操作s622)。其中,第一平行语料为多个平行语料中的任意一个平行语料。

根据本公开的实施例,上述确定第一平行语料是否满足第一条件包括:确定第一平行语料对应的预测翻译语句中的多个目标词串(操作s721)。多个目标词串中的每个目标词串由预测翻译语句中位置连续的多个第一词组成,多个第一词中目标词的占比不小于预定占比。确定多个目标词串中长度最大的目标词串为最大目标词串(操作s722)。确定最大目标词串包括的目标词属于第一平行语料包括的翻译语句的第一比例(操作s723)。在第一比例不小于第一预定比例的情况下,确定第一平行语料满足第一条件(操作s725)。其中,目标词包括预定词汇表中的词及多个平行语料包括的翻译语句中的词。

根据本公开的实施例,上述第二获得子模块1013用于针对满足第一条件的平行语料中的第二平行语料执行以下操作:根据第二平行语料对应的预测翻译语句的最大目标词串,确定第二平行语料包括的翻译语句中满足第二条件的至少一个分句(操作s831);确定第二平行语料包括的源语句中与第二平行语料对应的最大目标词串匹配的至少一个第二词(操作s832);以及拼接至少一个第二词得到目标源语句,拼接至少一个分句得到目标翻译语句(操作s833)。其中,根据第二平行语料得到的目标平行语料包括目标源语句及目标翻译语句,第二平行语料为满足第一条件的平行语料中的任意一个平行语料。

根据本公开的实施例,上述确定第二平行语料包括的翻译语句中满足第二条件的至少一个分句包括:将第二平行语料包括的翻译语句进行分句处理,得到多个分句(操作s911);确定多个分句各自包括的目标词在第二平行语料对应的最大目标词串中出现的第二比例,得到多个第二比例(操作s912);确定多个第二比例中不小于第二预定比例的第二比例为目标比例(操作s915);确定目标比例所对应的分句为满足第二条件的至少一个分句(操作s916)。其中,在第二比例均小于第二预定比例的情况下,确定多个第二比例中最大第二比例对应的分句为满足第二条件的至少一个分句(操作s914)。

根据本公开的实施例,如图10所示,上述文本处理装置1000例如还可以包括预处理模块1040,用于对语料获得模块1010获得的混合平行语料和目标平行语料中的任意一个平行语料进行预处理。如图10所示,该预处理模块1040例如可以包括分词子模块1041、转换子模块1042和向量获得子模块1043。分词子模块1041用于对任意一个平行语料包括的源语句和翻译语句进行分词处理,得到针对源语句的第一词序列及针对翻译语句的第二词序列(操作s340)。转换子模块1042用于根据预定词汇表,将第一词序列转换得到第一编号序列,将第二词序列转换得到第二编号序列(操作s350)。向量获得子模块1043用于采用词嵌入技术,根据第一编号序列,得到针对第一词序列的第一词向量,以及根据第二编号序列,得到针对第二词序列的第二词向量(操作s360)。其中,预定词汇表中包括多个词与针对多个词的编号的对应关系,多个词从混合平行语料和目标平行语料中提取得到;第一翻译模型根据第一词向量和第二词向量训练得到。

根据本公开的实施例,第一翻译模型包括第一子模型和第二子模型,上述翻译文本获得模块1030例如可以包括语义向量获得子模块1031和翻译文本获得子模块1032。语义向量获得子模块1031用于以待处理文本作为第一子模型的输入,获得针对待处理文本的语义向量。翻译文本获得子模块1032用于以语义向量作为第二子模型的输入,获得针对待处理文本的翻译文本。其中,第二子模型包括长短期记忆网络模型,第二编号序列包括语句起始编号和语句结束编号。语义向量获得子模块1031和翻译文本获得子模块1032例如可以分别用于执行图4描述的操作s431~操作s432,在此不再赘述。

根据本公开的实施例的模块、子模块、单元、子单元中的任意多个、或其中任意多个的至少部分功能可以在一个模块中实现。根据本公开实施例的模块、子模块、单元、子单元中的任意一个或多个可以被拆分成多个模块来实现。根据本公开实施例的模块、子模块、单元、子单元中的任意一个或多个可以至少被部分地实现为硬件电路,例如现场可编程门阵列(fpga)、可编程逻辑阵列(pla)、片上系统、基板上的系统、封装上的系统、专用集成电路(asic),或可以通过对电路进行集成或封装的任何其他的合理方式的硬件或固件来实现,或以软件、硬件以及固件三种实现方式中任意一种或以其中任意几种的适当组合来实现。或者,根据本公开实施例的模块、子模块、单元、子单元中的一个或多个可以至少被部分地实现为计算机程序模块,当该计算机程序模块被运行时,可以执行相应的功能。

图11示意性示出了根据本公开实施例的适于执行文本处理方法的电子设备的结构框图。图11示出的电子设备仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。

如图11所示,根据本公开实施例的电子设备1100包括处理器1101,其可以根据存储在只读存储器(rom)1102中的程序或者从存储部分1108加载到随机访问存储器(ram)1103中的程序而执行各种适当的动作和处理。处理器1101例如可以包括通用微处理器(例如cpu)、指令集处理器和/或相关芯片组和/或专用微处理器(例如,专用集成电路(asic)),等等。处理器1101还可以包括用于缓存用途的板载存储器。处理器1101可以包括用于执行根据本公开实施例的方法流程的不同动作的单一处理单元或者是多个处理单元。

在ram1103中,存储有电子设备1100操作所需的各种程序和数据。处理器1101、rom1102以及ram1103通过总线1104彼此相连。处理器1101通过执行rom1102和/或ram1103中的程序来执行根据本公开实施例的方法流程的各种操作。需要注意,所述程序也可以存储在除rom1102和ram1103以外的一个或多个存储器中。处理器1101也可以通过执行存储在所述一个或多个存储器中的程序来执行根据本公开实施例的方法流程的各种操作。

根据本公开的实施例,电子设备1100还可以包括输入/输出(i/o)接口1105,输入/输出(i/o)接口1105也连接至总线1104。电子设备1100还可以包括连接至i/o接口1105的以下部件中的一项或多项:包括键盘、鼠标等的输入部分1106;包括诸如阴极射线管(crt)、液晶显示器(lcd)等以及扬声器等的输出部分1107;包括硬盘等的存储部分1108;以及包括诸如lan卡、调制解调器等的网络接口卡的通信部分1109。通信部分1109经由诸如因特网的网络执行通信处理。驱动器1110也根据需要连接至i/o接口1105。可拆卸介质1111,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器1110上,以便于从其上读出的计算机程序根据需要被安装入存储部分1108。

根据本公开的实施例,根据本公开实施例的方法流程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读存储介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分1109从网络上被下载和安装,和/或从可拆卸介质1111被安装。在该计算机程序被处理器1101执行时,执行本公开实施例的系统中限定的上述功能。根据本公开的实施例,上文描述的系统、设备、装置、模块、单元等可以通过计算机程序模块来实现。

本公开还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施例中描述的设备/装置/系统中所包含的;也可以是单独存在,而未装配入该设备/装置/系统中。上述计算机可读存储介质承载有一个或者多个程序,当上述一个或者多个程序被执行时,实现根据本公开实施例的方法。

根据本公开的实施例,计算机可读存储介质可以是非易失性的计算机可读存储介质。例如可以包括但不限于:便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。

例如,根据本公开的实施例,计算机可读存储介质可以包括上文描述的rom1102和/或ram1103和/或rom1102和ram1103以外的一个或多个存储器。

附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

本领域技术人员可以理解,以上对本公开的实施例进行了描述。但是,这些实施例仅仅是为了说明的目的,而并非为了限制本公开的范围。尽管在以上分别描述了各实施例,但是这并不意味着各个实施例中的措施不能有利地结合使用。本公开的范围由所附权利要求及其等同物限定。不脱离本公开的范围,本领域技术人员可以做出多种替代和修改,这些替代和修改都应落在本公开的范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1