本技术涉及语音识别,尤其涉及一种语音识别方法、终端设备、产品、设备及存储介质。
背景技术:
1、自动语音识别(automatic speech recognition,以下简称asr)技术作为人机交互的重要方式,广泛应用于智能助手、在线客服、车载语音、字符生成等场景。现有的asr技术多采用在线方式部署,即终端将采集的音频数据以二进制流形式上传至云端服务器,并由云端服务器调用语音识别模型进行音频数据识别和处理,并将反馈结果发送至终端。
2、但是,由于以在线形式部署的asr技术在弱网环境(地铁、电梯、山区、海外漫游等)下,易由于网络带宽受限、数据传输速度下降、信号干扰等因素影响,导致终端采集的音频数据无法发送至云端服务器,和/或云端服务器无法将识别结果发送至终端,进而导致在线自动语音识别无法输出完整识别内容,降低了在线自动语音识别的运行可靠性。
技术实现思路
1、鉴于上述问题,本技术提供了一种语音识别方法、终端设备、产品、设备及存储介质,以实现提高在线自动语音识别运行可靠性的目的。具体方案如下:
2、本技术第一方面提供一种语音识别方法,应用于终端设备,包括:
3、对所述终端设备接收的音频,按照所述音频的音频流的接收先后顺序进行分片,获得所述音频的多个音频分片;
4、在当前网络处于弱网状态下,将未发送的所述音频分片进行第一压缩操作,并将经过压缩的所述音频分片发送至服务端,以使所述服务端在接收到所述音频分片的情况下对所述音频分片进行语音识别,并向所述终端设备发送所述音频分片的语音识别结果;
5、在到达第一超时检测时刻的情况下,对未接收到所述语音识别结果的所述音频分片执行多次重复发送;
6、在所述重复发送的执行次数达到预设上限,且未接收到所述音频分片的所述语音识别结果的情况下,将未接收到所述语音识别结果的所述音频分片确定为目标音频分片,基于所述音频流的接收先后顺序,从各所述音频分片中查找与所述目标音频分片相邻的相邻音频分片,并将所述目标音频分片和所述目标音频分片的所述相邻音频分片,输入部署于所述终端设备的预设上下文表征模型,获得所述目标音频分片的本地语音识别结果。
7、在一种可能的实现中,所述语音识别方法,还包括:
8、在所述重复发送的执行次数达到预设上限,且未接收到所述音频分片的所述语音识别结果的情况下,将所述目标音频分片发送至所述服务端;
9、在到达第二超时检测时刻,且接收到所述服务端发送的所述目标音频分片的语音识别结果的情况下,将由所述预设上下文表征模型输出的所述目标音频分片的本地语音识别结果,更新为所述服务端发送的所述目标音频分片的语音识别结果。
10、在一种可能的实现中,在所述将未发送的所述音频分片进行第一压缩操作,并将经过压缩的所述音频分片发送至服务端之前,所述语音识别方法,还包括:
11、将各所述音频分片按照所述音频的音频流的接收先后顺序导入本地分片缓存队列;
12、基于对所述当前网络的当前心跳检测结果,确定所述当前网络的状态;
13、在所述当前网络不处于所述弱网状态的情况下,按照所述音频分片导入所述本地分片缓存队列的先后顺序,依次将所述本地分片缓存队列中未发送的所述音频分片发送至所述服务端,并获得所述服务端发送的各所述音频分片的所述语音识别结果;
14、在所述当前网络处于所述弱网状态的情况下,执行所述将未发送的所述音频分片进行第一压缩操作的操作步骤。
15、在一种可能的实现中,所述将未接收到所述语音识别结果的所述音频分片确定为目标音频分片,包括:
16、基于接收到的所述语音识别结果对应的音频分片标识,对所述本地分片缓存队列中与所述音频分片标识对应,且已发送的所述音频分片添加成功发送标签,以更新所述本地分片缓存队列;
17、将更新后的所述本地分片缓存队列未添加标签,且已发送所述音频分片标记为所述目标音频分片。
18、在一种可能的实现中,所述对未接收到所述语音识别结果的所述音频分片执行多次重复发送,包括:
19、对各次所述重复发送:
20、对所述当前网络进行再次心跳检测;
21、计算所述再次心跳检测的检测结果与非弱网状态的网络质量参数中,各类型参数的第一差值,并对各所述第一差值进行加权求和,获得第一差异量;计算所述当前心跳检测结果与所述非弱网状态的网络质量参数中,各类型参数的第二差值,并对各所述第二差值进行加权求和,获得第二差异量;
22、在所述第一差异量不大于第二差异量的情况下,将经过所述第一压缩操作的所述音频分片发送至所述服务端;
23、在所述第一差异量大于第二差异量的情况下,将经过第二压缩操作的所述音频分片发送至所述服务端,所述第二压缩操作的压缩率大于所述第一压缩操作的压缩率。
24、在一种可能的实现中,所述基于对所述当前网络的当前心跳检测结果,确定所述当前网络的状态,包括:
25、在当前检测时刻向所述服务端发送多个心跳包,并记录包括各所述心跳包的往返时间、丢包率和瞬时带宽的所述当前心跳检测结果;
26、对所述往返时间、所述丢包率和所述瞬时带宽进行加权求和,获得所述当前网络的状态评分;
27、基于所述状态评分与预设评分阈值的比对结果,确定所述当前网络的状态。
28、本技术第二方面提供一种语音识别终端设备,包括:
29、音频分片模块,用于对所述终端设备接收的音频,按照所述音频的音频流的接收先后顺序进行分片,获得所述音频的多个音频分片;
30、信息收发模块,用于在当前网络处于弱网状态下,将未发送的所述音频分片进行第一压缩操作,并将经过压缩的所述音频分片发送至服务端,以使所述服务端在接收到所述音频分片的情况下对所述音频分片进行语音识别,并向所述终端设备发送所述音频分片的语音识别结果;
31、第一信息重发模块,用于在到达第一超时检测时刻的情况下,对未接收到所述语音识别结果的所述音频分片执行多次重复发送;
32、本地识别模块,用于在所述重复发送的执行次数达到预设上限,且未接收到所述音频分片的所述语音识别结果的情况下,将未接收到所述语音识别结果的所述音频分片确定为目标音频分片,基于所述音频流的接收先后顺序,从各所述音频分片中查找与所述目标音频分片相邻的相邻音频分片,并将所述目标音频分片和所述目标音频分片的所述相邻音频分片,输入部署于所述终端设备的预设上下文表征模型,获得所述目标音频分片的本地语音识别结果。
33、在一种可能的实现中,所述语音识别终端设备,还包括:
34、第二信息重发模块,用于在所述重复发送的执行次数达到预设上限,且未接收到所述音频分片的所述语音识别结果的情况下,将所述目标音频分片发送至所述服务端;
35、在到达第二超时检测时刻,且接收到所述服务端发送的所述目标音频分片的语音识别结果的情况下,将由所述预设上下文表征模型输出的所述目标音频分片的本地语音识别结果,更新为所述服务端发送的所述目标音频分片的语音识别结果。
36、在一种可能的实现中,所述语音识别终端设备,还包括:
37、缓存与检测模块,用于在所述将未发送的所述音频分片进行第一压缩操作,并将经过压缩的所述音频分片发送至服务端之前,将各所述音频分片按照所述音频的音频流的接收先后顺序导入本地分片缓存队列;
38、基于对所述当前网络的当前心跳检测结果,确定所述当前网络的状态;
39、在所述当前网络不处于所述弱网状态的情况下,按照所述音频分片导入所述本地分片缓存队列的先后顺序,依次将所述本地分片缓存队列中未发送的所述音频分片发送至所述服务端,并获得所述服务端发送的各所述音频分片的所述语音识别结果;
40、在所述当前网络处于所述弱网状态的情况下,执行所述将未发送的所述音频分片进行第一压缩操作的操作步骤。
41、在一种可能的实现中,所述本地识别模块在将未接收到所述语音识别结果的所述音频分片确定为目标音频分片时被设置为:
42、基于接收到的所述语音识别结果对应的音频分片标识,对所述本地分片缓存队列中与所述音频分片标识对应,且已发送的所述音频分片添加成功发送标签,以更新所述本地分片缓存队列;
43、将更新后的所述本地分片缓存队列未添加标签,且已发送所述音频分片标记为所述目标音频分片。
44、在一种可能的实现中,所述第一信息重发模块在对未接收到所述语音识别结果的所述音频分片执行多次重复发送时被设置为:
45、对各次所述重复发送:
46、对所述当前网络进行再次心跳检测;
47、计算所述再次心跳检测的检测结果与非弱网状态的网络质量参数中,各类型参数的第一差值,并对各所述第一差值进行加权求和,获得第一差异量;计算所述当前心跳检测结果与所述非弱网状态的网络质量参数中,各类型参数的第二差值,并对各所述第二差值进行加权求和,获得第二差异量;
48、在所述第一差异量不大于第二差异量的情况下,将经过所述第一压缩操作的所述音频分片发送至所述服务端;
49、在所述第一差异量大于第二差异量的情况下,将经过第二压缩操作的所述音频分片发送至所述服务端,所述第二压缩操作的压缩率大于所述第一压缩操作的压缩率。
50、在一种可能的实现中,所述缓存与检测模块在基于对所述当前网络的当前心跳检测结果,确定所述当前网络的状态时被设置为:
51、在当前检测时刻向所述服务端发送多个心跳包,并记录包括各所述心跳包的往返时间、丢包率和瞬时带宽的所述当前心跳检测结果;
52、对所述往返时间、所述丢包率和所述瞬时带宽进行加权求和,获得所述当前网络的状态评分;
53、基于所述状态评分与预设评分阈值的比对结果,确定所述当前网络的状态。
54、本技术第三方面提供一种计算机程序产品,包括计算机可读指令,当所述计算机可读指令在电子设备上运行时,使得所述电子设备实现上述第一方面或第一方面任一实现方式的语音识别方法。
55、本技术第四方面提供一种电子设备,包括至少一个处理器和与所述处理器连接的存储器,其中:
56、所述存储器用于存储计算机程序;
57、所述处理器用于执行所述计算机程序,以使所述电子设备能够实现上述第一方面或第一方面任一实现方式的语音识别方法。
58、本技术第五方面提供一种计算机存储介质,所述存储介质承载有一个或多个计算机程序,当所述一个或多个计算机程序被电子设备执行时,能够使所述电子设备上述第一方面或第一方面任一实现方式的语音识别方法。
59、借由上述技术方案,本技术提供的一种语音识别方法、终端设备、产品、设备及存储介质,通过配置在当前网络处于弱网状态下,将音频未发送的音频分片进行第一压缩操作,并将经过压缩的音频分片发送至服务端,以使服务端在接收到音频分片的情况下对音频分片进行语音识别,并向终端设备发送音频分片的语音识别结果,从而通过降低传输数据量的方式减少弱网状态对数据传输的影响程度,提高获得的音频分片的语音识别结果的成功率和精度。随后,通过配置在到达第一超时检测时刻的情况下,对未接收到语音识别结果的音频分片执行多次重复发送,从而避免等待陷入死循环,同时提高音频分片的成功发送几率,进而提高了在线自动语音识别的运行可靠性。随后,通过配置在重复发送的执行次数达到预设上限,且未接收到音频分片的语音识别结果的情况下,将未接收到语音识别结果的音频分片确定为目标音频分片,基于音频流的接收先后顺序,从各音频分片中查找与目标音频分片相邻的相邻音频分片,并将目标音频分片和目标音频分片的音频分片,输入部署于终端设备的预设上下文表征模型,获得目标音频分片的本地语音识别结果,以使预设上下文表征模型基于相邻音频分片中的上下文信息对相邻的音频分片进行准确的音频识别,从而提高了获得的本地语音识别结果的精度,并且在用户无感状态下避免了无法输出或错误输出最终的识别结果的风险,提高了在线自动语音识别的运行可靠性。