基于神经网络的实时翻译方法、智能终端及存储介质与流程

文档序号:21365346发布日期:2020-07-04 04:40阅读:264来源:国知局
基于神经网络的实时翻译方法、智能终端及存储介质与流程

本发明涉及文件翻译技术领域,具体涉及一种基于神经网络的实时翻译方法、智能终端及存储介质。



背景技术:

随着各行各业国际交流的日益频繁,人们对外语的使用越来越多,但是并非所有人都很好掌握多种语言。而针对现有各种智能终端通讯需要的翻译功能,存在两大明显弊端:一、当需要外文输入且用户无外文翻译能力的情况下,用户只能使用第三方软件服务进行在线翻译(如中国用户编写英文邮件、短信,只能使用谷歌翻译、有道翻译等软件将文字翻译成英文,再去撰写邮件、短信),无法做到实时翻译(即在编写邮件、短信的时候,输入中文实时翻译成外文,无需软件切换调用服务),并且这些第三方服务均为c/s或b/s架构,依赖于终端当前网络连接情况,无网络则无法提供服务。二、传统的翻译服务功能,虽然已经利用改进后的机器学习算法翻译(如crf、hmm等基于统计的算法),功能效果强于原本基于规则的翻译,但是仍然注重于直译,当拆分句子看翻译能非常准确,但是当整句组合来看的时候,语义表述可能会产生很大的偏差,因为是基于统计概率的翻译,它极有可能陷入局部最优解(局部最优翻译),而非全局最优解(全局最优翻译)。当用户进行跨国交流时,上下文的关联性可能非常紧密,对于“意译”的需求更加大。传统的基于统计的机器翻译性能对此需求不够满足。上述两点使得用户使用终端进行跨语言交流非常不便利。

因此,现有技术还有待于改进和发展。



技术实现要素:

本发明要解决的技术问题在于,针对现有技术的上述缺陷,提供一种基于神经网络的实时翻译方法、智能终端及存储介质,旨在解决现有技术中的翻译需要基于c/s、b/s架构及基于统计翻译方法的第三方软件,翻译服务依赖网络连接状况而无法对本地实时翻译且对文本翻译效果不理想等问题。

本发明解决技术问题所采用的技术方案如下:

一种基于神经网络的实时翻译方法,其中,所述方法包括:

检测智能终端的通讯状态,并在通讯状态发生变化时对通讯信息进行识别;

若识别出所述通讯信息为文本信息时,对所述文本信息进行提取;

将提取的文本信息内容发送至预设的神经网络翻译模型中进行实时翻译,输出翻译结果。

所述的基于神经网络的实时翻译方法,其中,所述检测智能终端的通讯状态,并在通讯状态发生变化时对通讯信息的内容进行识别的步骤,具体包括:

每隔预设的时间间隔对智能终端的通讯状态进行检测;

当检测到所述智能终端的通讯状态发生变化时,则获取通讯信息;

对所述通讯信息进行识别,判断所述通讯信息是否为文本信息。

所述的基于神经网络的实时翻译方法,其中,所述智能终端的通讯状态发生变化包括:智能终端收到第三方邮件或用户编写邮件或短信。

所述的基于神经网络的实时翻译方法,其中,所述若识别出所述通讯信息为文本信息时,对所述文本信息进行提取的步骤,还包括:

若识别出所述通讯信息不为文本信息,则不对所述通讯信息进行任何处理。

所述的基于神经网络的实时翻译方法,其中,所述神经网络翻译模型是基于一种序列到序列的编码器-解码器模型;所述编码器为双向循环神经网络。

所述的基于神经网络的实时翻译方法,其中,所述神经网络翻译模型是通过模型训练得到的,具体包括:

对编码器层输出进行权重计算,利用注意力机制,对每一时刻编码器层的隐状态进行加权平均;

在注意力层利用softmax分类器计算输入时刻每一个时刻的注意力的大小;

将编码器层的输出结果和注意力层的输出一并传入解码器层,解码器层将输出结果不断与真实翻译结果对比修正。

所述的基于神经网络的实时翻译方法,其中,所述将提取的文本信息内容发送至预设的神经网络翻译模型中进行实时翻译,输出翻译结果的步骤,具体包括:

通过所述神经网络翻译模型中的编码器层将输入源句进行编码成序列向量;

在解码过程中,第一词向量选取前词表大小beam_size个最高概率输出,下一个词向量又选取前词表大小beam_size个最高概率输出;

将这个词表大小beam_size*词表大小beam_size序列选项中综合概率最高的选择保留,得出前两个词向量的解码输出;

重复上述步骤,最终生成输出序列,完成翻译。

所述的基于神经网络的实时翻译方法,其中,所述方法还包括:

检测智能终端的定位信息;

当检测到所述智能终端处于异国时,直接启动神经网络翻译模型进行实时翻译。

一种智能终端,其中,包括:处理器、与处理器通信连接的存储介质,所述存储介质适于存储多条指令;所述处理器适于调用所述存储介质中的指令,以执行实现上述任一项所述的基于神经网络的实时翻译方法的步骤。

一种存储介质,其上存储有多条指令,其中,所述指令适于由处理器加载并执行,以执行实现上述任一项所述的基于神经网络的实时翻译方法的步骤。

本发明的有益效果:本发明成功避免了现有技术中翻译服务依赖网络状况的弊端,本发明实现了终端通讯的本地实时翻译,提升了用户使用效率并且降低了翻译功能的使用成本,并且通过构建神经网络翻译模型,大大提升了翻译的准确度。

附图说明

图1是本发明的基于神经网络的实时翻译方法的较佳实施例的流程图。

图2是本发明的神经网络翻译模型的结构示意图。

图3是将本发明的神经网络翻译模型集成在终端系统中的示意图。

图4是本发明的智能终端的功能原理图。

具体实施方式

为使本发明的目的、技术方案及优点更加清楚、明确,以下参照附图并举实施例对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本发明及其应用或使用的任何限制。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本发明提供的基于神经网络的实时翻译方法,可以应用于终端中。其中,终端可以但不限于是各种个人计算机、笔记本电脑、手机、平板电脑、车载电脑和便携式可穿戴设备。本发明的终端采用多核处理器。其中,终端的处理器可以为中央处理器(centralprocessingunit,cpu),图形处理器(graphicsprocessingunit,gpu)、视频处理单元(videoprocessingunit,vpu)等中的至少一种。

本发明提供一种基于神经网络的实时翻译方法,具体如图1所示,所述方法包括:

步骤s100、检测智能终端的通讯状态,并在通讯状态发生变化时对通讯信息进行识别。

具体实施时,由于用户在进行通讯时会有翻译需求,因此本实施例每隔预设的时间间隔对智能终端的通讯状态进行检测;当检测到所述智能终端的通讯状态发生变化时,则获取通讯信息;对所述通讯信息进行识别,判断所述通讯信息是否为文本信息。本实施例通过实时检测通讯状态,能够及时获取通讯信息,以便实现实时翻译。

优选地,智能终端的通讯状态发生变化包括:智能终端收到第三方邮件或用户编写邮件或短信等。对于没有翻译能力的用户,尤其是涉及到上述通讯状态发生改变时,传统的翻译方法是需要用户将所要翻译的文本内容采用第第三方软件进行翻译,操作及其不方便,因此,传统的翻译方法是无法满足用户需求的,而本发明是通过检测智能终端的通讯状态的,进而在通讯状态发生变化时,触发翻译功能,及时提取通讯信息并进行识别,以便及时了解到用户是否有翻译需求。

步骤s200、若识别出所述通讯信息为文本信息时,对所述文本信息进行提取。

具体实施时,本实施例中对于通讯信息的识别主要是为了提取文本信息,因此文本信息中是文字内容,是涉及到翻译需求的。因此当识别出所述通讯信息为文本信息时,对所述文本信息进行提取。而如果不是文本信息时,那这个文本信息是不涉及到翻译需求的,例如语音或者图片信息,则不对所述通讯信息进行任何处理。

步骤s300、将提取的文本信息内容发送至预设的神经网络翻译模型中进行实时翻译,输出翻译结果。

具体实施时,为了解决现有技术中的翻译需要基于c/s、b/s架构及基于统计翻译方法的第三方软件,翻译服务依赖网络连接状况而无法对本地实时翻译且对文本翻译效果不理想等问题。本实施例中预先构建一个神经网络翻译模型,该神经网络翻译模型无需依赖网络连接状况,且可以实现实时翻译,给用户的使用提供了方便。

优选地,如图2中所示,所述神经网络翻译模型是基于一种序列到序列的编码器-解码器模型,所述编码器选择双向循环神经网络,能够双向可以更好的便于神经网络抓取输入文本的上下文信息,保证尽可能抓取源序列的特征信息。编码器层将输入源句进行编码成序列向量。所述神经网络翻译模型中集成有一个ai芯片,为模型的训练与翻译提供计算支持。优选地,本实施例中的ai芯片可以采用现有技术中比较常用的ai芯片,只要能够满足本实施例中的运算需求即可,本实施例并不对此进行限定。

本实施例中的神经网络翻译模型是通过训练得到的,具体包括:对编码器层(encoder)输出进行权重计算,利用注意力机制,对每一时刻编码器层的隐状态进行加权平均;在注意力层利用softmax分类器计算输入时刻每一个时刻的注意力的大小;将编码器层的输出结果和注意力层(attention)的输出一并传入解码器层(decoder),解码器层将输出结果不断与真实翻译结果对比修正。从而使得本实施例终中的真实翻译结果可以是由预先存储在智能终端中的数据库提供的,当在进行实时翻译时,智能终端会实时将翻译结果与数据库进行对比匹配,从而确定翻译的准确性,并且实时对翻译结果进行调整与修正,从而使得最终的翻译结果更为准确。

在实际的翻译过程中,通过神经网络翻译模型中的编码器层将输入源句进行编码成序列向量;解码器层引入集束算法,在解码过程中,第一词向量选取前词表大小beam_size个最高概率输出,下一个词向量又选取前词表大小beam_size个最高概率输出;将这个词表大小beam_size*词表大小beam_size序列选项中综合概率最高的选择保留,得出前两个词向量的解码输出;剩下的词向量重复上述步骤,最终生成输出序列,完成翻译。

例如,设定输入源语句序列为

x:<x1,x2,x3...xm>

经过编码器层(encoder)编码后的每个输出通过权重计算为

h:[h1,h2,h3..hm]

注意力层(attention)对h进行加权平均,在经过softmax分类器计算,得到注意力概率c:

c:[c1,c2,c3...cm]

解码器层接受c和h后,通过bilstm进行解码,利用集束算法进行概率输出判断,最终得到输出序列y:

y:[y1,y2,y3...ym]

待得文本翻译完成后,本模块将最终的翻译结果返回给终端系统,完成本次翻译。

优选地,本实施例中还可以实时检测智能终端的定位信息;当检测到所述智能终端处于异国时(即判断用户处于异国,有翻译需求),直接启动神经网络翻译模型进行实时翻译。较佳地,判断智能终端是否处于异国的方法可以将智能终端的定位信息与智能终端的网络注册国进行对比,当相同,即判断智能终端位于本国,当不相同,即判断智能终端位于异国。

应该理解的是,虽然图1的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图1中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。

本实施例中的神经网络翻译模型还可以集成为一个实时翻译系统,如图3中所示,该实时翻译系统还可以集成在终端系统中,使得终端具有实时翻译的功能。从图3中可以看出,实时翻译系统中集成有逻辑管理模块、输入检测模块以及文本处理(tpm,textprocessingmodule)模块。逻辑管理模块是用于判断当终端的通讯状态发生变化时,通讯信息是否为文本信息,若为文本信息,则将文本信息发送至输入检测模块,若为非文本信息,则不进行任何处理。输入检测模块是用于对文本信息的文本内容进行抓取,并反馈至逻辑管理模块,并将文本内容发送至tpm模块。tpm模块中具有模型(model)模块以及ai芯片,ai芯片为模型训练与翻译通过运算支持。模型模块用于对系统接收到的文本进行翻译,得到最终的翻译结果。

优选地,本实施例中的实时翻译系统中还就有定位接口以及文本接口,所述定位接口是用于实时获取终端的定位信息,以判断终端是否处于异国,以便及时自动启动实时翻译系统。所述文本接口是用于方便及时抓取通讯信息中的文本信息,以便及时对文本信息进行翻译。

基于上述实施例,本发明还提供了一种智能终端,其原理框图可以如图4所示。该智能终端包括通过系统总线连接的处理器、存储器、网络接口、显示屏和温度传感器。其中,该智能终端的处理器用于提供计算和控制能力。该智能终端的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该智能终端的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种基于神经网络的实时翻译方法。该智能终端的显示屏可以是液晶显示屏或者电子墨水显示屏,该智能终端的温度传感器是预先在智能终端内部设置,用于检测内部设备的当前运行温度。

本领域技术人员可以理解,图4中示出的原理框图,仅仅是与本发明方案相关的部分结构的框图,并不构成对本发明方案所应用于其上的智能终端的限定,具体的智能终端可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。

在一个实施例中,提供了一种智能终端,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时至少可以实现以下步骤:

检测智能终端的通讯状态,并在通讯状态发生变化时对通讯信息进行识别;

若识别出所述通讯信息为文本信息时,对所述文本信息进行提取;

将提取的文本信息内容发送至预设的神经网络翻译模型中进行实时翻译,输出翻译结果。

在其中的一个实施例中,该处理器执行计算机程序时还可以实现:每隔预设的时间间隔对智能终端的通讯状态进行检测;当检测到所述智能终端的通讯状态发生变化时,则获取通讯信息;对所述通讯信息进行识别,判断所述通讯信息是否为文本信息。优选地,智能终端的通讯状态发生变化包括:智能终端收到第三方邮件或用户编写邮件或短信等。本实施例中是通过检测智能终端的通讯状态的,进而在通讯状态发生变化时,触发翻译功能,及时提取通讯信息并进行识别,以便及时了解到用户是否有翻译需求。

在其中的一个实施例中,该处理器执行计算机程序时还可以实现:若识别出所述通讯信息不为文本信息,则不对所述通讯信息进行任何处理。例如语音或者图片信息,则不对所述通讯信息进行任何处理。

在其中的一个实施例中,该处理器执行计算机程序时还可以实现:通过所述神经网络翻译模型中的编码器层将输入源句进行编码成序列向量;在解码过程中,第一词向量选取前词表大小beam_size个最高概率输出,下一个词向量又选取前词表大小beam_size个最高概率输出;将这个词表大小beam_size*词表大小beam_size序列选项中综合概率最高的选择保留,得出前两个词向量的解码输出;重复上述步骤,最终生成输出序列,完成翻译。优选地,本实施例中的神经网络翻译模型是基于一种序列到序列的编码器-解码器模型;所述编码器为双向循环神经网络。并且,该神经网络翻译模型是通过模型训练得到的,具体包括:对编码器层输出进行权重计算,利用注意力机制,对每一时刻编码器层的隐状态进行加权平均;在注意力层利用softmax分类器计算输入时刻每一个时刻的注意力的大小;将编码器层的输出结果和注意力层的输出一并传入解码器层,解码器层将输出结果不断与真实翻译结果对比修正。从而使得本实施例终中的真实翻译结果可以是由预先存储在智能终端中的数据库提供的,当在进行实时翻译时,智能终端会实时将翻译结果与数据库进行对比匹配,从而确定翻译的准确性,并且实时对翻译结果进行调整与修正,从而使得最终的翻译结果更为准确。

在其中的一个实施例中,该处理器执行计算机程序时还可以实现:检测智能终端的定位信息;当检测到所述智能终端处于异国时,直接启动神经网络翻译模型进行实时翻译。优选地,判断智能终端是否处于异国的方法可以将智能终端的定位信息与智能终端的网络注册国进行对比,当相同,即判断智能终端位于本国,当不相同,即判断智能终端位于异国。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本发明所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)或闪存。易失性存储器可包括随机存取存储器(ram)或者外部高速缓冲存储器。作为说明而非局限,ram以多种形式可得,诸如静态ram(sram)、动态ram(dram)、同步dram(sdram)、双数据率sdram(ddrsdram)、增强型sdram(esdram)、同步链路(synchlink)dram(sldram)、存储器总线(rambus)直接ram(rdram)、直接存储器总线动态ram(drdram)、以及存储器总线动态ram(rdram)等。

综上所述,本发明提供了一种基于神经网络的实时翻译方法、智能终端及存储介质,方法包括:检测智能终端的通讯状态,并在通讯状态发生变化时对通讯信息进行识别;若识别出所述通讯信息为文本信息时,对所述文本信息进行提取;将提取的文本信息内容发送至预设的神经网络翻译模型中进行实时翻译,输出翻译结果。本发明成功避免了现有技术中翻译服务依赖网络状况的弊端,本发明实现了终端通讯的本地实时翻译,提升了用户使用效率并且降低了翻译功能的使用成本,并且通过构建神经网络翻译模型,大大提升了翻译的准确度。

应当理解的是,本发明的应用不限于上述的举例,对本领域普通技术人员来说,可以根据上述说明加以改进或变换,所有这些改进和变换都应属于本发明所附权利要求的保护范围。

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