语音检测方法、装置和存储介质与流程



1.本技术涉及人工智能技术领域,尤其涉及一种语音检测方法、装置和存储介质。


背景技术:



2.人工智能(artificial intelligence,ai)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。也就是说,人工智能研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
3.语音检测为ai的一个重要领域,随着语音唤醒、语音识别等技术越来越广泛地被应用到生活中,语音检测作为其必要的前端处理而被重视。语音检测的作用是检测出当前环境中是否有语音存在,且定位出语音的起始及结束位置,从而将语音片段从噪声中分离出来并送到后端做语音识别、唤醒等处理。目前缺乏能够准确定位语音起始及结束位置的语音检测模型,尤其是语音结束位置,很容易受到语音停顿等的影响,导致错误判断的风险,亟需更高效、更准确的语音检测方法。


技术实现要素:



4.有鉴于此,提出了一种语音检测方法、装置和存储介质。
5.第一方面,本技术的实施例提供了一种语音检测方法,该方法包括:根据第一文本符号和音频信号序列中的第一音频信号,确定第二文本符号,所述第一文本符号的初始值为空字符,所述第二文本符号与所述第一音频信号的内容相对应;根据所述第一文本符号,确定所述第二文本符号的语义是否到达后端点,所述后端点表示音频信号序列中的语音结束;在所述第二文本符号的语义未到达后端点的情况下,以所述第二文本符号为新的第一文本符号,以所述音频信号序列中、所述第一音频信号之后的音频信号为新的第一音频信号,重复执行根据第一文本符号和音频信号序列中的第一音频信号,确定第二文本符号以及之后的步骤。
6.根据本技术实施例,通过根据第一文本符号和音频信号序列的第一音频信号,确定第二文本符号,根据所述第一文本符号,确定所述第二文本符号的语义是否到达后端点,可以实现根据语义判断文本符号是否到达后端点,避免用户说话卡顿时提前结束收音,防止误判,使得对于后端点的检测更加准确,提升了用户的体验。通过在所述第二文本符号的语义未到达后端点的情况下,以所述第二文本符号为新的第一文本符号,以所述音频信号序列中、所述第一音频信号之后的音频信号为新的第一音频信号,重复执行根据第一文本符号和音频信号序列中的第一音频信号,确定第二文本符号以及之后的步骤,可以实现音频的后端点检测无需依赖复杂的、人工设定的多模型决策过程,语音检测方法更加灵活,也提高了语音检测方法的准确率。
7.根据第一方面,在所述语音检测方法的第一种可能的实现方式中,该方法还包括:依次检测音频信号序列中的各音频信号所包含的音频帧是否达到前端点,所述前端点表示
音频信号序列中语音开始;在检测到第一个达到前端点的音频帧时,将该音频帧所在的音频信号确定为所述第一音频信号,停止检测。
8.根据本技术实施例,通过依次检测音频信号序列中的各音频信号所包含的音频帧是否达到前端点,在检测到第一个达到前端点的音频帧时,将该音频帧所在的第一音频信号确定为所述第一音频信号,停止检测,可以在实现检测后端点的基础上,还可以检测音频的前端点,从而能够更精准地判定人声区间,在检测到达到前端点的音频信号时,停止检测,还可以降低相关的计算量,节省资源。
9.根据第一方面的第一种可能的实现方式,在所述语音检测方法的第二种可能的实现方式中,该方法用于目标检测模型,所述目标检测模型包括语音行为检测模块、关联网络模块、语义端点检测模块、编码器模块和预测网络模块,所述编码器模块用于得到音频信号序列中的音频信号所包含的音频帧的第一特征向量;所述语音行为检测模块用于根据所述第一特征向量确定音频信号序列中的各音频信号所包含的音频帧是否达到前端点;所述预测网络模块用于得到第一文本符号的第二特征向量;所述关联网络模块用于根据所述第一特征向量和所述第二特征向量,得到所述第二文本符号;所述语义端点检测模块用于根据所述第二特征向量确定所述第二文本符号的语义是否到达后端点。
10.根据本技术实施例,通过目标检测模型包括语音行为检测模块、关联网络模块、语义端点检测模块、编码器模块和预测网络模块,可以实现将vad模型和asr模型整合在一个模型中,实现基于语义检测后端点的同时,还能检测前端点,大幅度简化了模型数量和部署流程,节省了大量的资源,基于语义检测后端点也提高了语音检测的准确度。
11.根据第一方面的第二种可能的实现方式,在所述语音检测方法的第三种可能的实现方式中,该方法还包括:对所述预测网络模块和所述语义端点检测模块进行预训练;对包含语音行为检测模块、关联网络模块、编码器模块和预训练后的预测网络模块和预训练后的语义端点检测模块的目标检测模型进行训练,得到训练后的目标检测模型。
12.根据本技术实施例,通过对所述预测网络模块和所述语义端点检测模块进行预训练,对包含语音行为检测模块、关联网络模块、编码器模块和预训练后的预测网络模块和预训练后的语义端点检测模块的目标检测模块进行训练,得到训练后的目标检测模块,可以使得训练过程更有针对性,使得基于语义判断的后端点更加精确,通过先进行预训练,还可以使得后续训练模型可以得到更好的训练效果,使得训练出的目标检测模型的预测精度更高。
13.根据第一方面的第二种可能的实现方式,在所述语音检测方法的第四种可能的实现方式中,对所述预测网络模块和所述语义端点检测模块进行预训练,包括:将文本样本中的前一文本符号输入预测网络模块,所述预测网络模块根据前一文本符号的特征向量预测得到当前文本符号;将当前文本符号输入语义端点检测模块,确定当前文本符号的语义是否到达后端点;根据当前文本符号的标注计算预测网络模块的第一损失值,以及根据当前文本符号是否到达后端点的标注计算语义端点检测模块的第二损失值,根据所述第一损失值和所述第二损失值对预测网络模块和语义端点检测模块进行参数调整。
14.根据本技术实施例,通过将文本样本中的前一文本符号输入预测网络模块,所述预测网络模块根据前一文本符号的特征向量预测得到当前文本符号,将当前文本符号输入语义端点检测模块,确定当前文本符号的语义是否到达后端点,根据当前文本符号的标注
计算预测网络模块的第一损失值,以及根据当前文本符号是否到达后端点的标注计算语义端点检测模块的第二损失值,根据所述第一损失值和所述第二损失值对预测网络模块和语义端点检测模块进行参数调整,可以实现在预训练阶段更有针对性地训练模型基于语义检测后端点的功能,进而提高了模型进行语音检测的准确度,在预训练阶段通过使用易获得的文本样本进行训练,无需使用音频样本,可以节省相关资源,同时还可以进一步提高模型基于语义进行语音检测的准确度。
15.根据第一方面的第二种可能的实现方式,在所述语音检测方法的第五种可能的实现方式中,所述语音行为检测模块在根据所述第一特征向量确定音频信号序列中的各音频信号所包含的音频帧达到前端点时,停止运行。
16.根据本技术实施例,可以实现在确定前端点后暂停语音行为检测模块的运行,以节省资源。
17.第二方面,本技术的实施例提供了一种语音检测装置,该装置包括:第一确定模块,用于根据第一文本符号和音频信号序列中的第一音频信号,确定第二文本符号,所述第一文本符号的初始值为空字符,所述第二文本符号与所述第一音频信号的内容相对应;第二确定模块,用于根据所述第一文本符号,确定所述第二文本符号的语义是否到达后端点,所述后端点表示音频信号序列中的语音结束;第三确定模块,用于在所述第二文本符号的语义未到达后端点的情况下,以所述第二文本符号为新的第一文本符号,以所述音频信号序列中、所述第一音频信号之后的音频信号为新的第一音频信号,重复执行根据第一文本符号和音频信号序列中的第一音频信号,确定第二文本符号以及之后的步骤。
18.根据第二方面,在所述语音检测装置的第一种可能的实现方式中,该装置还包括:检测模块,用于依次检测音频信号序列中的各音频信号所包含的音频帧是否达到前端点,所述前端点表示音频信号序列中语音开始;第四确定模块,用于在检测到第一个达到前端点的音频帧时,将该音频帧所在的音频信号确定为所述第一音频信号,停止检测。
19.根据第二方面的第一种可能的实现方式,在所述语音检测装置的第二种可能的实现方式中,该装置用于目标检测模型,所述目标检测模型包括语音行为检测模块、关联网络模块、语义端点检测模块、编码器模块和预测网络模块,所述编码器模块用于得到音频信号序列中的音频信号所包含的音频帧的第一特征向量;所述语音行为检测模块用于根据所述第一特征向量确定音频信号序列中的各音频信号所包含的音频帧是否达到前端点;所述预测网络模块用于得到第一文本符号的第二特征向量;所述关联网络模块用于根据所述第一特征向量和所述第二特征向量,得到所述第二文本符号;所述语义端点检测模块用于根据所述第二特征向量确定所述第二文本符号的语义是否到达后端点。
20.根据第二方面的第二种可能的实现方式,在所述语音检测装置的第三种可能的实现方式中,该装置还包括:预训练模块,用于对所述预测网络模块和所述语义端点检测模块进行预训练;训练模块,用于对包含语音行为检测模块、关联网络模块、编码器模块和预训练后的预测网络模块和预训练后的语义端点检测模块的目标检测模型进行训练,得到训练后的目标检测模型。
21.根据第二方面的第二种可能的实现方式,在所述语音检测装置的第四种可能的实现方式中,预训练模块用于:将文本样本中的前一文本符号输入预测网络模块,所述预测网络模块根据前一文本符号的特征向量预测得到当前文本符号;将当前文本符号输入语义端
点检测模块,确定当前文本符号的语义是否到达后端点;根据当前文本符号的标注计算预测网络模块的第一损失值,以及根据当前文本符号是否到达后端点的标注计算语义端点检测模块的第二损失值,根据所述第一损失值和所述第二损失值对预测网络模块和语义端点检测模块进行参数调整。
22.根据第二方面的第二种可能的实现方式,在所述语音检测装置的第五种可能的实现方式中,所述语音行为检测模块在根据所述第一特征向量确定音频信号序列中的各音频信号所包含的音频帧达到前端点时,停止运行。
23.第三方面,本技术的实施例提供了一种语音检测装置,该装置包括:处理器;用于存储处理器可执行指令的存储器;其中,所述处理器被配置为执行所述指令时实现上述第一方面或者第一方面的多种可能的实现方式中的一种或几种的语音检测方法。
24.第四方面,本技术的实施例提供了一种非易失性计算机可读存储介质,其上存储有计算机程序指令,所述计算机程序指令被处理器执行时实现上述第一方面或者第一方面的多种可能的实现方式中的一种或几种的语音检测方法。
25.第五方面,本技术的实施例提供了一种终端设备,该终端设备可以执行上述第一方面或者第一方面的多种可能的实现方式中的一种或几种的语音检测方法。
26.第六方面,本技术的实施例提供了一种计算机程序产品,包括计算机可读代码,或者承载有计算机可读代码的非易失性计算机可读存储介质,当所述计算机可读代码在电子设备中运行时,所述电子设备中的处理器执行上述第一方面或者第一方面的多种可能的实现方式中的一种或几种的语音检测方法。
27.本技术的这些和其他方面在以下(多个)实施例的描述中会更加简明易懂。
附图说明
28.包含在说明书中并且构成说明书的一部分的附图与说明书一起示出了本技术的示例性实施例、特征和方面,并且用于解释本技术的原理。
29.图1示出根据本技术一实施例的语音检测方法的实施环境的示意图。
30.图2示出根据本技术一实施例的预训练阶段的模型的训练方法的流程图。
31.图3示出根据本技术一实施例的预训练阶段的输入输出序列的示意图。
32.图4示出根据本技术一实施例的整体训练阶段的模型的训练方法的流程图。
33.图5示出根据本技术一实施例的整体训练阶段的输入输出序列的示意图。
34.图6示出根据本技术一实施例的模型预测阶段的流程图。
35.图7示出根据本技术一实施例的语音检测方法的流程图。
36.图8示出根据本技术一实施例的语音检测方法的流程图。
37.图9示出根据本技术一实施例的语音检测方法的流程图。
38.图10示出根据本技术一实施例的语音检测方法的流程图。
39.图11示出根据本技术一实施例的语音检测装置的结构图。
40.图12示出根据本技术一实施例的终端设备的结构示意图。
41.图13示出根据本技术一实施例的电子设备的结构图。
具体实施方式
42.以下将参考附图详细说明本技术的各种示例性实施例、特征和方面。附图中相同的附图标记表示功能相同或相似的元件。尽管在附图中示出了实施例的各种方面,但是除非特别指出,不必按比例绘制附图。
43.在这里专用的词“示例性”意为“用作例子、实施例或说明性”。这里作为“示例性”所说明的任何实施例不必解释为优于或好于其它实施例。
44.另外,为了更好的说明本技术,在下文的具体实施方式中给出了众多的具体细节。本领域技术人员应当理解,没有某些具体细节,本技术同样可以实施。在一些实例中,对于本领域技术人员熟知的方法、手段、元件和电路未作详细描述,以便于凸显本技术的主旨。
45.现有技术中,通常语音行为检测(voice activity detection,vad)模型和自动语音识别(automatic speech recognition,asr)模型是独立的至少两个模型,导致模型间识别音频区间需要依赖于文本识别的结果,而且需要人工配置音频区间识别的规则,灵活性差、识别慢且判断的准确率较低,还要消耗大量的资源;现有技术中,还存在融合vad模型的后端点识别的asr模型,但是依赖于音频的训练数据的标注,且无法识别音频的前端点,在基于文本语义进行音频后端点识别时效果较差。
46.为了解决上述技术问题,本技术提供了一种语音检测方法,本技术实施例的语音检测方法能够实现基于识别出的文本的语义确定用户是否有继续说话的意图,判断无需人工设定规则,更加灵活,且能够更加精准地确定输入音频的后端点,防止误判提前结束收音,同时本技术实施例的方法还可以识别出输入音频的前端点,更精准地判断音频的区间,且简化了模型的数量和部署流程,节约了资源。
47.图1示出根据本技术一实施例的语音检测方法的实施环境的示意图。如图1所示,该实施环境可以包括终端设备和语音检测平台。
48.参见图1,终端设备可以是车载终端101、智能手机102、智能音箱103或者机器人104。当然,图1所示的几种终端设备仅是举例,终端设备也可以是其他支持语音检测功能的电子设备,例如上网本、平板电脑、笔记本电脑、可穿戴电子设备(如智能手环、智能手表等)、tv、虚拟现实设备、音响、电子墨水等等,本技术实施例对终端设备的类型不做限定。终端设备可以运行有支持语音检测的应用程序。该应用程序可以是导航应用、语音助手、智能问答应用等。示例性的,终端设备是用户使用的终端设备,终端设备运行的应用程序内登录有用户账号,该用户账号可以预先在语音检测平台中注册。终端设备可以通过无线连接的方式或有线连接的方式与语音检测平台相连,无线连接的方式是指可以通过wifi、蓝牙等无线连接方式与语音检测平台进行连接。
49.语音检测平台用于为支持语音检测的应用程序提供后台服务。例如,语音检测平台可以执行下述方法实施例,训练得到语音检测模型(例如下文中本技术实施例的目标检测模型),将模型发送给终端设备(例如,可以通过模型格式转换工具将模型从平台上导出,以部署在终端设备上),以便终端设备利用模型来进行语音检测。终端设备可利用模型准确识别出接收到的音频中的语音的前后端点,同时进行语音识别,实现语音控制等后续应用。
50.语音检测平台可以包括服务器201以及数据库202。服务器201可以是一台服务器,也可以是多台服务器组成的集。数据库202中可以用于存储训练数据,例如可以包含大量文本的训练数据、音频的训练数据等。服务器201可以访问数据库202,得到数据库202存储
的训练数据,通过训练数据训练得到模型。
51.本领域技术人员可以知晓,上述终端设备、服务器或者数据库的数量可以更多或更少。比如上述终端设备、服务器或者数据库可以仅为一个,或者上述为几十个或几百个,或者更多数量,此时虽图中未示出,还可以包括其他终端设备、其他服务器或者其他数据库。
52.以上示例性介绍了系统架构,以下示例性介绍基于上文提供的系统架构进行语音检测的方法流程。
53.语音检测的方法流程可以包括模型训练阶段以及模型预测阶段。以下,通过图2、4实施例,对模型训练阶段的方法流程进行介绍,通过图6实施例,对模型预测阶段的方法流程进行介绍。
54.对模型进行训练的过程可以包括预训练、整体训练两个阶段。
55.图2示出根据本技术一实施例的预训练阶段的模型的训练方法的流程图。如图2所示,该方法可以应用在电子设备,该电子设备可以为图1所示系统架构中的终端设备,也可以是图1所示系统架构中的语音检测平台,比如是服务器201。预训练阶段使用的训练数据可以是文本数据,文本数据可以包括文本以及表示文本中每个字(可以是文本符号)对应的语义是否完整的标注。预训练阶段的模型包括预测网络模块和语义端点检测模块,其中,预测网络模块可以是十二层的transformer的结构,语义端点检测模块可以是两层的长短期记忆网络(long short-term memory,lstm)结构或能够检测后端点的其他结构,预测网络模块和语义端点检测模块还可以是其他结构,本技术对此不作限制,y(u-1)可以表示输入的文本序列中的上一个文本符号,y(u)可以表示当前的文本符号,e(u)可以表示当前文本符号是否到达后端点,u可以表示文本符号的序号,其中,预测网络模块用于根据文本序列中上一个文本符号y(u-1)得到该文本符号对应的高维特征向量,并根据高维特征向量得到当前的文本符号y(u),语义端点检测模块用于确定当前文本符号y(u)是否到达句尾(即是否达到后端点)。
56.在预训练阶段,对于训练数据中的某一条文本序列,可以以文本序列中的上一个文本符号y(u-1)作为预测网络模块的输入,以文本序列的当前的文本符号y(u)作为预测网络模块的输出,以当前的文本符号y(u)是否到达后端点e(u)(例如,在到达后端点时,e(u)取值为1,否则为0)作为语义端点检测模块的输出,使得训练好的模型可以根据输入的前一个文本符号判断当前文本符号的语义是否到达句尾,即,当前文本符号y(u)是否是句子结束的最后一个文本符号,并使用交叉熵损失(cross-entropy loss)对预测网络模块的输出进行损失优化、使用二元交叉熵损失(binary cross-entropy loss)对语义端点检测模块的输出进行损失优化,直至预训练阶段的模型对应的损失优化数值收敛至预定数值,得到训练好的预训练阶段的模型。
57.预测网络模块和语义端点检测模块可以作为整体模型的一部分,通过在预训练阶段仅训练预测网络模块和语义端点检测模块这两部分模块,可以节省训练资源,针对性的进行训练可以使得最终的目标检测模型得到更好的训练效果。预训练阶段可以仅使用文本类型的训练数据,文本类型的数据可以通过购买或爬取的方式获得,本技术对此不作限制,由于文本类型的数据较易获得,通过文本类型的数据来进行预训练,可以更好的提高目标模型基于语义进行语音检测的准确度,同时也节省了预训练阶段的相关资源。
58.图3示出根据本技术一实施例的预训练阶段的输入输出序列的示意图。如图3所示,预测网络模块的输入序列中的每一个文本符号(如图3预测网络模块的输入序列中每一个方框内的文本符号)可以对应相应的y(u-1),预测网络模块的输出序列中的每一个文本符号(如图3预测网络模块的输出序列中每一个方框内的文本符号)可以对应相应的y(u),语义端点检测模块的输出序列中的每一个值(如图3语义端点检测模块的输出序列中每一个虚线框内的值)可以对应相应e(u)。
59.以图3为例,训练数据中的文本数据可以是“今天天气怎么样”,其对应的预测网络模块的输入序列可以包括“今”、“天”、“天”、“气”、“怎”、“么”这几个文本符号,可以输出对应的预测网络模块的输出序列“天”、“天”、“气”、“怎”、“么”、“样”,以及对应的语义端点检测模块的输出序列000001,例如,在预测网络模块输入的文本符号是“今”的情况下,对应的预测网络模块输出的文本符号可以是“天”,此时,语义端点检测模块输出的值可以是0,表示未到达句尾(e(u)为1时,表示到达句尾);在预测网络模块输入的文本符号是“么”的情况下,预测网络模块输出的文本符号可以是“样”,此时,语义端点检测模块输出的值可以是1,表示到达句尾,即该句终止,在预测网络模块输入的文本符号是“天”、“气”、“怎”的情况下同理。
60.在预训练阶段得到了训练好的预训练阶段的模型的情况下,可以将该训练好的模型与其他模块进行拼接,得到整体训练阶段的模型。
61.图4示出根据本技术一实施例的整体训练阶段的模型的训练方法的流程图。如图4所示,整体训练阶段使用的训练数据可以包括语音语料,语音语料中可以包括音频数据和该音频数据对应的文本数据,音频数据中可以包括音频和表示音频中每帧是否包含人声的标注,文本数据中可以包括文本以及表示文本中每个字(即每个文本符号)对应的语义是否完整(例如是不是一个完整句子的结尾)的标注,其中,文本数据的内容与人声的内容相对应。在预训练好的预测网络模块和语义端点检测模块的基础上,整体训练阶段的模型还包括了编码器模块、语音行为检测模块和关联网络模块,其中,编码器模块可以是六层的transformer结构,或能够提取音频的高维特征向量的其他结构,语音行为检测模块可以是一层的lstm结构,或能够检测前端点的其他结构,关联网络模块可以是一层的全连接网络结构,或能够预测下一文本符号的其他结构,编码器模块、语音行为检测模块和关联网络模块还可以是其他结构,本技术对此不作限制。x(t)可以表示当前帧的音频,v(t)可以表示当前帧的音频中是否包含人声,t可以表示音频帧的序号。其中,编码器模块用于根据输入的当前帧的音频x(t)得到该帧音频的高维特征向量,语音行为检测模块用于根据高维特征向量检测输入的x(t)中是否包含人声,关联网络模块用于根据编码器模块输出的音频的高维特征向量和预测网络模块输出的前一文本符号的高维特征向量,预测当前的文本符号y(u),其中在上文所述的预训练过程中,预测网络模块输出预测的当前文本符号,而在整体训练阶段,预测网络模块输出其中间结果,即前一文本符号的高维特征向量。
62.在整体训练阶段,对于训练数据中的某一段音频,可以以每一帧的音频x(t)作为编码器模块的输入,对于训练数据中音频对应的文本数据,可以以文本序列中上一个文本符号y(u-1)作为预测网络模块的输入,对应于这两个输入,可以以当前帧的音频是否包含人声v(t)(在包含人声时,v(t)取值为1,否则为0)作为语音行为检测模块的输出,以文本序列的当前文本符号y(u)作为关联网络模块的输出,以当前文本符号是否到达后端点e(u)作
为语义端点检测模块的输出,并使用二元交叉熵损失对语音行为检测模块的输出v(t)和语义端点检测模块的输出e(u)进行损失优化、使用转换器损失(transducer loss)对关联网络模块的输出y(u)进行损失优化,以解决音频帧的序号t与文本符号的序号u不对应的问题,通过进行损失优化直至整体训练阶段的模型对应的损失优化数值收敛至预定数值,可以得到训练好的目标检测模型。
63.图5示出根据本技术一实施例的整体训练阶段的输入输出序列的示意图。如图5所示,编码器模块输入音频序列中的每一帧音频可以对应相应的x(t),预测网络模块的输入序列可以参照图3中所示,关联网络模块的输出序列中的每一个文本符号(如图5关联网络模块的输出序列中每一个方框内的文本符号)可以对应相应的y(u),语义端点检测模块的输出序列中的每一个数值(如图5语义端点检测模块的输出序列中每一个虚线框内的值)可以对应相应的e(u),语音行为检测模块的输出序列中的每一个数值(如图5语音行为检测模块的输出序列中每一个虚线框内的值)可以对应相应的v(t),其中,每一个v(t)可以对应一个音频帧,每一个y(u)、e(u)可以对应一个文本符号,一个文本符号可以对应一个或多个音频帧,本技术对此不作限制。在一个文本符号对应多个音频帧的情况下,可根据多个x(t)和一个y(u-1)得到一个y(u),对应于一个文本符号的多个x(t)可以作为后文中的“音频信号”。
64.以图5为例,对于训练数据中某一段输入的音频和文本序列(文本序列如“今天天气怎么”),可以输出对应的关联网络模块的输出序列“今”、“天”、“天”、“气”、“怎”、“么”、“样”,对应的语义端点检测模块的输出序列0000001,以及对应的语音行为检测模块的输出序列00111110011110。其中,对于某一段音频(例如图5中编码器模块输入音频),输入的某一帧音频x(t)可以对应一个输出的y(u)(也就是预测的一个当前的文本符号,例如“今”),也可以是多个帧的音频x(t)对应一个输出的y(u),同理,输入的某一帧音频x(t)可以对应一个输出的e(u),也可以是多个帧的音频x(t)对应一个输出的e(u);输入的某一帧音频x(t),还可以对应一个输出的v(t),v(t)取值为1时表示该帧x(t)中包含人声,否则取值为0。其中,对于某一段文本序列中的预测网络模块的第一个输入y(u-1),可以是缺省值(例如空字符),可以根据该缺省值和对应的至少一个音频帧x(t),确定关联网络模块的第一个输出y(u)(例如图5中关联网络模块输出序列中的第一个文本字符“今”)。
65.训练好的目标检测模型在结构上融合了vad模型和asr模型,使得多个模型可以融合在一个模型中,其中关联网络模块、编码器模块和预测网络模块可以如asr模型中的转换器transducer结构,以识别音频中的文本,语音行为检测模块和语义端点检测模块可以分别作为vad模型用于检测音频的前端点和后端点,通过语义判断音频的前后端点,可以无需依赖复杂的、人工设定的多模型决策过程,同时,简化了模型数量和部署流程,节省了大量资源。
66.图6示出根据本技术一实施例的模型预测阶段的流程图。通过模型的预训练阶段和训练阶段,可以得到训练好的目标检测模型,该模型可以部署于终端设备,如图6所示,模型预测阶段的流程可以包括:
67.步骤s601,前端点检测阶段。
68.在前端点检测阶段,部署在终端设备上的目标检测模型默认开启,如图6(a)所示,此时,模型可以仅运行编码器模块和语音行为检测模块,以节省模型运行时的计算量,运行
的编码器模块和语音行为检测模块可以在终端设备的后台监听语音,在语音行为检测模块输出的v(t)取值为1时,表示到达前端点(即识别到当前音频帧中包含人声),可以进入下一阶段,即步骤s602中的后端点检测阶段。
69.其中,用户可以通过在终端设备中打开支持语音检测的应用程序,以开启模型,进入前端点检测阶段,还可以通过说唤醒词(例如“小艺小艺”),以开启模型,进入前端点检测阶段,本技术对此不作限制。
70.例如,在进入前端点检测阶段后,当用户说话时,模型的语音行为检测模块可以判断出用户正在说话(v(t)取值为1),开始收音,此时可以停止运行语音行为检测模块,以节省资源,并进入后端点检测阶段。在语音行为检测模块输出的v(t)取值为1时,语音行为检测模块可停止工作,以停止检测。可在检测用户的唤醒指令后,重新启动语音行为检测模块,以再次检测前端点。
71.步骤s602,后端点检测阶段。
72.在后端点检测阶段,如图6(b)所示,此时,模型可以仅运行编码器模块、预测网络模块、关联网络模块和语义端点检测模块,并停止运行语音行为检测模块,此时,编码器模块可以根据用户说话时输入的音频中的每一帧音频x(t)得到音频x(t)的高维特征向量,预测网络模块可以根据关联网络模块识别出的上一个文本符号y(u-1)得到文本符号y(u-1)的高维特征向量(其中,对于运行预测网络模块时的第一个输入的文本符号y(u-1),可以取缺省值,例如取空字符),关联网络模块可以根据音频x(t)的高维特征向量和文本符号y(u-1)的高维特征向量,识别出用户说话时对应的当前文本符号y(u),识别出的y(u)可以作为预测网络模块的下一次输入,即下一个y(u-1),根据输出的y(u)最终可以得到用户说话的音频内容对应的文本,用于后续操作(例如语言理解、对话控制等),语义端点检测模块可以根据文本符号y(u-1)的高维特征向量判断当前的文本符号y(u)是否从语义上到达了后端点(即判断此时句子语义是否完整,或者说,y(u)是否是表达完整语义的一句话的最后一个字),在语义端点检测模块输出的e(u)取值为1时,表示到达后端点(即判断出此时句子语义完整),则可以停止收音进入下一阶段(例如语言理解等阶段,本技术对此不作限制)。
73.例如,在进入后端点检测阶段后,当用户说话出现卡顿时,通过语义端点检测模块可以判断此时语义是否完整,在语义不完整的情况下,可以继续收音,直至语义完整或用户卡顿的时间超过预定时间,可以关闭收音,结束语音检测,由此,可以防止误判导致提前停止收音的情况,提高目标检测模型预测的准确度,同时提高用户的体验。
74.图7示出根据本技术一实施例的语音检测方法的流程图。该方法可用于终端设备,如图7所示,该方法包括:
75.步骤s701,根据第一文本符号和音频信号序列的第一音频信号,确定第二文本符号,所述第一文本符号的初始值为空字符,所述第二文本符号与所述第一音频信号的内容相对应;
76.步骤s702,根据所述第一文本符号,确定所述第二文本符号的语义是否到达后端点,所述后端点表示音频信号序列中的语音结束;
77.步骤s703,在所述第二文本符号的语义未到达后端点的情况下,以所述第二文本符号为新的第一文本符号,以所述音频信号序列中、所述第一音频信号之后的音频信号为新的第一音频信号,重复执行根据第一文本符号和音频信号序列中的第一音频信号,确定
第二文本符号以及之后的步骤。
78.根据本技术实施例,通过根据第一文本符号和音频信号序列的第一音频信号,确定第二文本符号,根据所述第一文本符号,确定所述第二文本符号的语义是否到达后端点,可以实现根据语义判断文本符号是否到达后端点,避免用户说话卡顿时提前结束收音,防止误判,使得对于后端点的检测更加准确,提升了用户的体验。通过在所述第二文本符号的语义未到达后端点的情况下,以所述第二文本符号为新的第一文本符号,以所述音频信号序列中、所述第一音频信号之后的音频信号为新的第一音频信号,重复执行根据第一文本符号和音频信号序列中的第一音频信号,确定第二文本符号以及之后的步骤,可以实现音频的后端点检测无需依赖复杂的、人工设定的多模型决策过程,语音检测方法更加灵活,也提高了语音检测方法的准确率。
79.其中,第一音频信号可以包括一个音频帧,还可以包括多个音频帧,第一音频信号的内容可以是用户说话的内容,语音结束可以是用户没有继续说话的意图,第一音频信号中的一个音频帧可以参照图6(b)中x(t),第一文本符号可以参照图6(b)中y(u-1),在预测第一个第二文本符号时,由于没有前一个文本符号,因此此时的第一文本符号可以是空字符(即初始值为空字符)。第二文本符号可以参照图6(b)中y(u),第二文本符号的语义是否到达后端点可以根据例如图6(b)中e(u)的取值确定,第二文本符号的语义未到达后端点可以包括用户说话卡顿的情况,在所述第二文本符号的语义到达后端点的情况下,可以停止收音,并进行后续操作(如语言理解、对话控制等),本技术对此不作限制。
80.步骤s701-s703的示例可参照图6中步骤s602。
81.图8示出根据本技术一实施例的语音检测方法的流程图。如图8所示,该方法还包括:
82.步骤s801,依次检测音频信号序列中的各音频信号所包含的音频帧是否达到前端点,所述前端点表示音频信号序列中语音开始;
83.步骤s802,在检测到第一个达到前端点的音频帧时,将该音频帧所在的音频信号确定为所述第一音频信号,停止检测。
84.根据本技术实施例,通过依次检测音频信号序列中的各音频信号所包含的音频帧是否达到前端点,在检测到第一个达到前端点的音频帧时,将该音频帧所在的第一音频信号确定为所述第一音频信号,停止检测,可以在实现检测后端点的基础上,还可以检测音频的前端点,从而能够更精准地判定人声区间,在检测到达到前端点的音频信号时,停止检测,还可以降低相关的计算量,节省资源。
85.其中,各音频帧中可以包括人声,也可以不包括人声,音频帧是否到达前端点可以根据例如图6(a)中v(t)的取值确定,语音开始可以是指用户开始说话。
86.步骤s801-s802的示例可参照图6中步骤s601。
87.在一种可能的实现方式中,该方法可用于目标检测模型,所述目标检测模型包括语音行为检测模块、关联网络模块、语义端点检测模块、编码器模块和预测网络模块,所述编码器模块用于得到音频信号序列中的音频信号所包含的音频帧的第一特征向量;所述语音行为检测模块用于根据所述第一特征向量确定音频信号序列中的各音频信号所包含的音频帧是否达到前端点;所述预测网络模块用于得到第一文本符号的第二特征向量;所述关联网络模块用于根据所述第一特征向量和所述第二特征向量,得到所述第二文本符号;
所述语义端点检测模块用于根据所述第二特征向量确定所述第二文本符号的语义是否到达后端点。
88.根据本技术实施例,通过目标检测模型包括语音行为检测模块、关联网络模块、语义端点检测模块、编码器模块和预测网络模块,可以实现将vad模型和asr模型整合在一个模型中,实现基于语义检测后端点的同时,还能检测前端点,大幅度简化了模型数量和部署流程,节省了大量的资源,基于语义检测后端点也提高了语音检测的准确度。
89.其中,编码器模块可以与语音行为检测模块和关联网络模块相连接,预测网络模块可以与关联网络模块和语义端点检测模块相连接,语音行为检测模块可以是一层的lstm结构,关联网络模块可以是一层的全连接网络结构,语义端点检测模块可以是两层的lstm结构,编码器模块可以是六层的transformer结构,预测网络模块可以是十二层的transformer的结构,语音行为检测模块、关联网络模块、语义端点检测模块、编码器模块和预测网络模块还可以是其他的结构,本技术对此不作限制。第一特征向量例如包括上文中音频的高维特征向量,第二特征向量例如包括上文中文本符号的高维特征向量。
90.语音行为检测模块、关联网络模块、语义端点检测模块、编码器模块和预测网络模块的示例,可参照图4中所示。
91.在一种可能的实现方式中,所述语音行为检测模块在根据所述第一特征向量确定音频信号序列中的各音频信号所包含的音频帧达到前端点时,停止运行。
92.根据本技术实施例,可以实现在确定前端点后暂停语音行为检测模块的运行,以节省资源。
93.图9示出根据本技术一实施例的语音检测方法的流程图。该方法可用于上述的语音检测平台中,如图9所示,该方法还包括,
94.步骤s901,对所述预测网络模块和所述语义端点检测模块进行预训练;
95.步骤s902,对包含语音行为检测模块、关联网络模块、编码器模块和预训练后的预测网络模块和预训练后的语义端点检测模块的目标检测模型进行训练,得到训练后的目标检测模型。
96.根据本技术实施例,通过对所述预测网络模块和所述语义端点检测模块进行预训练,对包含语音行为检测模块、关联网络模块、编码器模块和预训练后的预测网络模块和预训练后的语义端点检测模块的目标检测模块进行训练,得到训练后的目标检测模块,可以使得训练过程更有针对性,使得基于语义判断的后端点更加精确,通过先进行预训练,还可以使得后续训练模型可以得到更好的训练效果,使得训练出的目标检测模型的预测精度更高。
97.其中,本技术对于进行预训练以及训练的方式不作限制,本技术对于根据预训练后的预测网络模块和预训练后的语义端点检测模块得到目标检测模型的方式也不作限制,例如可以将预训练后的预测网络模块和预训练后的语义端点检测模块,与语音行为检测模块、关联网络模块、编码器模块进行拼接。
98.步骤s901的示例可参照图2中预训练阶段的模型训练方法的流程所示,步骤s902的示例可参照4中整体训练阶段的模型训练方法的流程所示。
99.图10示出根据本技术一实施例的语音检测方法的流程图。如图10所示,对所述预测网络模块和所述语义端点检测模块进行预训练,包括:
100.步骤s1001,将文本样本中的前一文本符号输入预测网络模块,所述预测网络模块根据前一文本符号的特征向量预测得到当前文本符号;
101.步骤s1002,将当前文本符号输入语义端点检测模块,确定当前文本符号的语义是否到达后端点;
102.步骤s1003,根据当前文本符号的标注计算预测网络模块的第一损失值,以及根据当前文本符号是否到达后端点的标注计算语义端点检测模块的第二损失值,根据所述第一损失值和所述第二损失值对预测网络模块和语义端点检测模块进行参数调整。
103.根据本技术实施例,通过将文本样本中的前一文本符号输入预测网络模块,所述预测网络模块根据前一文本符号的特征向量预测得到当前文本符号,将当前文本符号输入语义端点检测模块,确定当前文本符号的语义是否到达后端点,根据当前文本符号的标注计算预测网络模块的第一损失值,以及根据当前文本符号是否到达后端点的标注计算语义端点检测模块的第二损失值,根据所述第一损失值和所述第二损失值对预测网络模块和语义端点检测模块进行参数调整,可以实现在预训练阶段更有针对性地训练模型基于语义检测后端点的功能,进而提高了模型进行语音检测的准确度,在预训练阶段通过使用易获得的文本样本进行训练,无需使用音频样本,可以节省相关资源,同时还可以进一步提高模型基于语义进行语音检测的准确度。
104.其中,文本样本可以通过爬取或购买的方式获得,本技术对于获得文本样本的方式不作限制。本技术对于计算第一损失值和第二损失值的方法不作限制,例如,可以使用交叉熵损失计算第一损失值,可以使用二元交叉熵损失计算第二损失值。文本样本中的前一文本符号可以例如图2中y(u-1),当前文本符号可以例如图2中y(u),当前文本符号的语义是否到达后端点可以根据例如图2中e(u)的取值确定。
105.步骤s1001-步骤s1003的示例可参照图2中预训练阶段的模型训练方法的流程所示。
106.图11示出根据本技术一实施例的语音检测装置的结构图。如图11所示,该装置包括:
107.第一确定模块1101,用于根据第一文本符号和音频信号序列中的第一音频信号,确定第二文本符号,所述第一文本符号的初始值为空字符,所述第二文本符号与所述第一音频信号的内容相对应;
108.第二确定模块1102,用于根据所述第一文本符号,确定所述第二文本符号的语义是否到达后端点,所述后端点表示音频信号序列中的语音结束;
109.第三确定模块1103,用于在所述第二文本符号的语义未到达后端点的情况下,以所述第二文本符号为新的第一文本符号,以所述音频信号序列中、所述第一音频信号之后的音频信号为新的第一音频信号,重复执行根据第一文本符号和音频信号序列中的第一音频信号,确定第二文本符号以及之后的步骤。
110.根据本技术实施例,通过根据第一文本符号和音频信号序列的第一音频信号,确定第二文本符号,根据所述第一文本符号,确定所述第二文本符号的语义是否到达后端点,可以实现根据语义判断文本符号是否到达后端点,避免用户说话卡顿时提前结束收音,防止误判,使得对于后端点的检测更加准确,提升了用户的体验。通过在所述第二文本符号的语义未到达后端点的情况下,以所述第二文本符号为新的第一文本符号,以所述音频信号
序列中、所述第一音频信号之后的音频信号为新的第一音频信号,重复执行根据第一文本符号和音频信号序列中的第一音频信号,确定第二文本符号以及之后的步骤,可以实现音频的后端点检测无需依赖复杂的、人工设定的多模型决策过程,语音检测方法更加灵活,也提高了语音检测方法的准确率。
111.在一种可能的实现方式中,该装置还包括:检测模块,用于依次检测音频信号序列中的各音频信号所包含的音频帧是否达到前端点,所述前端点表示音频信号序列中语音开始;第四确定模块,用于在检测到第一个达到前端点的音频帧时,将该音频帧所在的音频信号确定为所述第一音频信号,停止检测。
112.根据本技术实施例,通过依次检测音频信号序列中的各音频信号所包含的音频帧是否达到前端点,在检测到第一个达到前端点的音频帧时,将该音频帧所在的第一音频信号确定为所述第一音频信号,停止检测,可以在实现检测后端点的基础上,还可以检测音频的前端点,从而能够更精准地判定人声区间,在检测到达到前端点的音频信号时,停止检测,还可以降低相关的计算量,节省资源。
113.在一种可能的实现方式中,该装置用于目标检测模型,所述目标检测模型包括语音行为检测模块、关联网络模块、语义端点检测模块、编码器模块和预测网络模块,所述编码器模块用于得到音频信号序列中的音频信号所包含的音频帧的第一特征向量;所述语音行为检测模块用于根据所述第一特征向量确定音频信号序列中的各音频信号所包含的音频帧是否达到前端点;所述预测网络模块用于得到第一文本符号的第二特征向量;所述关联网络模块用于根据所述第一特征向量和所述第二特征向量,得到所述第二文本符号;所述语义端点检测模块用于根据所述第二特征向量确定所述第二文本符号的语义是否到达后端点。
114.根据本技术实施例,通过目标检测模型包括语音行为检测模块、关联网络模块、语义端点检测模块、编码器模块和预测网络模块,可以实现将vad模型和asr模型整合在一个模型中,实现基于语义检测后端点的同时,还能检测前端点,大幅度简化了模型数量和部署流程,节省了大量的资源,基于语义检测后端点也提高了语音检测的准确度。
115.在一种可能的实现方式中,该装置还包括:预训练模块,用于对所述预测网络模块和所述语义端点检测模块进行预训练;训练模块,用于对包含语音行为检测模块、关联网络模块、编码器模块和预训练后的预测网络模块和预训练后的语义端点检测模块的目标检测模型进行训练,得到训练后的目标检测模型。
116.根据本技术实施例,通过对所述预测网络模块和所述语义端点检测模块进行预训练,对包含语音行为检测模块、关联网络模块、编码器模块和预训练后的预测网络模块和预训练后的语义端点检测模块的目标检测模块进行训练,得到训练后的目标检测模块,可以使得训练过程更有针对性,使得基于语义判断的后端点更加精确,通过先进行预训练,还可以使得后续训练模型可以得到更好的训练效果,使得训练出的目标检测模型的预测精度更高。
117.在一种可能的实现方式中,预训练模块用于:将文本样本中的前一文本符号输入预测网络模块,所述预测网络模块根据前一文本符号的特征向量预测得到当前文本符号;将当前文本符号输入语义端点检测模块,确定当前文本符号的语义是否到达后端点;根据当前文本符号的标注计算预测网络模块的第一损失值,以及根据当前文本符号是否到达后
端点的标注计算语义端点检测模块的第二损失值,根据所述第一损失值和所述第二损失值对预测网络模块和语义端点检测模块进行参数调整。
118.根据本技术实施例,通过将文本样本中的前一文本符号输入预测网络模块,所述预测网络模块根据前一文本符号的特征向量预测得到当前文本符号,将当前文本符号输入语义端点检测模块,确定当前文本符号的语义是否到达后端点,根据当前文本符号的标注计算预测网络模块的第一损失值,以及根据当前文本符号是否到达后端点的标注计算语义端点检测模块的第二损失值,根据所述第一损失值和所述第二损失值对预测网络模块和语义端点检测模块进行参数调整,可以实现在预训练阶段更有针对性地训练模型基于语义检测后端点的功能,进而提高了模型进行语音检测的准确度,在预训练阶段通过使用易获得的文本样本进行训练,无需使用音频样本,可以节省相关资源,同时还可以进一步提高模型基于语义进行语音检测的准确度。
119.在一种可能的实现方式中,所述语音行为检测模块在根据所述第一特征向量确定音频信号序列中的各音频信号所包含的音频帧达到前端点时,停止运行。
120.根据本技术实施例,可以实现在确定前端点后暂停语音行为检测模块的运行,以节省资源。
121.图12示出根据本技术一实施例的终端设备的结构示意图。以终端设备是手机为例,图12示出了手机200的结构示意图。
122.手机200可以包括处理器210,外部存储器接口220,内部存储器221,usb接口230,充电管理模块240,电源管理模块241,电池242,天线1,天线2,移动通信模块251,无线通信模块252,音频模块270,扬声器270a,受话器270b,麦克风270c,耳机接口270d,传感器模块280,按键290,马达291,指示器292,摄像头293,显示屏294,以及sim卡接口295等。其中传感器模块280可以包括陀螺仪传感器280a,加速度传感器280b,接近光传感器280g、指纹传感器280h,触摸传感器280k(当然,手机200还可以包括其它传感器,比如温度传感器,压力传感器、距离传感器、磁传感器、环境光传感器、气压传感器、骨传导传感器等,图中未示出)。
123.可以理解的是,本技术实施例示意的结构并不构成对手机200的具体限定。在本技术另一些实施例中,手机200可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
124.处理器210可以包括一个或多个处理单元,例如:处理器210可以包括应用处理器(application processor,ap),调制解调处理器,图形处理器(graphics processing unit,gpu),图像信号处理器(image signal processor,isp),控制器,存储器,视频编解码器,数字信号处理器(digital signal processor,dsp),基带处理器,和/或神经网络处理器(neural-network processing unit,npu)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。其中,控制器可以是手机200的神经中枢和指挥中心。控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
125.处理器210中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器210中的存储器为高速缓冲存储器。该存储器可以保存处理器210刚用过或循环使用的指令或数据。如果处理器210需要再次使用该指令或数据,可从所述存储器中直接调用。避免了
重复存取,减少了处理器210的等待时间,因而提高了系统的效率。
126.处理器210可以运行本技术实施例提供的语音检测方法,以便于基于语义检测后端点、检测音频的前端点以精准判断音频的人声区间。处理器210可以包括不同的器件,比如集成cpu和gpu时,cpu和gpu可以配合执行本技术实施例提供的语音检测方法,比如语音检测方法中部分算法由cpu执行,另一部分算法由gpu执行,以得到较快的处理效率。
127.内部存储器221可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。处理器210通过运行存储在内部存储器221的指令,从而执行手机200的各种功能应用以及数据处理。内部存储器221可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统,应用程序(比如相机应用,应用等)的代码等。存储数据区可存储手机200使用过程中所创建的数据(比如相机应用采集的图像、视频等)等。
128.内部存储器221还可以存储本技术实施例提供的语音检测方法对应的一个或多个计算机程序1310。该一个或多个计算机程序1304被存储在上述存储器221中并被配置为被该一个或多个处理器210执行,该一个或多个计算机程序1310包括指令,上述指令可以用于执行如图2、图4、图6、图7-图10相应实施例中的各个步骤,该计算机程序1310可以包括第一确定模块1101、第二确定模块1102以及第三确定模块1103。其中,第一确定模块1101,用于根据第一文本符号和音频信号序列中的第一音频信号,确定第二文本符号,所述第一文本符号的初始值为空字符,所述第二文本符号与所述第一音频信号的内容相对应,第二确定模块1102,用于根据所述第一文本符号,确定所述第二文本符号的语义是否到达后端点,所述后端点表示音频信号序列中的语音结束,第三确定模块1103,在所述第二文本符号的语义未到达后端点的情况下,以所述第二文本符号为新的第一文本符号,以所述音频信号序列中、所述第一音频信号之后的音频信号为新的第一音频信号,重复执行根据第一文本符号和音频信号序列中的第一音频信号,确定第二文本符号以及之后的步骤。当内部存储器221中存储的数据的传输方法的代码被处理器210运行时,处理器210可以控制显示屏显示目标模型的预测结果。
129.此外,内部存储器221可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(universal flash storage,ufs)等。
130.当然,本技术实施例提供的语音检测方法的代码还可以存储在外部存储器中。这种情况下,处理器210可以通过外部存储器接口220运行存储在外部存储器中的语音检测方法的代码。
131.手机200的无线通信功能可以通过天线1,天线2,移动通信模块251,无线通信模块252,调制解调处理器以及基带处理器等实现。
132.天线1和天线2用于发射和接收电磁波信号。手机200中的每个天线可用于覆盖单个或多个通信频带。不同的天线还可以复用,以提高天线的利用率。例如:可以将天线1复用为无线局域网的分集天线。在另外一些实施例中,天线可以和调谐开关结合使用。
133.移动通信模块251可以提供应用在手机200上的包括2g/3g/4g/5g等无线通信的解决方案。移动通信模块251可以包括至少一个滤波器,开关,功率放大器,低噪声放大器(low noise amplifier,lna)等。移动通信模块251可以由天线1接收电磁波,并对接收的电磁波进行滤波,放大等处理,传送至调制解调处理器进行解调。移动通信模块251还可以对经调
制解调处理器调制后的信号放大,经天线1转为电磁波辐射出去。在一些实施例中,移动通信模块251的至少部分功能模块可以被设置于处理器210中。在一些实施例中,移动通信模块251的至少部分功能模块可以与处理器210的至少部分模块被设置在同一个器件中。在本技术实施例中,移动通信模块251还可以用于与其它电子设备进行信息交互,以获取训练好的目标检测模型。
134.无线通信模块252可以提供应用在手机200上的包括无线局域网(wireless local area networks,wlan)(如无线保真(wireless fidelity,wi-fi)网络),蓝牙(bluetooth,bt),全球导航卫星系统(global navigation satellite system,gnss),调频(frequency modulation,fm),近距离无线通信技术(near field communication,nfc),红外技术(infrared,ir)等无线通信的解决方案。无线通信模块252可以是集成至少一个通信处理模块的一个或多个器件。无线通信模块252经由天线2接收电磁波,将电磁波信号调频以及滤波处理,将处理后的信号发送到处理器210。无线通信模块252还可以从处理器210接收待发送的信号,对其进行调频,放大,经天线2转为电磁波辐射出去。本技术实施例中,无线通信模块252,用于在处理器210的控制下与其他电子设备之间传输数据,比如,处理器210运行本技术实施例提供的语音检测方法时,处理器可以控制无线通信模块252接收电子设备发送的训练好的目标检测模型。
135.另外,手机200可以通过音频模块270,扬声器270a,受话器270b,麦克风270c,耳机接口270d,以及应用处理器等实现音频功能。例如接收用户输入的音频、进行语音播报等。应理解,在实际应用中,手机200可以包括比图12所示的更多或更少的部件,本技术实施例不作限定。图示手机200仅是一个范例,并且手机200可以具有比图中所示出的更多的或者更少的部件,可以组合两个或更多的部件,或者可以具有不同的部件配置。图中所示出的各种部件可以在包括一个或多个信号处理和/或专用集成电路在内的硬件、软件、或硬件和软件的组合中实现。
136.图13示出根据本技术一实施例的电子设备的结构图。如图13所示,该电子设备40包括至少一个处理器1801,至少一个存储器1802、至少一个通信接口1803。此外,该电子设备还可以包括天线等通用部件,在此不再详述。
137.通过本技术实施例所示的电子设备,可以对模型进行如图2所示的预训练、以及如图4所示的整体训练,以得到训练好的目标检测模型,在训练好后,还可以通过模型格式转换工具,将目标检测模型导出,部署到如图12所示的终端设备上。
138.处理器1801可以是通用中央处理器(cpu),微处理器,特定应用集成电路(application-specific integrated circuit,asic),或一个或多个用于控制以上方案程序执行的集成电路。处理器1801可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(application processor,ap),调制解调处理器,图形处理器(graphics processing unit,gpu),图像信号处理器(image signal processor,isp),控制器,视频编解码器,数字信号处理器(digital signal processor,dsp),基带处理器,和/或神经网络处理器(neural-network processing unit,npu)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
139.通信接口1803,用于与其他设备或通信网络通信,如以太网,无线接入网(ran),核心网,无线局域网(wireless local area networks,wlan)等。
140.存储器1802可以是只读存储器(read-only memory,rom)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory,ram)或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(electricallyerasableprogrammable read-only memory,eeprom)、只读光盘(compact disc read-only memory,cd-rom)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器可以是独立存在,通过总线与处理器相连接。存储器也可以和处理器集成在一起。
141.其中,所述存储器1802用于存储执行以上方案的应用程序代码,并由处理器1801来控制执行。所述处理器1801用于执行所述存储器1802中存储的应用程序代码。
142.在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
143.本技术的实施例提供了一种语音检测装置,包括:处理器以及用于存储处理器可执行指令的存储器;其中,所述处理器被配置为执行所述指令时实现上述方法。
144.本技术的实施例提供了一种非易失性计算机可读存储介质,其上存储有计算机程序指令,所述计算机程序指令被处理器执行时实现上述方法。
145.本技术的实施例提供了一种计算机程序产品,包括计算机可读代码,或者承载有计算机可读代码的非易失性计算机可读存储介质,当所述计算机可读代码在电子设备的处理器中运行时,所述电子设备中的处理器执行上述方法。
146.本技术的实施例提供了一种终端设备,该终端设备可以执行上述方法。
147.计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是――但不限于――电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(random access memory,ram)、只读存储器(read only memory,rom)、可擦式可编程只读存储器(electrically programmable read-only-memory,eprom或闪存)、静态随机存取存储器(static random-access memory,sram)、便携式压缩盘只读存储器(compact disc read-only memory,cd-rom)、数字多功能盘(digital video disc,dvd)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。
148.这里所描述的计算机可读程序指令或代码可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。
149.用于执行本技术操作的计算机程序指令可以是汇编指令、指令集架构(instruction set architecture,isa)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言—诸如smalltalk、c++等,以及常规的过程式编程语言—
诸如“c”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(local area network,lan)或广域网(wide area network,wan)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(field-programmable gate array,fpga)或可编程逻辑阵列(programmable logic array,pla),该电子电路可以执行计算机可读程序指令,从而实现本技术的各个方面。
150.这里参照根据本技术实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本技术的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
151.这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
152.也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
153.附图中的流程图和框图显示了根据本技术的多个实施例的装置、系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。
154.也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行相应的功能或动作的硬件(例如电路或asic(application specific integrated circuit,专用集成电路))来实现,或者可以用硬件和软件的组合,如固件等来实现。
155.尽管在此结合各实施例对本发明进行了描述,然而,在实施所要求保护的本发明过程中,本领域技术人员通过查看所述附图、公开内容、以及所附权利要求书,可理解并实现所述公开实施例的其它变化。在权利要求中,“包括”(comprising)一词不排除其他组成部分或步骤,“一”或“一个”不排除多个的情况。单个处理器或其它单元可以实现权利要求中列举的若干项功能。相互不同的从属权利要求中记载了某些措施,但这并不表示这些措施不能组合起来产生良好的效果。
156.以上已经描述了本技术的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。

技术特征:


1.一种语音检测方法,其特征在于,所述方法包括:根据第一文本符号和音频信号序列中的第一音频信号,确定第二文本符号,所述第一文本符号的初始值为空字符,所述第二文本符号与所述第一音频信号的内容相对应;根据所述第一文本符号,确定所述第二文本符号的语义是否到达后端点,所述后端点表示音频信号序列中的语音结束;在所述第二文本符号的语义未到达后端点的情况下,以所述第二文本符号为新的第一文本符号,以所述音频信号序列中、所述第一音频信号之后的音频信号为新的第一音频信号,重复执行根据第一文本符号和音频信号序列中的第一音频信号,确定第二文本符号以及之后的步骤。2.根据权利要求1所述的方法,其特征在于,所述方法还包括:依次检测音频信号序列中的各音频信号所包含的音频帧是否达到前端点,所述前端点表示音频信号序列中语音开始;在检测到第一个达到前端点的音频帧时,将该音频帧所在的音频信号确定为所述第一音频信号,停止检测。3.根据权利要求2所述的方法,其特征在于,所述方法用于目标检测模型,所述目标检测模型包括语音行为检测模块、关联网络模块、语义端点检测模块、编码器模块和预测网络模块,所述编码器模块用于得到音频信号序列中的音频信号所包含的音频帧的第一特征向量;所述语音行为检测模块用于根据所述第一特征向量确定音频信号序列中的各音频信号所包含的音频帧是否达到前端点;所述预测网络模块用于得到第一文本符号的第二特征向量;所述关联网络模块用于根据所述第一特征向量和所述第二特征向量,得到所述第二文本符号;所述语义端点检测模块用于根据所述第二特征向量确定所述第二文本符号的语义是否到达后端点。4.根据权利要求3所述的方法,其特征在于,所述方法还包括:对所述预测网络模块和所述语义端点检测模块进行预训练;对包含语音行为检测模块、关联网络模块、编码器模块和预训练后的预测网络模块和预训练后的语义端点检测模块的目标检测模型进行训练,得到训练后的目标检测模型。5.根据权利要求3所述的方法,其特征在于,对所述预测网络模块和所述语义端点检测模块进行预训练,包括:将文本样本中的前一文本符号输入预测网络模块,所述预测网络模块根据前一文本符号的特征向量预测得到当前文本符号;将当前文本符号输入语义端点检测模块,确定当前文本符号的语义是否到达后端点;根据当前文本符号的标注计算预测网络模块的第一损失值,以及根据当前文本符号是否到达后端点的标注计算语义端点检测模块的第二损失值,根据所述第一损失值和所述第二损失值对预测网络模块和语义端点检测模块进行参数调整。6.根据权利要求3所述的方法,其特征在于,所述语音行为检测模块在根据所述第一特
征向量确定音频信号序列中的各音频信号所包含的音频帧达到前端点时,停止运行。7.一种语音检测装置,其特征在于,所述装置包括:第一确定模块,用于根据第一文本符号和音频信号序列中的第一音频信号,确定第二文本符号,所述第一文本符号的初始值为空字符,所述第二文本符号与所述第一音频信号的内容相对应;第二确定模块,用于根据所述第一文本符号,确定所述第二文本符号的语义是否到达后端点,所述后端点表示音频信号序列中的语音结束;第三确定模块,用于在所述第二文本符号的语义未到达后端点的情况下,以所述第二文本符号为新的第一文本符号,以所述音频信号序列中、所述第一音频信号之后的音频信号为新的第一音频信号,重复执行根据第一文本符号和音频信号序列中的第一音频信号,确定第二文本符号以及之后的步骤。8.一种语音检测装置,其特征在于,包括:处理器;用于存储处理器可执行指令的存储器;其中,所述处理器被配置为执行所述指令时实现权利要求1-6任意一项所述的方法。9.一种非易失性计算机可读存储介质,其上存储有计算机程序指令,其特征在于,所述计算机程序指令被处理器执行时实现权利要求1-6中任意一项所述的方法。10.一种计算机程序产品,包括计算机可读代码,或者承载有计算机可读代码的非易失性计算机可读存储介质,当所述计算机可读代码在电子设备中运行时,所述电子设备中的处理器执行权利要求1-6中任意一项所述的方法。

技术总结


本申请涉及人工智能技术领域中的语音检测领域,尤其涉及一种语音检测方法、装置和存储介质,方法包括:根据第一文本符号和音频信号序列中的第一音频信号,确定第二文本符号;根据所述第一文本符号,确定所述第二文本符号的语义是否到达后端点;在所述第二文本符号的语义未到达后端点的情况下,以所述第二文本符号为新的第一文本符号,以所述音频信号序列中、所述第一音频信号之后的音频信号为新的第一音频信号,重复执行根据第一文本符号和音频信号序列中的第一音频信号,确定第二文本符号以及之后的步骤。根据本申请实施例,可以实现基于语义精准地确定输入音频的后端点,防止误判,简化了模型的数量和部署流程,提高了模型的精度。的精度。的精度。


技术研发人员:

房雷 耿杰

受保护的技术使用者:

华为技术有限公司

技术研发日:

2021.04.23

技术公布日:

2022/10/24

本文发布于:2024-09-22 23:37:30,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/4/23082.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:模块   所述   文本   音频
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议