自适应解码方法、装置、计算机设备和存储介质与流程



1.本发明涉及到语音识别技术领域,特别是涉及到一种自适应解码方法、装置、计算机设备和存储介质。


背景技术:



2.唤醒词、命令词识别属于语音识别领域,广泛应用于智能家居、智能终端等场景。现有唤醒词、命令词模型在应用时,实时检测用户的语音,当检测到特定词汇时,即做出反馈。如何在流式语音数据中精准检测出特定词汇,除了跟算法的性能相关外,流式处理的算法也至关重要。比如常见的流式处理会选取固定的窗长,然后按照一定的步长进行滑动。按照一定的步长进行滑动的处理方式时,如果滑窗重叠过大,导致解码次数增多,增加处理时间;如果滑窗重叠过小时,又存在语音信息丢失的可能。


技术实现要素:



3.本发明的主要目的为提供一种自适应解码方法、装置、计算机设备和存储介质,能够解决现有技术中按照一定的步长进行滑动的处理方式时,导致滑窗重叠过大或滑窗重叠过小的技术问题。
4.本发明提供的一种自适应解码方法,包括:获取语音数据,对所述语音数据进行预处理得到解码矩阵;根据自适应步长策略对所述解码矩阵进行滑窗处理,当滑窗内出现关键词的置信度满足预设阈值时输出解码结果。
5.进一步,所述获取语音数据,对所述语音数据进行预处理得到解码矩阵的步骤,包括:将所述语音数据输入神经网络模型,获得初始解码矩阵;获取所述初始解码矩阵中blank标签对应的概率值;若所述概率值大于预设阈值,移除所述概率值对应的特征数据帧,得到精简后的解码矩阵。
6.进一步,所述若所述概率值大于预设阈值,移除所述概率值对应的特征数据帧,得到精简后的解码矩阵的步骤之后,包括:将所述解码矩阵缓存至缓存区域;当所述缓存区域的缓存时间满足时间阈值时,复制所述缓存区域的解码矩阵到处理区域进行滑窗处理。
7.进一步,所述根据自适应步长策略对所述解码矩阵进行滑窗处理的步骤之前,包括:若所述解码矩阵的长度小于预设处理长度,接收下一段解码矩阵并将两者拼接;若拼接后的解码矩阵的长度大于预设处理长度,进行滑窗处理。
8.进一步,所述根据自适应步长策略对所述解码矩阵进行滑窗处理,当滑窗内出现
关键词的置信度满足预设阈值时输出解码结果的步骤,包括:滑窗在预设步长范围内对所述解码矩阵进行搜索,判断是否满足以下条件之一:条件一、所述预设步长范围内的关键词开头的音素对应的概率值是否大于预设阈值,条件二、所述预设步长范围内的解码矩阵每列的概率值最大是否为关键词开头的音素;若满足所述条件一,所述滑窗滑动至第一个出现所述概率值大于预设阈值的位置,判断此时滑窗内出现关键词的置信度是否满足预设阈值,若是,输出解码结果;若满足所述条件二,所述滑窗滑动至所述概率值为关键词开头音素的第一个出现位置,判断当滑窗内出现关键词的置信度是否满足预设阈值,若是,输出解码结果。
9.进一步,所述根据自适应步长策略对所述解码矩阵进行滑窗处理,当滑窗内出现关键词的置信度满足预设阈值时输出解码结果的步骤之后,包括:若滑窗内出现关键词的置信度不满足预设阈值,判断所述解码矩阵的末端在预设长度范围内是否获取到关键词开头的音素的概率值;若否,接收下一段解码矩阵;若是,判断是否满足以下条件之一:条件一、所述概率值是否大于预设阈值,条件二、所述概率值是否为所述预设长度范围内的解码矩阵的最大值;若否,接收下一段解码矩阵;若满足所述条件一,从第一个出现所述概率值大于预设阈值的位置处,截取当前位置至末端的一段解码矩阵作为第一解码矩阵,将第一解码矩阵与下一段待处理的解码矩阵进行拼接得到第二解码矩阵,若满足所述条件二,从所述概率值为最大值的位置处,截取当前位置至末端的一段解码矩阵作为第一解码矩阵,将所述第一解码矩阵与下一段待处理的解码矩阵进行拼接得到第二解码矩阵。
10.本发明还提供一种自适应解码装置,包括:获取模块,用于获取语音数据,对所述语音数据进行预处理得到解码矩阵;处理模块,用于根据自适应步长策略对所述解码矩阵进行滑窗处理,当滑窗内出现关键词的置信度满足预设阈值时输出解码结果。
11.进一步,所述获取模块包括:获取子模块一,用于将所述语音数据输入神经网络模型,获得初始解码矩阵;获取子模块二,用于获取所述初始解码矩阵中blank标签对应的概率值;精简子模块,用于若所述概率值大于预设阈值,移除所述概率值对应的特征数据帧,得到精简后的解码矩阵。
12.本发明还提供一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述任一项方法的步骤。
13.本发明还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任一项方法的步骤。
14.相对于现有技术,本发明提供了一种自适应解码方法、装置、计算机设备和存储介质,根据自适应步长策略对解码矩阵进行滑窗处理,使得每次滑窗的步长都是变化,避免滑窗重叠过大或重叠过小的问题出现,减少解码次数和处理时间的同时降低语音信息丢失的可能性。
附图说明
15.图1为本技术一实施例中的自适应解码方法的步骤示意图;图2为本技术另一实施例中的自适应解码方法的步骤示意图;图3为本技术一实施例中的自适应解码装置的结构框图;图4为本技术计算机设备的一实施例结构示意框图。
16.本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
17.应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
18.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
19.参照图1,本发明实施例的一种自适应解码方法,包括s1、获取语音数据,对所述语音数据进行预处理得到解码矩阵;s2、根据自适应步长策略对所述解码矩阵进行滑窗处理,当滑窗内出现关键词的置信度满足预设阈值时输出解码结果。
20.上述步骤s1中,上述语音数据可以是用户通过麦克风输入至该终端设备的语音数据;或者,可以是用户从互联网上下载的语音数据;或者,还可以是该终端设备本地存储的音视频文件中的语音数据。本技术对上述语音数据的来源不作限定。
21.上述步骤s2中,一般来说,经过神经网络预测后,输出的解码矩阵长度是固定的,对解码矩阵经过预处理后,其长度是变化的。比如对1.6s的语音数据(10ms一帧,为160帧),解码矩阵长度为40经过(stride =4 的神经网络后的输出),但对解码矩阵预处理后,其长度是变化的,比如在0~40之间。比如常见的流式处理会选取固定的窗长,然后按照一定的步长进行滑动。这样的处理方式存在如下缺点:一是设置了固定的窗口长度,从而限定了检测的范围。比如窗口长度设定为2s,也就是说唤醒词、命令词要在2s内说完,才能准确检测。对于语速慢的用户,超过2s很容易就没法识别,降低了用户体验;二是步长的选择需要精心设计,如果步长太大容易漏检测,太小则会增加处理频率,延时增加,实时反馈时间变长,用户体验变差;三是输入端的overlap(重叠)处理,比如窗口长度是3s,步长stride=1s,第一次处理的是1-3s数据,第2次处理的是2-4s数据,第一个窗口和第二个窗口中间有重叠,而非完全不相交。单位处理的时间为模型推理和后处理时间的总和,而模型推理一般是整个算法运行时间的主要部分,大大限制了步长的可选范围。步长设定小了,延时严重,设定大了,漏识别会大大增加。通过自适应步长策略对解码矩阵进行滑窗处理,即在滑窗进行处理过程中,根据预设步长范围内的搜索结果进行下一次的步长设定,由于预设步长范围内的搜索结果有所不同,因此滑窗进行滑移的步长都是不同的,直至当滑窗内出现关键词的置信度满足预设阈值时输出解码结果。具体地,在滑窗中进行搜索的算法为f函数,可以使用 greedy search,beam search,或者ctc search的算法对得到关键词的置信度。例如,score = f(window)这个f函数输入是一个窗口,返回的结果是关键词的置信度满足预设阈值。
22.进一步,所述获取语音数据,对所述语音数据进行预处理得到解码矩阵的步骤,包
括:s11、将所述语音数据输入神经网络模型,获得初始解码矩阵;s12、获取所述初始解码矩阵中blank标签对应的概率值;若所述概率值大于预设阈值,移除所述概率值对应的特征数据帧,得到精简后的解码矩阵。
23.本实施例中,神经网络模型输出初始序列矩阵后,识别系统按照预设规则对初始解码矩阵进行精简,减少模型输出(即初始序列矩阵)的数据量。具体地,识别系统获取初始序列矩阵中所有blank标签对应位置的概率值,然后调取预先设置的概率阈值,将各个blank标签对应位置的概率值与预设的概率阈值进行比对,如果blank标签对应位置的概率值大于概率阈值,则将blank标签对应位置的特征数据帧属于无效帧,将初始序列矩阵中概率值大于概率阈值的blank标签对应的特征数据帧移除,从而得到精简后的初始解码矩阵。识别系统对语音识别模型输出的每个初始解码矩阵均做上述精简处理,然后将当前时刻精简后的初始解码矩阵和预设数量个相邻上一时刻精简后的初始解码矩阵进行拼接,得到二次解码矩阵(即二次解码矩阵是在精简后的初始解码矩阵的基础上拼接得到,因而数据量大幅度减少)。
24.进一步,所述若所述概率值大于预设阈值,移除所述概率值对应的特征数据帧,得到精简后的解码矩阵的步骤之后,包括:s111、将所述解码矩阵缓存至缓存区域;s121、当所述缓存区域的缓存时间满足时间阈值时,复制所述缓存区域的解码矩阵到处理区域进行滑窗处理。
25.在处理音频流的过程中,流式语音识别模型支持实时返回识别结果,而非流式语音识别模型需要处理完整句后返回识别结果。上述步骤中实时流式解码处理语音数据的模式,比如缓存间断的语音片段,可以根据较少的信息得出语音识别结果。实时流式语音解码可以通过将历史信息保存在缓存中或者限定使用局部少量的历史信息的方式减少输出识别结果所需的时间。具体地,本实施例中的预设的时间阈值为100毫秒(ms),则自语音数据开始输出的时刻开始,每隔100ms截断出一个解码矩阵,每截出一个解码矩阵后,或者在00ms内接收多个解码矩阵后,便将截取的解码矩阵或者拼接好的解码矩阵复制到处理区域进行滑窗处理。从而,该预设的时间阈值实际上可以反映出解码矩阵的语音识别延时,在上述举例中,时间阈值为100ms,即每100ms就进行一次语音识别处理,这样对用户而言,可以感知到语音识别输出的文字仅比实际说话晚100ms,不用等待用户整句话说完才进行语音识别。不同的语音识别应用场景对语音识别处理的时间阈值的需求不同,因此,在实际应用中,可以确定与当前触发语音识别需求的语音识别应用场景相对应的时间阈值,以便采用该时间阈值对语音数据流进行分块切割或分块拼接。由此可见,可以预先训练出一个可以适用于不同时间的流式语音处理模型,这样,该流式语音处理模型便可以适用于不同的语音识别应用场景中。简单来说,在训练过程中,可以预先设定多种时间阈值,比如100ms、150ms、300ms,等等。在流式语音处理模型的迭代训练过程中,可以从这些预设的时间阈值中任意地选择每次迭代过程所使用的时间阈值,也就是说,根据被选择的时间阈值对作为训练样本的语音数据进行相应时长的语音数据分块的切割,之后将切割获得的各个语音数据分块分别地输入到流式语音处理模型中,以对其训练。
26.进一步,所述根据自适应步长策略对所述解码矩阵进行滑窗处理的步骤之前,包括:s101、若所述解码矩阵的长度小于预设处理长度,接收下一段解码矩阵并将两者拼接;s102、若拼接后的解码矩阵的长度大于预设处理长度,进行滑窗处理。
27.由于当缓存区域的缓存时间满足时间阈值时,复制所述缓存区域的解码矩阵到处理区域进行滑窗处理,会出现解码矩阵需要进行分块拼接的情况出现。将这多个语音数据分块各自对应的拼接结果输入到语音处理模型中,如果拼接后的解码矩阵的长度过短,包含的语音数据可能不完整或者导致语音处理模型的处理效率不高。针对各语音数据分块来说,语音处理模型需要获得更长距离范围内的上下文信息,从而使得通过离线语音处理模型输出的与这多个语音数据分块对应的关键词序列更加准确。因此当解码矩阵的长度小于预设处理长度,接收下一段解码矩阵并将两者拼接后进行滑窗处理。
28.进一步,参照图2,所述根据自适应步长策略对所述解码矩阵进行滑窗处理,当滑窗内出现关键词的置信度满足预设阈值时输出解码结果的步骤,包括:s21、滑窗在预设步长范围内对所述解码矩阵进行搜索,判断是否满足以下条件之一:条件一、所述预设步长范围内的关键词开头的音素对应的概率值是否大于预设阈值,条件二、所述预设步长范围内的解码矩阵每列的概率值最大是否为关键词开头的音素;s23、若满足所述条件一,所述滑窗滑动至第一个出现所述概率值大于预设阈值的位置,判断此时滑窗内出现关键词的置信度是否满足预设阈值,若是,输出解码结果;若满足所述条件二,所述滑窗滑动至所述概率值为关键词开头音素的第一个出现位置,判断当滑窗内出现关键词的置信度是否满足预设阈值,若是,输出解码结果。
29.当上述的每一判断步骤出现另一种判断结果时,还应当包括以下步骤,具体地:s21、滑窗在预设步长范围内对所述解码矩阵进行搜索,判断是否满足以下条件之一:条件一、所述预设步长范围内的关键词开头的音素对应的概率值是否大于预设阈值,条件二、所述预设步长范围内的解码矩阵每列的概率值最大是否为关键词开头的音素;s22、若是,输出解码结果;s23、若满足所述条件一,所述滑窗滑动至第一个出现所述概率值大于预设阈值的位置,判断此时滑窗内出现关键词的置信度是否满足预设阈值,若是,输出解码结果;若满足所述条件二,所述滑窗滑动至所述概率值为关键词开头音素的第一个出现位置,判断当滑窗内出现关键词的置信度是否满足预设阈值,若是,输出解码结果。
30.s24、所述条件一和所述条件二均不满足,滑窗以预设步长在所述解码矩阵进行一次滑动。
31.例如在本实施例中的解码矩阵长度为40,滑窗的窗口长度为20,预设步长为10,滑窗在预设步长为10的范围内对解码矩阵搜索,此时,滑窗的最左端的位置处于第1个列向量的位置,此时判断当前的滑窗内出现关键词的置信度是否满足预设阈值。若当前的滑窗内出现关键词的置信度满足预设阈值,输出解码结果。如果若当前的滑窗内出现关键词的置信度不满足预设阈值,判断是否满足以下条件之一:条件一、所述预设步长范围内的关键词开头的音素的概率值是否大于预设阈值,条件二、所述预设步长范围内的解码矩阵每列的概率值最大是否为关键词开头的音素,所述条件一和所述条件二均不满足时,滑窗以预设
步长为10的步长在解码矩阵进行一次滑动,此时,滑窗的最左端的位置处于第11个列向量的位置,执行步骤s21。如果在滑窗在预设步长为10的范围内对解码矩阵搜索的过程中,关键词开头的音素对应的概率值大于预设阈值或解码矩阵每列的概率值最大为关键词开头的音素,当第一个概率值出现的地方为第5个列向量的位置或者最大值出现的位置为第5个列向量的位置,那么滑窗的最左端位移至第5个列向量的位置,此时,滑窗的步长不再是之前的步长为10,而是步长为5。若当前的滑窗内出现关键词的置信度满足预设阈值,输出解码结果。如果没有出现关键词开头的音素对应的概率值大于预设阈值或解码矩阵每列的概率值最大为关键词开头的音素,那么对预设步长为10的范围内进行搜索,即第5个到第15个列向量内进行搜索,具体步骤如步骤s21所述,故不再赘述。通过滑窗在滑移的过程中根据搜索预设步长内的结果对步长进行调整,使得每次滑窗的步长都是变化,避免滑窗重叠过大或重叠过小的问题出现,减少解码次数和处理时间的同时降低语音信息丢失的可能性。
32.进一步,所述根据自适应步长策略对所述解码矩阵进行滑窗处理,当滑窗内出现关键词的置信度满足预设阈值时输出解码结果的步骤之后,包括:s31、若滑窗内出现关键词的置信度不满足预设阈值,判断所述解码矩阵的末端在预设长度范围内是否获取到关键词开头的音素的概率值;s32、若否,接收下一段解码矩阵;s33、若是,判断是否满足以下条件之一:条件一、所述概率值是否大于预设阈值,条件二、所述概率值是否为所述预设长度范围内的解码矩阵的最大值;s34、若否,接收下一段解码矩阵;s35、若满足所述条件一,从第一个出现所述概率值大于预设阈值的位置处,截取当前位置至末端的一段解码矩阵作为第一解码矩阵,将第一解码矩阵与下一段待处理的解码矩阵进行拼接得到第二解码矩阵,若满足所述条件二,从所述概率值为最大值的位置处,截取当前位置至末端的一段解码矩阵作为第一解码矩阵,将所述第一解码矩阵与下一段待处理的解码矩阵进行拼接得到第二解码矩阵。
33.由于申请中的处理区域是对缓存区域截断出一个的解码矩阵进行处理,包含有完整语义数据的解码矩阵被截断,如果直接对每一个阶段的解码矩阵进行处理,可能最终的识别结果有误。因此,当滑窗内出现关键词的置信度不满足预设阈值,即需要对下一段语音进行处理了。这时需要判断当前的解码矩阵的末端在预设长度范围内是否获取到关键词开头的音素的概率值。例如,解码矩阵长度为40,预设长度为10,那么判断所述解码矩阵的末端在预设长度范围内是否获取到关键词开头的音素的概率值即在第31列向量和第40列向量之间搜索关键词开头的音素的概率值。若概率值大于预设阈值的位置在第36列的位置,或者概率值的最大值在第36列的位置,那么从第36列的位置处截取第36列至第40列的列向量与下一段待处理的解码矩阵进行拼接得到第二解码矩阵。通过拼接的方式确保了语音数据的完整性,保证对语音数据进行识别的准确性。
34.参照图3,本发明还提供一种自适应解码装置,包括:获取模块1,用于获取语音数据,对所述语音数据进行预处理得到解码矩阵;处理模块2,用于根据自适应步长策略对所述解码矩阵进行滑窗处理,当滑窗内出现关键词的置信度满足预设阈值时输出解码结果。
35.进一步,所述获取模块包括:
获取子模块一,用于将所述语音数据输入神经网络模型,获得初始解码矩阵;获取子模块二,用于获取所述初始解码矩阵中blank标签对应的概率值;精简子模块,用于若所述概率值大于预设阈值,移除所述概率值对应的特征数据帧,得到精简后的解码矩阵。
36.参照图4,本技术实施例中还提供一种计算机设备,该计算机设备的内部结构可以如图4所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和显示装置及输入装置。其中,该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机设备的显示装置用于显示交互页面。该计算机设备的输入装置用于接收用户的输入。该计算机设备设计的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质。该非易失性存储介质存储有操作系统、计算机程序和数据库。该计算机设备的数据库用于存放原始数据。该计算机程序被处理器执行时以实现一种基于智能分析的消息推送方法。
37.上述处理器执行上述的自适应解码方法,获取语音数据,对所述语音数据进行预处理得到解码矩阵;根据自适应步长策略对所述解码矩阵进行滑窗处理,当滑窗内出现关键词的置信度满足预设阈值时输出解码结果。根据自适应步长策略对解码矩阵进行滑窗处理,使得每次滑窗的步长都是变化,避免滑窗重叠过大或重叠过小的问题出现,减少解码次数和处理时间的同时降低语音信息丢失的可能性。
38.进一步,所述获取语音数据,对所述语音数据进行预处理得到解码矩阵的步骤,包括:将所述语音数据输入神经网络模型,获得初始解码矩阵;获取所述初始解码矩阵中blank标签对应的概率值;若所述概率值大于预设阈值,移除所述概率值对应的特征数据帧,得到精简后的解码矩阵。
39.进一步,所述若所述概率值大于预设阈值,移除所述概率值对应的特征数据帧,得到精简后的解码矩阵的步骤之后,包括:将所述解码矩阵缓存至缓存区域;当所述缓存区域的缓存时间满足时间阈值时,复制所述缓存区域的解码矩阵到处理区域进行滑窗处理。
40.进一步,所述根据自适应步长策略对所述解码矩阵进行滑窗处理的步骤之前,包括:若所述解码矩阵的长度小于预设处理长度,接收下一段解码矩阵并将两者拼接;若拼接后的解码矩阵的长度大于预设处理长度,进行滑窗处理。
41.进一步,所述根据自适应步长策略对所述解码矩阵进行滑窗处理,当滑窗内出现关键词的置信度满足预设阈值时输出解码结果的步骤,包括:滑窗在预设步长范围内对所述解码矩阵进行搜索,判断是否满足以下条件之一:条件一、所述预设步长范围内的关键词开头的音素对应的概率值是否大于预设阈值,条件二、所述预设步长范围内的解码矩阵每列的概率值最大是否为关键词开头的音素;若满足所述条件一,所述滑窗滑动至第一个出现所述概率值大于预设阈值的位置,判断此时滑窗内出现关键词的置信度是否满足预设阈值,若是,输出解码结果;若满足
所述条件二,所述滑窗滑动至所述概率值为关键词开头音素的第一个出现位置,判断当滑窗内出现关键词的置信度是否满足预设阈值,若是,输出解码结果。
42.进一步,所述根据自适应步长策略对所述解码矩阵进行滑窗处理,当滑窗内出现关键词的置信度满足预设阈值时输出解码结果的步骤之后,包括:若滑窗内出现关键词的置信度不满足预设阈值,判断所述解码矩阵的末端在预设长度范围内是否获取到关键词开头的音素的概率值;若否,接收下一段解码矩阵;若是,判断是否满足以下条件之一:条件一、所述概率值是否大于预设阈值,条件二、所述概率值是否为所述预设长度范围内的解码矩阵的最大值;若否,接收下一段解码矩阵;若满足所述条件一,从第一个出现所述概率值大于预设阈值的位置处,截取当前位置至末端的一段解码矩阵作为第一解码矩阵,将第一解码矩阵与下一段待处理的解码矩阵进行拼接得到第二解码矩阵,若满足所述条件二,从所述概率值为最大值的位置处,截取当前位置至末端的一段解码矩阵作为第一解码矩阵,将所述第一解码矩阵与下一段待处理的解码矩阵进行拼接得到第二解码矩阵。
43.本技术还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被所述处理器执行时实现一种自适应解码方法,获取语音数据,对所述语音数据进行预处理得到解码矩阵;根据自适应步长策略对所述解码矩阵进行滑窗处理,当滑窗内出现关键词的置信度满足预设阈值时输出解码结果。根据自适应步长策略对解码矩阵进行滑窗处理,使得每次滑窗的步长都是变化,避免滑窗重叠过大或重叠过小的问题出现,减少解码次数和处理时间的同时降低语音信息丢失的可能性。
44.进一步,所述获取语音数据,对所述语音数据进行预处理得到解码矩阵的步骤,包括:将所述语音数据输入神经网络模型,获得初始解码矩阵;获取所述初始解码矩阵中blank标签对应的概率值;若所述概率值大于预设阈值,移除所述概率值对应的特征数据帧,得到精简后的解码矩阵。
45.进一步,所述若所述概率值大于预设阈值,移除所述概率值对应的特征数据帧,得到精简后的解码矩阵的步骤之后,包括:将所述解码矩阵缓存至缓存区域;当所述缓存区域的缓存时间满足时间阈值时,复制所述缓存区域的解码矩阵到处理区域进行滑窗处理。
46.进一步,所述根据自适应步长策略对所述解码矩阵进行滑窗处理的步骤之前,包括:滑窗在预设步长范围内对所述解码矩阵进行搜索,判断是否满足以下条件之一:条件一、所述预设步长范围内的关键词开头的音素对应的概率值是否大于预设阈值,条件二、所述预设步长范围内的解码矩阵每列的概率值最大是否为关键词开头的音素;若满足所述条件一,所述滑窗滑动至第一个出现所述概率值大于预设阈值的位置,判断此时滑窗内出现关键词的置信度是否满足预设阈值,若是,输出解码结果;若满足
所述条件二,所述滑窗滑动至所述概率值为关键词开头音素的第一个出现位置,判断当滑窗内出现关键词的置信度是否满足预设阈值,若是,输出解码结果。
47.进一步,所述根据自适应步长策略对所述解码矩阵进行滑窗处理,当滑窗内出现关键词的置信度满足预设阈值时输出解码结果的步骤之后,包括:若滑窗内出现关键词的置信度不满足预设阈值,判断所述解码矩阵的末端在预设长度范围内是否获取到关键词开头的音素的概率值;若否,接收下一段解码矩阵;若是,判断是否满足以下条件之一:条件一、所述概率值是否大于预设阈值,条件二、所述概率值是否为所述预设长度范围内的解码矩阵的最大值;若否,接收下一段解码矩阵;若满足所述条件一,从第一个出现所述概率值大于预设阈值的位置处,截取当前位置至末端的一段解码矩阵作为第一解码矩阵,将第一解码矩阵与下一段待处理的解码矩阵进行拼接得到第二解码矩阵,若满足所述条件二,从所述概率值为最大值的位置处,截取当前位置至末端的一段解码矩阵作为第一解码矩阵,将所述第一解码矩阵与下一段待处理的解码矩阵进行拼接得到第二解码矩阵。
48.本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本技术所提供的和实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可以包括只读存储器(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)等。
49.需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、装置、物品或者方法不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、装置、物品或者方法所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括该要素的过程、装置、物品或者方法中还存在另外的相同要素。
50.以上所述仅为本技术的优选实施例,并非因此限制本技术的专利范围,凡是利用本技术说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本技术的专利保护范围内。

技术特征:


1.一种自适应解码方法,其特征在于,包括:获取语音数据,对所述语音数据进行预处理得到解码矩阵;根据自适应步长策略对所述解码矩阵进行滑窗处理,当滑窗内出现关键词的置信度满足预设阈值时输出解码结果。2.根据权利要求1所述自适应解码方法,其特征在于,所述获取语音数据,对所述语音数据进行预处理得到解码矩阵的步骤,包括:将所述语音数据输入神经网络模型,获得初始解码矩阵;获取所述初始解码矩阵中blank标签对应的概率值;若所述概率值大于预设阈值,移除所述概率值对应的特征数据帧,得到精简后的解码矩阵。3.根据权利要求2所述自适应解码方法,其特征在于,所述若所述概率值大于预设阈值,移除所述概率值对应的特征数据帧,得到精简后的解码矩阵的步骤之后,包括:将所述解码矩阵缓存至缓存区域;当所述缓存区域的缓存时间满足时间阈值时,复制所述缓存区域的解码矩阵到处理区域进行滑窗处理。4.根据权利要求1所述自适应解码方法,其特征在于,所述根据自适应步长策略对所述解码矩阵进行滑窗处理的步骤之前,包括:若所述解码矩阵的长度小于预设处理长度,接收下一段解码矩阵并将两者拼接;若拼接后的解码矩阵的长度大于预设处理长度,进行滑窗处理。5.根据权利要求1所述自适应解码方法,其特征在于,所述根据自适应步长策略对所述解码矩阵进行滑窗处理,当滑窗内出现关键词的置信度满足预设阈值时输出解码结果的步骤,包括:滑窗在预设步长范围内对所述解码矩阵进行搜索,判断是否满足以下条件之一:条件一、所述预设步长范围内的关键词开头的音素对应的概率值是否大于预设阈值,条件二、所述预设步长范围内的解码矩阵每列的概率值最大是否为关键词开头的音素;若满足所述条件一,所述滑窗滑动至第一个出现所述概率值大于预设阈值的位置,判断此时滑窗内出现关键词的置信度是否满足预设阈值,若是,输出解码结果;若满足所述条件二,所述滑窗滑动至所述概率值为关键词开头音素的第一个出现位置,判断当滑窗内出现关键词的置信度是否满足预设阈值,若是,输出解码结果。6.根据权利要求1所述自适应解码方法,其特征在于,所述根据自适应步长策略对所述解码矩阵进行滑窗处理,当滑窗内出现关键词的置信度满足预设阈值时输出解码结果的步骤之后,包括:若滑窗内出现关键词的置信度不满足预设阈值,判断所述解码矩阵的末端在预设长度范围内是否获取到关键词开头的音素的概率值;若否,接收下一段解码矩阵;若是,判断是否满足以下条件之一:条件一、所述概率值是否大于预设阈值,条件二、所述概率值是否为所述预设长度范围内的解码矩阵的最大值;若否,接收下一段解码矩阵;若满足所述条件一,从第一个出现所述概率值大于预设阈值的位置处,截取当前位置
至末端的一段解码矩阵作为第一解码矩阵,将第一解码矩阵与下一段待处理的解码矩阵进行拼接得到第二解码矩阵,若满足所述条件二,从所述概率值为最大值的位置处,截取当前位置至末端的一段解码矩阵作为第一解码矩阵,将所述第一解码矩阵与下一段待处理的解码矩阵进行拼接得到第二解码矩阵。7.一种自适应解码装置,其特征在于,包括:获取模块,用于获取语音数据,对所述语音数据进行预处理得到解码矩阵;处理模块,用于根据自适应步长策略对所述解码矩阵进行滑窗处理,当滑窗内出现关键词的置信度满足预设阈值时输出解码结果。8.根据权利要求7中所述自适应解码装置,其特征在于,所述获取模块包括:获取子模块一,用于将所述语音数据输入神经网络模型,获得初始解码矩阵;获取子模块二,用于获取所述初始解码矩阵中blank标签对应的概率值;精简子模块,用于若所述概率值大于预设阈值,移除所述概率值对应的特征数据帧,得到精简后的解码矩阵。9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至6中任一项所述方法的步骤。10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6中任一项所述方法的步骤。

技术总结


本发明提供的一种自适应解码方法、装置、计算机设备和存储介质,包括:获取语音数据,对所述语音数据进行预处理得到解码矩阵;根据自适应步长策略对所述解码矩阵进行滑窗处理,当滑窗内出现关键词的置信度满足预设阈值时输出解码结果。根据自适应步长策略对解码矩阵进行滑窗处理,使得每次滑窗的步长都是变化,避免滑窗重叠过大或重叠过小的问题出现,减少解码次数和处理时间的同时降低语音信息丢失的可能性。可能性。可能性。


技术研发人员:

李杰 王广新 杨汉丹

受保护的技术使用者:

深圳市友杰智新科技有限公司

技术研发日:

2022.06.17

技术公布日:

2022/7/22

本文发布于:2024-09-23 01:39:34,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/3/16045.html

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

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