流式语音识别的处理方法、装置和计算机设备与流程

文档序号:26957138发布日期:2021-10-16 04:48阅读:234来源:国知局
流式语音识别的处理方法、装置和计算机设备与流程

1.本技术涉及语音识别技术领域,特别涉及一种流式语音识别的处理方法、装置和计算机设备。


背景技术:

2.唤醒词、命令词识别属于语音识别领域,广泛应用于智能家居、智能终端等场景。现有唤醒词、命令词模型在应用时,实时检测用户的语音,当检测到特定词汇时,即做出反馈。如何在流式语音数据中精准检测出特定词汇,除了跟算法的性能相关外,流式处理的算法也至关重要。比如常见的流式处理会选取固定的窗长,然后按照一定的步长进行滑动。这样的处理方式存在如下缺点:一是设置了固定的窗口长度,从而限定了检测的范围。比如窗口长度设定为2s,也就是说唤醒词、命令词要在2s内说完,才能准确检测。对于语速慢的用户,超过2s很容易就没法识别,降低了用户体验;二是步长的选择需要精心设计,如果步长太大容易漏检测,太小则会增加处理频率,延时增加,实时反馈时间变长,用户体验变差;三是输入端的overlap(重叠)处理,比如窗口长度是3s,步长stride=1s,第一次处理的是1

3s数据,第2次处理的是2

4s数据,第一个窗口和第二个窗口中间有重叠,而非完全不相交。单位处理的时间为模型推理和后处理时间的总和,而模型推理一般是整个算法运行时间的主要部分,大大限制了步长的可选范围。步长设定小了,延时严重,设定大了,漏识别会大大增加。


技术实现要素:

3.本技术的主要目的为提供一种流式语音识别的处理方法、装置和计算机设备,旨在解决现有流式语音数据的处理方法延时较为严重或者漏识别几率较大的弊端。
4.为实现上述目的,本技术提供了一种流式语音识别的处理方法,包括:采集初始语音数据;对所述初始语音数据进行一次滑窗处理,得到若干个二次语音数据;按照各所述二次语音数据的采集时间顺序,依次将各所述二次语音数据输入预先训练的语音识别模型进行处理,得到各所述二次语音数据分别对应的初始序列矩阵;每次所述语音识别模型输出新的初始序列矩阵时,将当前时刻的初始序列矩阵与预设数量个相邻上一时刻的初始序列矩阵进行拼接,得到二次序列矩阵;在每次得到新的二次序列矩阵时,对所述二次序列矩阵进行二次滑窗处理,得到最终序列矩阵,其中,所述二次滑窗处理时窗口长度与预设命令词长度对应,且相邻窗口之间不做重叠;调用识别算法在所述最终序列矩阵上进行搜索,获得识别结果。
5.本技术还提供了一种流式语音识别的处理装置,包括:
采集模块,用于采集初始语音数据;第一滑窗模块,用于对所述初始语音数据进行一次滑窗处理,得到若干个二次语音数据;识别模块,用于按照各所述二次语音数据的采集时间顺序,依次将各所述二次语音数据输入预先训练的语音识别模型进行处理,得到各所述二次语音数据分别对应的初始序列矩阵;拼接模块,用于每次所述语音识别模型输出新的初始序列矩阵时,将当前时刻的初始序列矩阵与预设数量个相邻上一时刻的初始序列矩阵进行拼接,得到二次序列矩阵;第二滑窗模块,用于在每次得到新的二次序列矩阵时,对所述二次序列矩阵进行二次滑窗处理,得到最终序列矩阵,其中,所述二次滑窗处理时窗口长度与预设命令词长度对应,且相邻窗口之间不做重叠;搜索模块,用于调用识别算法在所述最终序列矩阵上进行搜索,获得识别结果。
6.本技术还提供一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器执行所述计算机程序时实现上述任一项所述方法的步骤。
7.本技术还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任一项所述的方法的步骤。
8.本技术中提供的一种流式语音识别的处理方法、装置和计算机设备,识别系统采集初始语音数据,首先对初始语音数据进行一次滑窗处理,得到若干个二次语音数据。然后按照各个二次语音数据的采集时间顺序,依次将各个二次语音数据输入预先训练的语音识别模型进行处理,得到各个二次语音数据分别对应的初始序列矩阵。在每次语音识别模型输出新的初始序列矩阵时,识别系统将当前时刻的初始序列矩阵与预设数量个相邻上一时刻的初始序列矩阵进行拼接,得到二次序列矩阵。在每次得到新的二次序列矩阵时,对二次序列矩阵进行二次滑窗处理,得到最终序列矩阵,其中,二次滑窗处理时窗口长度与预设命令词长度对应,且相邻窗口之间不做重叠。最后,识别系统调用识别算法在所述最终序列矩阵上进行搜索,获得识别结果。本技术中,语音识别模型的输入端进行一次滑窗处理和输出端进行二次滑窗处理相结合,从而保证了语音识别模型的高命中率,有效避免漏识别命令词。同时,由于语音识别模型的输出端设置了二次滑窗处理,因此在输入端进行一次滑窗处理时,步长可以设置的更大,从而加快处理速度,保证了语音识别模型的实时率。
附图说明
9.图1是本技术一实施例中流式语音识别的处理方法的步骤示意图;图2是本技术一实施例中流式语音识别的处理装置的整体结构框图;图3是本技术一实施例的计算机设备的结构示意框图。
10.本技术目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
11.为了使本技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本技术进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本技术,并不用于限定本技术。
12.参照图1,本技术一实施例中提供了一种流式语音识别的处理方法,包括:s1:采集初始语音数据;s2:对所述初始语音数据进行一次滑窗处理,得到若干个二次语音数据;s3:按照各所述二次语音数据的采集时间顺序,依次将各所述二次语音数据输入预先训练的语音识别模型进行处理,得到各所述二次语音数据分别对应的初始序列矩阵;s4:每次所述语音识别模型输出新的初始序列矩阵时,将当前时刻的初始序列矩阵与预设数量个相邻上一时刻的初始序列矩阵进行拼接,得到二次序列矩阵;s5:在每次得到新的二次序列矩阵时,对所述二次序列矩阵进行二次滑窗处理,得到最终序列矩阵,其中,所述二次滑窗处理时窗口长度与预设命令词长度对应,且相邻窗口之间不做重叠;s6:调用识别算法在所述最终序列矩阵上进行搜索,获得识别结果。
13.优选的,所述二次滑窗处理的步长小于所述一次滑窗处理的步长。
14.本实施例中,识别系统采集用户输入的初始语音数据,然后对初始语音数据进行一次滑窗处理,按照一次滑窗处理的窗口长度和步长将初始语音数据分割成若干个二次语音数据。由于采用的是流式处理方法,在每次通过一次滑窗处理得到一个二次语音数据时,即调用一次语音识别模型以及后处理,并反馈最终的识别结果,从而根据该识别结果判断是否识别到命令词(或者说唤醒词)。如果当前次识别到命令词,则不需要对后续的初始语音数据进行相应的处理(包括一次滑窗处理、调用语音识别模型以及后处理)。如果当前次没有识别到命令词,则继续对后续的初始语音数据进行一次滑窗处理、调用语音识别模型等,直至完成对整段初始语音数据的处理,或者识别到命令词。根据流式处理的连续性,识别系统按照各个二次语音数据的采集时间顺序,依次将各个二次语音数据输入预先训练的语音识别模型进行处理,得到各个二次语音数据分别对应的初始序列矩阵。由于本实施例在语音识别模型的输入端和输出端均采用了滑窗处理(输入端对应一次滑窗处理,输出端对应二次滑窗处理),因此一次滑窗处理的步长可以设置的更大(比如设置步长与窗口长度相同),从而大幅度降低处理频率,提高处理效率。而为了保证不会发生漏检的情况,在语音识别模型的输出端则将前后预设数量个相邻时刻对应的初始序列矩阵进行拼接,以避免一次滑窗处理时步长过大导致的漏检情况。具体地,在识别系统刚启动或者缓存重置时(即在语音识别模型输出首个初始序列矩阵时),则在首个初始序列矩阵上使用识别算法进行搜索,从而获取识别结果,不需要对首个初始序列矩阵进行拼接。在得到至少两个初始序列矩阵后,每次语音识别模型输出新的初始序列矩阵时,识别系统将当前时刻的初始序列矩阵与预设数量个相邻上一时刻的初始序列矩阵进行拼接,得到二次序列矩阵。预设数量的具体值可以根据具体应用场景进行设置,其中,当前时刻的初始序列矩阵与预设数量个相邻上一时刻的初始序列矩阵之间具有连续性,比如具有初始序列矩阵a、初始序列矩阵b和初始序列矩阵c,初始序列矩阵a、初始序列矩阵b和初始序列矩阵c对应的处理时间为连续的、相邻的(即语音识别模型第一次输出初始序列矩阵a,第二次输出初始序列矩阵b,第三次输出初始序列矩阵c)。当预设数量为1,当前时刻对应初始序列矩阵c时,则识别系统将初始序列矩阵b和初始序列矩阵c顺序拼接得到二次序列矩阵。当预设数量为2,当前时刻对应初始序列矩阵c时,则将初始序列矩阵a、初始序列矩阵b和初始序列矩阵c顺序拼接得到二次序列矩阵。在每次得到新的二次序列矩阵时,识别系统对二次序列矩阵进行二次滑窗处理,从
而得到最终序列矩阵。在进行二次滑窗处理时,窗口长度的设定与用户的语速无关,优选根据命令词的长度(即预设命令词长度)进行相应设置,且相邻窗口之间不做重叠;比如将窗口长度设定为预设命令词长度的1.5倍或2倍等,此时语音识别模型输出端二次滑窗处理的窗口长度远远小于输入端一次滑窗处理的窗口长度。同时,二次滑窗处理的步长可以设置的任意小(优先二次滑窗处理的步长小于一次滑窗处理的步长),由于二次滑窗处理是在模型的输出端,相对于输入端的一次滑窗处理,二次滑窗处理后不需要调用语音识别模型,因此步长设置的较小也不会增加延时,能够有效保证流式语音识别的实时率。识别系统调用识别算法在最终序列矩阵上进行搜索,从而获得识别结果,实现对初始语音数据中命令词的识别。
15.本实施例中,语音识别模型的输入端进行一次滑窗处理和输出端进行二次滑窗处理相结合,从而保证了语音识别模型的高命中率,有效避免漏识别命令词。同时,由于语音识别模型的输出端设置了二次滑窗处理,因此在输入端进行一次滑窗处理时,步长可以设置的更大,从而加快处理速度,保证了语音识别模型的实时率。
16.进一步的,所述对所述初始语音数据进行一次滑窗处理,得到若干个二次语音数据的步骤,包括:s201:对所述初始语音数据进行语音特征提取,得到特征数据帧;s202:调取预设窗口长度,并基于所述预设窗口长度和预设比例计算得到步长,所述预设比例表征所述步长与所述预设窗口长度之间的比值关系;s203:根据所述预设窗口长度和所述步长对所述特征数据帧进行分割,得到若干个所述二次语音数据。
17.优选的,所述预设比例为1:1。
18.本实施例中,识别系统对初始语音数据进行语音特征提取(即经过时域转频域,比如使用fbank、mfcc等算法实现),得到特征数据帧。然后,识别系统调取预设窗口长度,并基于该预设窗口长度与预设比例计算得到步长。其中,预设比例表征步长与预设窗口长度之间的比值关系;比如预设窗口长度为160,预设比例为1:2,则步长为80。识别系统根据预设窗口长度和步长对特征数据帧进行分割,实现一次滑窗处理,得到若干个二次语音数据。
19.优选的,预设比例设定为1:1,即步长与预设窗口长度相同,按照该设定在对特征数据帧进行一次滑窗处理时,相邻窗口之间相互独立,互不重叠,从而大幅度提高处理速度、降低处理延时,同时保证了语音识别具有常规的识别准确率。
20.进一步的,所述每次所述语音识别模型输出新的初始序列矩阵时,将当前时刻的初始序列矩阵与预设数量个相邻上一时刻的初始序列矩阵进行拼接,得到二次序列矩阵的步骤,包括:s401:获取所述初始序列矩阵中所有blank标签对应的概率值;s402:调取概率阈值,并将所初始序列矩阵中所述概率值大于所述概率阈值的blank标签所对应的特征数据帧移除,得到精简后的初始序列矩阵;s403:将当前时刻精简后的初始序列矩阵和预设数量个相邻上一时刻精简后的初始序列矩阵进行拼接,得到所述二次序列矩阵。
21.本实施例中,语音识别模型输出初始序列矩阵后,识别系统按照预设规则对初始序列矩阵进行精简,减少模型输出(即初始序列矩阵)的数据量。具体地,识别系统获取初始
序列矩阵中所有blank标签对应位置的概率值,然后调取预先设置的概率阈值,将各个blank标签对应位置的概率值与概率阈值进行比对,如果blank标签对应位置的概率值大于概率阈值,则将blank标签对应位置的特征数据帧属于无效帧,将初始序列矩阵中概率值大于概率阈值的blank标签对应的特征数据帧移除,从而得到精简后的初始序列矩阵。识别系统对语音识别模型输出的每个初始序列矩阵均做上述精简处理,然后将当前时刻精简后的初始序列矩阵和预设数量个相邻上一时刻精简后的初始序列矩阵进行拼接,得到二次序列矩阵(即二次序列矩阵是在精简后的初始序列矩阵的基础上拼接得到,因而数据量大幅度减少)。
22.进一步的,所述按照各所述二次语音数据的采集时间顺序,依次将各所述二次语音数据输入预先训练的语音识别模型进行处理,得到各所述二次语音数据分别对应的初始序列矩阵的步骤,包括:s301:调取预先设置的降采样倍率;s302:按照各所述二次语音数据的采集时间顺序,依次将各所述二次语音数据输入预先训练的语音识别模型,按照所述降采样倍率进行数据压缩以及卷积处理,得到各所述二次语音数据分别对应的初始序列矩阵。
23.进一步的,语音识别模型在对二次语音数据进行处理的过程中,还对二次语音数据进行了数据压缩。具体地,二次语音数据输入语音识别模型后,语音识别模型按照预先设定的降采样倍率对二次语音数据进行数据压缩,以及卷积处理,从而得到各二次语音数据分别对应的初始序列矩阵。其中,降采样倍率的具体值由设计人员进行设定,理论上,特征提取后的二次语音数据的数据帧的长度远远大于对应的文本长度,同时,降采样后的数据帧长度大于对应文本转成音素序列的长度,即可做降采样处理。
24.本实施例中,语音识别模型的输出端由于进行了数据压缩和规则缩减(即上述的精简),大大减少了数据量,且不需要再重复经过模型的运算耗时。因此,二次滑窗处理的步长可设定的几乎任意小,比如步长为1,即可满足实时率的要求,同时大大提升了模型的召回率表现。
25.进一步的,所述初始序列矩阵的横列表征时间,所述每次所述语音识别模型输出新的初始序列矩阵时,将当前时刻的初始序列矩阵与预设数量个相邻上一时刻的初始序列矩阵进行拼接,得到二次序列矩阵的步骤,还包括:s404:在得到至少两个所述初始序列矩阵,并且每次所述语音识别模型输出新的初始序列矩阵时,以时间为拼接基准,在初始序列矩阵的横列方向上将所述相邻上一时刻的初始序列矩阵的末端与所述当前时刻的初始序列矩阵的首端对齐拼接,得到所述二次序列矩阵。
26.本实施例中,本实施例中,初始序列矩阵的横列表征时间,纵列则表征建模单元的类别,比如建模单元为音素,则纵列表征音素。在得到至少两个初始序列矩阵,并且每次语音识别模型输出新的初始序列矩阵时,识别系统以时间为拼接基准,在初始序列矩阵的横列方向上,将相邻上一时刻的初始序列矩阵的末端与当前时刻的初始序列矩阵的首端对齐拼接,从而得到二次序列矩阵,以弥补在模型的输入端做一次滑窗处理时步长设置的较大,可能产生漏检的弊端,提高流式语音识别的准确度。
27.参照图2,本技术一实施例中还提供了一种流式语音识别的处理装置,包括:
采集模块1,用于采集初始语音数据;第一滑窗模块2,用于对所述初始语音数据进行一次滑窗处理,得到若干个二次语音数据;识别模块3,用于按照各所述二次语音数据的采集时间顺序,依次将各所述二次语音数据输入预先训练的语音识别模型进行处理,得到各所述二次语音数据分别对应的初始序列矩阵;拼接模块4,用于每次所述语音识别模型输出新的初始序列矩阵时,将当前时刻的初始序列矩阵与预设数量个相邻上一时刻的初始序列矩阵进行拼接,得到二次序列矩阵;第二滑窗模块5,用于在每次得到新的二次序列矩阵时,对所述二次序列矩阵进行二次滑窗处理,得到最终序列矩阵,其中,所述二次滑窗处理时窗口长度与预设命令词长度对应,且相邻窗口之间不做重叠;搜索模块6,用于调用识别算法在所述最终序列矩阵上进行搜索,获得识别结果。
28.优选的,所述二次滑窗处理的步长小于所述一次滑窗处理的步长。
29.进一步的,所述第一滑窗模块2,包括:提取单元,用于对所述初始语音数据进行语音特征提取,得到特征数据帧;计算单元,用于调取预设窗口长度,并基于所述预设窗口长度和预设比例计算得到步长,所述预设比例表征所述步长与所述预设窗口长度之间的比值关系;分割单元,用于根据所述预设窗口长度和所述步长对所述特征数据帧进行分割,得到若干个所述二次语音数据。
30.优选的,所述预设比例为1:1。
31.进一步的,所述在拼接模块4,包括:获取单元,用于获取所述初始序列矩阵中所有blank标签对应的概率值;移除单元,用于调取概率阈值,并将所初始序列矩阵中所述概率值大于所述概率阈值的blank标签所对应的特征数据帧移除,得到精简后的初始序列矩阵;拼接单元,用于将当前时刻精简后的初始序列矩阵和预设数量个相邻上一时刻精简后的初始序列矩阵进行拼接,得到所述二次序列矩阵。
32.进一步的,所述识别模块3,包括:调取单元,用于调取预先设置的降采样倍率;压缩单元,用于按照各所述二次语音数据的采集时间顺序,依次将各所述二次语音数据输入预先训练的语音识别模型,按照所述降采样倍率进行数据压缩以及卷积处理,得到各所述二次语音数据分别对应的初始序列矩阵。
33.进一步的,所述初始序列矩阵的横列表征时间,所述拼接模块4,具体用于:在得到至少两个所述初始序列矩阵,并且每次所述语音识别模型输出新的初始序列矩阵时,以时间为拼接基准,在初始序列矩阵的横列方向上将所述相邻上一时刻的初始序列矩阵的末端与所述当前时刻的初始序列矩阵的首端对齐拼接,得到所述二次序列矩阵。
34.本实施例中,流式语音识别的处理装置中各模块、单元用于对应执行与上述流式语音识别的处理方法中的各个步骤,其具体实施过程在此不做详述。
35.本实施例提供的一种流式语音识别装置,识别系统采集初始语音数据,首先对初
始语音数据进行一次滑窗处理,得到若干个二次语音数据。然后按照各个二次语音数据的采集时间顺序,依次将各个二次语音数据输入预先训练的语音识别模型进行处理,得到各个二次语音数据分别对应的初始序列矩阵。在得到至少两个所述初始序列矩阵,并且每次语音识别模型输出新的初始序列矩阵时,识别系统将当前时刻的初始序列矩阵与预设数量个相邻上一时刻的初始序列矩阵进行拼接,得到二次序列矩阵。在每次得到新的二次序列矩阵时,对二次序列矩阵进行二次滑窗处理,得到最终序列矩阵,其中,二次滑窗处理时窗口长度与预设命令词长度对应,且相邻窗口之间不做重叠。最后,识别系统调用识别算法在所述最终序列矩阵上进行搜索,获得识别结果。本技术中,语音识别模型的输入端进行一次滑窗处理和输出端进行二次滑窗处理相结合,从而保证了语音识别模型的高命中率,有效避免漏识别命令词。同时,由于语音识别模型的输出端设置了二次滑窗处理,因此在输入端进行一次滑窗处理时,步长可以设置的更大,从而加快处理速度,保证了语音识别模型的实时率。
36.参照图3,本技术实施例中还提供一种计算机设备,该计算机设备可以是服务器,其内部结构可以如图3所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设计的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储预设窗口长度等数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种流式语音识别的处理方法。
37.上述处理器执行上述流式语音识别的处理方法的步骤:s1:采集初始语音数据;s2:对所述初始语音数据进行一次滑窗处理,得到若干个二次语音数据;s3:按照各所述二次语音数据的采集时间顺序,依次将各所述二次语音数据输入预先训练的语音识别模型进行处理,得到各所述二次语音数据分别对应的初始序列矩阵;s4:每次所述语音识别模型输出新的初始序列矩阵时,将当前时刻的初始序列矩阵与预设数量个相邻上一时刻的初始序列矩阵进行拼接,得到二次序列矩阵;s5:在每次得到新的二次序列矩阵时,对所述二次序列矩阵进行二次滑窗处理,得到最终序列矩阵,其中,所述二次滑窗处理时窗口长度与预设命令词长度对应,且相邻窗口之间不做重叠;s6:调用识别算法在所述最终序列矩阵上进行搜索,获得识别结果。
38.优选的,所述二次滑窗处理的步长小于所述一次滑窗处理的步长。
39.进一步的,所述对所述初始语音数据进行一次滑窗处理,得到若干个二次语音数据的步骤,包括:s201:对所述初始语音数据进行语音特征提取,得到特征数据帧;s202:调取预设窗口长度,并基于所述预设窗口长度和预设比例计算得到步长,所述预设比例表征所述步长与所述预设窗口长度之间的比值关系;s203:根据所述预设窗口长度和所述步长对所述特征数据帧进行分割,得到若干个所述二次语音数据。
40.优选的,所述预设比例为1:1。
41.进一步的,所述每次所述语音识别模型输出新的初始序列矩阵时,将当前时刻的初始序列矩阵与预设数量个相邻上一时刻的初始序列矩阵进行拼接,得到二次序列矩阵的步骤,包括:s401:获取所述初始序列矩阵中所有blank标签对应的概率值;s402:调取概率阈值,并将所初始序列矩阵中所述概率值大于所述概率阈值的blank标签所对应的特征数据帧移除,得到精简后的初始序列矩阵;s403:将当前时刻精简后的初始序列矩阵和预设数量个相邻上一时刻精简后的初始序列矩阵进行拼接,得到所述二次序列矩阵。
42.进一步的,所述按照各所述二次语音数据的采集时间顺序,依次将各所述二次语音数据输入预先训练的语音识别模型进行处理,得到各所述二次语音数据分别对应的初始序列矩阵的步骤,包括:s301:调取预先设置的降采样倍率;s302:按照各所述二次语音数据的采集时间顺序,依次将各所述二次语音数据输入预先训练的语音识别模型,按照所述降采样倍率进行数据压缩以及卷积处理,得到各所述二次语音数据分别对应的初始序列矩阵。
43.进一步的,所述初始序列矩阵的横列表征时间,所述每次所述语音识别模型输出新的初始序列矩阵时,将当前时刻的初始序列矩阵与预设数量个相邻上一时刻的初始序列矩阵进行拼接,得到二次序列矩阵的步骤,还包括:s404:在得到至少两个所述初始序列矩阵,并且每次所述语音识别模型输出新的初始序列矩阵时,以时间为拼接基准,在初始序列矩阵的横列方向上将所述相邻上一时刻的初始序列矩阵的末端与所述当前时刻的初始序列矩阵的首端对齐拼接,得到所述二次序列矩阵。
44.本技术一实施例还提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现一种流式语音识别的处理方法,所述流式语音识别的处理方法具体为:s1:采集初始语音数据;s2:对所述初始语音数据进行一次滑窗处理,得到若干个二次语音数据;s3:按照各所述二次语音数据的采集时间顺序,依次将各所述二次语音数据输入预先训练的语音识别模型进行处理,得到各所述二次语音数据分别对应的初始序列矩阵;s4:每次所述语音识别模型输出新的初始序列矩阵时,将当前时刻的初始序列矩阵与预设数量个相邻上一时刻的初始序列矩阵进行拼接,得到二次序列矩阵;s5:在每次得到新的二次序列矩阵时,对所述二次序列矩阵进行二次滑窗处理,得到最终序列矩阵,其中,所述二次滑窗处理时窗口长度与预设命令词长度对应,且相邻窗口之间不做重叠;s6:调用识别算法在所述最终序列矩阵上进行搜索,获得识别结果。
45.优选的,所述二次滑窗处理的步长小于所述一次滑窗处理的步长。
46.进一步的,所述对所述初始语音数据进行一次滑窗处理,得到若干个二次语音数据的步骤,包括:
s201:对所述初始语音数据进行语音特征提取,得到特征数据帧;s202:调取预设窗口长度,并基于所述预设窗口长度和预设比例计算得到步长,所述预设比例表征所述步长与所述预设窗口长度之间的比值关系;s203:根据所述预设窗口长度和所述步长对所述特征数据帧进行分割,得到若干个所述二次语音数据。
47.优选的,所述预设比例为1:1。
48.进一步的,所述每次所述语音识别模型输出新的初始序列矩阵时,将当前时刻的初始序列矩阵与预设数量个相邻上一时刻的初始序列矩阵进行拼接,得到二次序列矩阵的步骤,包括:s401:获取所述初始序列矩阵中所有blank标签对应的概率值;s402:调取概率阈值,并将所初始序列矩阵中所述概率值大于所述概率阈值的blank标签所对应的特征数据帧移除,得到精简后的初始序列矩阵;s403:将当前时刻精简后的初始序列矩阵和预设数量个相邻上一时刻精简后的初始序列矩阵进行拼接,得到所述二次序列矩阵。
49.进一步的,所述按照各所述二次语音数据的采集时间顺序,依次将各所述二次语音数据输入预先训练的语音识别模型进行处理,得到各所述二次语音数据分别对应的初始序列矩阵的步骤,包括:s301:调取预先设置的降采样倍率;s302:按照各所述二次语音数据的采集时间顺序,依次将各所述二次语音数据输入预先训练的语音识别模型,按照所述降采样倍率进行数据压缩以及卷积处理,得到各所述二次语音数据分别对应的初始序列矩阵。
50.进一步的,所述初始序列矩阵的横列表征时间,所述每次所述语音识别模型输出新的初始序列矩阵时,将当前时刻的初始序列矩阵与预设数量个相邻上一时刻的初始序列矩阵进行拼接,得到二次序列矩阵的步骤,还包括:s404:在得到至少两个所述初始序列矩阵,并且每次所述语音识别模型输出新的初始序列矩阵时,以时间为拼接基准,在初始序列矩阵的横列方向上将所述相邻上一时刻的初始序列矩阵的末端与所述当前时刻的初始序列矩阵的首端对齐拼接,得到所述二次序列矩阵。
51.本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储与一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本技术所提供的和实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可以包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)或闪存。易失性存储器可包括随机存取存储器(ram)或者外部高速缓冲存储器。作为说明而非局限,ram通过多种形式可得,诸如静态ram(sram)、动态ram(dram)、同步dram(sdram)、双速据率sdram(ssrsdram)、增强型sdram(esdram)、同步链路(synchlink)dram(sldram)、存储器总线(rambus)直接ram(rdram)、直接存储器总线动态ram(drdram)、以及存储器总线动态ram(rdram)等。
52.需要说明的是,在本文中,术语“包括”、“包含”或者其任何其它变体意在涵盖非排
他性的包含,从而使得包括一系列要素的过程、装置、第一物体或者方法不仅包括那些要素,而且还包括没有明确列出的其它要素,或者是还包括为这种过程、装置、第一物体或者方法所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括该要素的过程、装置、第一物体或者方法中还存在另外的相同要素。
53.以上所述仅为本技术的优选实施例,并非因此限制本技术的专利范围,凡是利用本技术说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其它相关的技术领域,均同理包括在本技术的专利保护范围内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1