发明内容
本发明实施例提供一种语音识别网络延时优化方法及装置,用于至少解决上述技术问题之一。
第一方面,本发明实施例提供一种语音识别网络延时优化方法,包括:
对当前收录到的语音信号进行语音处理,以得到语音识别数据并输入至缓存器;
从所述缓存器中获取预设时长的语音识别数据,所述预设时长具有初始时长值;
对所述预设时长的语音识别数据进行解码处理,以得到相应的解码后的语音识别数据;
解析所述解码后的语音识别数据得到语义解析结果,并判断所述语义解析结果是否能够表达完整语义;
当判断所述语义解析结果能够表达完整语义时,则输出所述语义解析结果。
第二方面,本发明实施例提供一种语音识别网络延时优化装置,
语音处理模块,用于对当前收录到的语音信号进行语音处理,以得到语音识别数据并输入至缓存器;
数据获取模块,用于从所述缓存器中获取预设时长的语音识别数据,所述预设时长具有初始时长值;
解码模块,用于对所述预设时长的语音识别数据进行解码处理,以得到相应的解码后的语音识别数据;
解析判断模块,用于解析所述解码后的语音识别数据得到语义解析结果,并判断所述语义解析结果是否能够表达完整语义;
输出模块,用于当判断所述语义解析结果能够表达完整语义时,输出所述语义解析结果。
第三方面,本发明实施例提供一种存储介质,所述存储介质中存储有一个或多个包括执行指令的程序,所述执行指令能够被电子设备(包括但不限于计算机,服务器,或者网络设备等)读取并执行,以用于执行本发明上述任一项语音识别网络延时优化方法。
第四方面,提供一种电子设备,其包括:至少一个处理器,以及与所述至少一个处理器通信连接的存储器,其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行本发明上述任一项语音识别网络延时优化方法。
第五方面,本发明实施例还提供一种计算机程序产品,所述计算机程序产品包括存储在存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,使所述计算机执行上述任一项语音识别网络延时优化方法。
本发明实施例的语音识别网络延时优化方法及装置,可以边说话就边解码,而不是像以前一样,要等到这句话结束后才能够进行解码,达到一个既快又好的效果。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
本发明可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、元件、数据结构等等。也可以在分布式计算环境中实践本发明,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
在本发明中,“模块”、“装置”、“系统”等指应用于计算机的相关实体,如硬件、硬件和软件的组合、软件或执行中的软件等。详细地说,例如,元件可以、但不限于是运行于处理器的过程、处理器、对象、可执行元件、执行线程、程序和/或计算机。还有,运行于服务器上的应用程序或脚本程序、服务器都可以是元件。一个或多个元件可在执行的过程和/或线程中,并且元件可以在一台计算机上本地化和/或分布在两台或多台计算机之间,并可以由各种计算机可读介质运行。元件还可以根据具有一个或多个数据包的信号,例如,来自一个与本地系统、分布式系统中另一元件交互的,和/或在因特网的网络通过信号与其它系统交互的数据的信号通过本地和/或远程过程来进行通信。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”,不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本发明实施例的语音识别网络延时优化方法可以应用于任何配置了语音功能的终端设备,例如,智能手机、平板电脑、智能家居等终端设备,本发明对此不作限制。从而能够使得用户在使用这些终端设备的过程中获得更及时准确的响应,提升用户体验。
如图1所示,本发明的实施例提供一种语音识别网络延时优化方法,包括:
S11、对当前收录到的语音信号进行语音处理,以得到语音识别数据并输入至缓存器。
示例性地,通过麦克风采集用户说话的声音,并将采集到的模拟信号处理成数字信号并存储至缓存器。例如,用户通过麦克风说出了“今天天”(“今天天气怎么样”的一部分),则麦克风将采集到的“今天天”的模拟信号转化为对应的数字信号并进行编码后存储至缓存器。
S12、从所述缓存器中获取预设时长的语音识别数据,所述预设时长具有初始时长值。示例性地,按照预设时长逐段从缓存器中获取语音识别数据,预设时长的初始值可以设定为400ms。
S13、对所述预设时长的语音识别数据进行解码处理,以得到相应的解码后的语音识别数据。
S14、解析所述解码后的语音识别数据得到语义解析结果,并判断所述语义解析结果是否能够表达完整语义。
示例性地,当在预定时长为400ms的情况下解析之后得到的解析结果为“今天天”时,表明不能够表达完整语义,当解析结果为“今天”或者“今天天气”时,则能够表达完整语义。
S15、当判断所述语义解析结果能够表达完整语义时,则输出所述语义解析结果。
示例性地,当在预定时长为400ms的情况下解析之后得到的解析结果为“今天”或者“今天天气”,则显然能够表达完整语义,则可以将此时的解析结果用于输出,从而达到了边说话,边识别的效果。当用户说完一整句话时,这一整句话的前半部分已经被识别完成,只需要识别最近时刻说出的内容,减少了自用户说话完毕到完全识别用户说话内容之间这段时间需要语音识别处理的数据量,缩短了基于语音识别对用户进行响应的时间,提升了用户体验。
本发明实施例的语音识别网络延时优化方法,可以边说话就边解码,而不是像以前一样,要等到这句话结束后才能够进行解码,达到一个既快又好的效果。
在一些实施例中,当判断所述语义解析结果不能够表达完整语义时,为所述预设时长配置新的时长值以用于再次进行语音识别。
示例性地,如图2所示,在一些实施例中,当判断所述语义解析结果不能够表达完整语义时,为所述预设时长配置新的时长值以用于再次进行语音识别包括:
S21、当判断所述语义解析结果不能够表达完整语义时,进一步判断所述语义解析结果是存在语义残缺还是存在语义溢出。示例性地,进一步判断解析结果是“今天天”还是“今天天气怎”,如果解析结果是“今天天”则表明存在语义残缺,如果解析结果是“今天天气怎”则表示存在语义溢出。
S22、如果是存在语义残缺,则为所述预设时长配置新的时长值以用于再次进行语义识别(具体地,重复执行步骤S11-S14),所述新的时长值大于所述预设时长的当前值。
示例性的,当判定存在语义残缺时,为预设时长配置更长的时长值,以获取更多的语音数据信息从而确保获取完整的语义,例如,当预设时长值为400ms时,解析结果为“今天天”存在语义残缺,则将预设时长值配置为500ms,从而解析结果变为“今天天气”,便解决了所存在的语义残缺的情况。
S23、如果是存在语义溢出,则为所述预设时长配置新的时长值以用于再次进行语义识别(具体地,重复执行步骤S11-S14),所述新的时长值小于所述预设时长的当前值。
示例性的,当判定存在语义溢出时,为预设时长配置较短的时长值,以获取较少的语音数据信息从而确保获取完整的语义,例如,当预设时长值为400ms时,解析结果为“今天天气怎”存在语义残缺,则将预设时长值配置为300ms,从而解析结果变为“今天天气”,便解决了所存在的语义溢出的情况。
如图3所示,在一些实施例中,在所述对当前收录到的语音信号进行语音处理,以得到语音识别数据并输入至缓存器之前还包括:
S01、实时检测是否收录到完整语句;
S02、当检测到已经收录到完整语句时,根据收录到的所述完整语句进行语义解析并输出语义解析结果。
本实施例中,可以防止当采用步骤S11-S15中的方法步骤进行实时语音识别的过程中发生无法正常实时识别的情况,并且直到已经完整收录了用户的说话内容,此时就可以直接采用基于所收录到的完整语句进行语义解析。从而避免了极端情况下,无法为用户提供语义识别服务的情况的发生。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作合并,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
如图4所示,为本发明的语音识别网络延时优化装置的一实施例的结构原理图,包括:缓存器100、预判器200、解码器300和语义识别器400。其中,语音处理完的数据进入到缓存器100,预判器200由100ms为单位的几个小段分割器组成。首先,给一个初始值作为分段的标准加权值,比如2,代表2个100ms作为一段数据送入解码器300,然后上传至语义识别器,语义识别器400判断是否是一个完整的语义,比如,如果是“天气怎么样”,就继续按200ms这样一个加权值做分隔数据。如果不是一个完整语义只是比如,“天气怎”或“天气怎么样又变”,识别器反馈一个新的加权值给预判器,比如3或1,加长或剪短这个分割加权值。
这样动态完成,说话、编码、识别分段并行。既不影响识别精度,又良好的解决了网络延时的问题,用户体验更好。
如图5所示,本发明的实施例还提供一种语音识别网络延时优化装置500,包括:
语音处理模块510,用于对当前收录到的语音信号进行语音处理,以得到语音识别数据并输入至缓存器;
数据获取模块520,用于从所述缓存器中获取预设时长的语音识别数据,所述预设时长具有初始时长值;
解码模块530,用于对所述预设时长的语音识别数据进行解码处理,以得到相应的解码后的语音识别数据;
解析判断模块540,用于解析所述解码后的语音识别数据得到语义解析结果,并判断所述语义解析结果是否能够表达完整语义;
输出模块550,用于当判断所述语义解析结果能够表达完整语义时,输出所述语义解析结果。
本发明实施例的语音识别网络延时优化装置,可以边说话就边解码,而不是像以前一样,要等到这句话结束后才能够进行解码,达到一个既快又好的效果。
如图6所示,在一些实施例中,本发明的语音识别网络延时优化装置500还包括:时长配置模块560,用于当判断所述语义解析结果不能够表达完整语义时,为所述预设时长配置新的时长值以用于再次进行语音识别。
如图7所示,在一些实施例中,时长配置模块560包括:
不完整语义类型判断单元561,用于当判断所述语义解析结果不能够表达完整语义时,进一步判断所述语义解析结果是存在语义残缺还是存在语义溢出;
第一时长配置单元562,用于当存在语义残缺时,则为所述预设时长配置新的时长值以用于再次进行语义识别,所述新的时长值大于所述预设时长的当前值;
第二时长配置单元563,用于当存在语义溢出时,则为所述预设时长配置新的时长值以用于再次进行语义识别,所述新的时长值小于所述预设时长的当前值。
如图8所示,在一些实施例中,本发明的语音识别网络延时优化装置500还包括:
检测模块501,用于在所述对当前收录到的语音信号进行语音处理,以得到语音识别数据并输入至缓存器之前,实时检测是否收录到完整语句;
解析输出模块502,用于当检测已收录到完整语句时,根据收录到的所述完整语句进行语义解析并输出语义解析结果。
在一些实施例中,本发明实施例提供一种非易失性计算机可读存储介质,所述存储介质中存储有一个或多个包括执行指令的程序,所述执行指令能够被电子设备(包括但不限于计算机,服务器,或者网络设备等)读取并执行,以用于执行本发明上述任一项语音识别网络延时优化方法。
在一些实施例中,本发明实施例还提供一种计算机程序产品,所述计算机程序产品包括存储在非易失性计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,使所述计算机执行上述任一项语音识别网络延时优化方法。
在一些实施例中,本发明实施例还提供一种电子设备,其包括:至少一个处理器,以及与所述至少一个处理器通信连接的存储器,其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行语音识别网络延时优化方法。
在一些实施例中,本发明实施例还提供一种存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时语音识别网络延时优化方法。
上述本发明实施例的语音识别网络延时优化装置可用于执行本发明实施例的语音识别网络延时优化方法,并相应的达到上述本发明实施例的实现语音识别网络延时优化方法所达到的技术效果,这里不再赘述。本发明实施例中可以通过硬件处理器(hardwareprocessor)来实现相关功能模块。
图9是本申请另一实施例提供的执行语音识别网络延时优化方法的电子设备的硬件结构示意图,如图9所示,该设备包括:
一个或多个处理器910以及存储器920,图9中以一个处理器910为例。
执行语音识别网络延时优化方法的设备还可以包括:输入装置930和输出装置940。
处理器910、存储器920、输入装置930和输出装置940可以通过总线或者其他方式连接,图9中以通过总线连接为例。
存储器920作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块,如本申请实施例中的语音识别网络延时优化方法对应的程序指令/模块。处理器910通过运行存储在存储器920中的非易失性软件程序、指令以及模块,从而执行服务器的各种功能应用以及数据处理,即实现上述方法实施例语音识别网络延时优化方法。
存储器920可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储根据语音识别网络延时优化装置的使用所创建的数据等。此外,存储器920可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实施例中,存储器920可选包括相对于处理器910远程设置的存储器,这些远程存储器可以通过网络连接至语音识别网络延时优化装置。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
输入装置930可接收输入的数字或字符信息,以及产生与语音识别网络延时优化装置的用户设置以及功能控制有关的信号。输出装置940可包括显示屏等显示设备。
所述一个或者多个模块存储在所述存储器920中,当被所述一个或者多个处理器910执行时,执行上述任意方法实施例中的语音识别网络延时优化方法。
上述产品可执行本申请实施例所提供的方法,具备执行方法相应的功能模块和有益效果。未在本实施例中详尽描述的技术细节,可参见本申请实施例所提供的方法。
本申请实施例的电子设备以多种形式存在,包括但不限于:
(1)移动通信设备:这类设备的特点是具备移动通信功能,并且以提供话音、数据通信为主要目标。这类终端包括:智能手机(例如iPhone)、多媒体手机、功能性手机,以及低端手机等。
(2)超移动个人计算机设备:这类设备属于个人计算机的范畴,有计算和处理功能,一般也具备移动上网特性。这类终端包括:PDA、MID和UMPC设备等,例如iPad。
(3)便携式娱乐设备:这类设备可以显示和播放多媒体内容。该类设备包括:音频、视频播放器(例如iPod),掌上游戏机,电子书,以及智能玩具和便携式车载导航设备。
(4)服务器:提供计算服务的设备,服务器的构成包括处理器、硬盘、内存、系统总线等,服务器和通用的计算机架构类似,但是由于需要提供高可靠的服务,因此在处理能力、稳定性、可靠性、安全性、可扩展性、可管理性等方面要求较高。
(5)其他具有数据交互功能的电子装置。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对相关技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。