CN113506575B - 流式语音识别的处理方法、装置和计算机设备 - Google Patents
流式语音识别的处理方法、装置和计算机设备 Download PDFInfo
- Publication number
- CN113506575B CN113506575B CN202111054122.5A CN202111054122A CN113506575B CN 113506575 B CN113506575 B CN 113506575B CN 202111054122 A CN202111054122 A CN 202111054122A CN 113506575 B CN113506575 B CN 113506575B
- Authority
- CN
- China
- Prior art keywords
- sequence matrix
- initial
- initial sequence
- voice data
- time
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 22
- 239000011159 matrix material Substances 0.000 claims abstract description 210
- 238000012545 processing Methods 0.000 claims abstract description 106
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 17
- 238000000034 method Methods 0.000 claims description 29
- 238000005070 sampling Methods 0.000 claims description 14
- 238000004590 computer program Methods 0.000 claims description 12
- 238000013144 data compression Methods 0.000 claims description 8
- 238000000605 extraction Methods 0.000 claims description 7
- 238000001514 detection method Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 3
- 238000012805 post-processing Methods 0.000 description 3
- 230000001360 synchronised effect Effects 0.000 description 2
- 206010071299 Slow speech Diseases 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002035 prolonged effect Effects 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/22—Procedures used during a speech recognition process, e.g. man-machine dialogue
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/06—Creation of reference templates; Training of speech recognition systems, e.g. adaptation to the characteristics of the speaker's voice
- G10L15/063—Training
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
- G10L19/02—Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
- G10L19/022—Blocking, i.e. grouping of samples in time; Choice of analysis windows; Overlap factoring
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/22—Procedures used during a speech recognition process, e.g. man-machine dialogue
- G10L2015/223—Execution procedure of a spoken command
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Artificial Intelligence (AREA)
- Spectroscopy & Molecular Physics (AREA)
- Signal Processing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请提供了一种流式语音识别的处理方法、装置和计算机设备,识别系统采集初始语音数据,对初始语音数据进行一次滑窗处理,得到若干个二次语音数据。再按照各个二次语音数据的采集时间顺序,依次将各个二次语音数据输入预先训练的语音识别模型进行处理,得到各个初始序列矩阵。每次语音识别模型输出新的初始序列矩阵时,识别系统将当前时刻的初始序列矩阵与预设数量个相邻上一时刻的初始序列矩阵进行拼接,得到二次序列矩阵。在每次得到新的二次序列矩阵时,对二次序列矩阵进行二次滑窗处理,得到最终序列矩阵。识别系统调用识别算法在所述最终序列矩阵上进行搜索,获得识别结果,处理速度快,准确度高。
Description
技术领域
本申请涉及语音识别技术领域,特别涉及一种流式语音识别的处理方法、装置和计算机设备。
背景技术
唤醒词、命令词识别属于语音识别领域,广泛应用于智能家居、智能终端等场景。现有唤醒词、命令词模型在应用时,实时检测用户的语音,当检测到特定词汇时,即做出反馈。如何在流式语音数据中精准检测出特定词汇,除了跟算法的性能相关外,流式处理的算法也至关重要。比如常见的流式处理会选取固定的窗长,然后按照一定的步长进行滑动。这样的处理方式存在如下缺点:
一是设置了固定的窗口长度,从而限定了检测的范围。比如窗口长度设定为2s,也就是说唤醒词、命令词要在2s内说完,才能准确检测。对于语速慢的用户,超过2s很容易就没法识别,降低了用户体验;
二是步长的选择需要精心设计,如果步长太大容易漏检测,太小则会增加处理频率,延时增加,实时反馈时间变长,用户体验变差;
三是输入端的overlap(重叠)处理,比如窗口长度是3s,步长stride=1s,第一次处理的是1-3s数据,第2次处理的是2-4s数据,第一个窗口和第二个窗口中间有重叠,而非完全不相交。单位处理的时间为模型推理和后处理时间的总和,而模型推理一般是整个算法运行时间的主要部分,大大限制了步长的可选范围。步长设定小了,延时严重,设定大了,漏识别会大大增加。
发明内容
本申请的主要目的为提供一种流式语音识别的处理方法、装置和计算机设备,旨在解决现有流式语音数据的处理方法延时较为严重或者漏识别几率较大的弊端。
为实现上述目的,本申请提供了一种流式语音识别的处理方法,包括:
采集初始语音数据;
对所述初始语音数据进行一次滑窗处理,得到若干个二次语音数据;
按照各所述二次语音数据的采集时间顺序,依次将各所述二次语音数据输入预先训练的语音识别模型进行处理,得到各所述二次语音数据分别对应的初始序列矩阵;
每次所述语音识别模型输出新的初始序列矩阵时,将当前时刻的初始序列矩阵与预设数量个相邻上一时刻的初始序列矩阵进行拼接,得到二次序列矩阵;
在每次得到新的二次序列矩阵时,对所述二次序列矩阵进行二次滑窗处理,得到最终序列矩阵,其中,所述二次滑窗处理时窗口长度与预设命令词长度对应,且相邻窗口之间不做重叠;
调用识别算法在所述最终序列矩阵上进行搜索,获得识别结果。
本申请还提供了一种流式语音识别的处理装置,包括:
采集模块,用于采集初始语音数据;
第一滑窗模块,用于对所述初始语音数据进行一次滑窗处理,得到若干个二次语音数据;
识别模块,用于按照各所述二次语音数据的采集时间顺序,依次将各所述二次语音数据输入预先训练的语音识别模型进行处理,得到各所述二次语音数据分别对应的初始序列矩阵;
拼接模块,用于每次所述语音识别模型输出新的初始序列矩阵时,将当前时刻的初始序列矩阵与预设数量个相邻上一时刻的初始序列矩阵进行拼接,得到二次序列矩阵;
第二滑窗模块,用于在每次得到新的二次序列矩阵时,对所述二次序列矩阵进行二次滑窗处理,得到最终序列矩阵,其中,所述二次滑窗处理时窗口长度与预设命令词长度对应,且相邻窗口之间不做重叠;
搜索模块,用于调用识别算法在所述最终序列矩阵上进行搜索,获得识别结果。
本申请还提供一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器执行所述计算机程序时实现上述任一项所述方法的步骤。
本申请还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任一项所述的方法的步骤。
本申请中提供的一种流式语音识别的处理方法、装置和计算机设备,识别系统采集初始语音数据,首先对初始语音数据进行一次滑窗处理,得到若干个二次语音数据。然后按照各个二次语音数据的采集时间顺序,依次将各个二次语音数据输入预先训练的语音识别模型进行处理,得到各个二次语音数据分别对应的初始序列矩阵。在每次语音识别模型输出新的初始序列矩阵时,识别系统将当前时刻的初始序列矩阵与预设数量个相邻上一时刻的初始序列矩阵进行拼接,得到二次序列矩阵。在每次得到新的二次序列矩阵时,对二次序列矩阵进行二次滑窗处理,得到最终序列矩阵,其中,二次滑窗处理时窗口长度与预设命令词长度对应,且相邻窗口之间不做重叠。最后,识别系统调用识别算法在所述最终序列矩阵上进行搜索,获得识别结果。本申请中,语音识别模型的输入端进行一次滑窗处理和输出端进行二次滑窗处理相结合,从而保证了语音识别模型的高命中率,有效避免漏识别命令词。同时,由于语音识别模型的输出端设置了二次滑窗处理,因此在输入端进行一次滑窗处理时,步长可以设置的更大,从而加快处理速度,保证了语音识别模型的实时率。
附图说明
图1是本申请一实施例中流式语音识别的处理方法的步骤示意图;
图2是本申请一实施例中流式语音识别的处理装置的整体结构框图;
图3是本申请一实施例的计算机设备的结构示意框图。
本申请目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
参照图1,本申请一实施例中提供了一种流式语音识别的处理方法,包括:
S1:采集初始语音数据;
S2:对所述初始语音数据进行一次滑窗处理,得到若干个二次语音数据;
S3:按照各所述二次语音数据的采集时间顺序,依次将各所述二次语音数据输入预先训练的语音识别模型进行处理,得到各所述二次语音数据分别对应的初始序列矩阵;
S4:每次所述语音识别模型输出新的初始序列矩阵时,将当前时刻的初始序列矩阵与预设数量个相邻上一时刻的初始序列矩阵进行拼接,得到二次序列矩阵;
S5:在每次得到新的二次序列矩阵时,对所述二次序列矩阵进行二次滑窗处理,得到最终序列矩阵,其中,所述二次滑窗处理时窗口长度与预设命令词长度对应,且相邻窗口之间不做重叠;
S6:调用识别算法在所述最终序列矩阵上进行搜索,获得识别结果。
优选的,所述二次滑窗处理的步长小于所述一次滑窗处理的步长。
本实施例中,识别系统采集用户输入的初始语音数据,然后对初始语音数据进行一次滑窗处理,按照一次滑窗处理的窗口长度和步长将初始语音数据分割成若干个二次语音数据。由于采用的是流式处理方法,在每次通过一次滑窗处理得到一个二次语音数据时,即调用一次语音识别模型以及后处理,并反馈最终的识别结果,从而根据该识别结果判断是否识别到命令词(或者说唤醒词)。如果当前次识别到命令词,则不需要对后续的初始语音数据进行相应的处理(包括一次滑窗处理、调用语音识别模型以及后处理)。如果当前次没有识别到命令词,则继续对后续的初始语音数据进行一次滑窗处理、调用语音识别模型等,直至完成对整段初始语音数据的处理,或者识别到命令词。根据流式处理的连续性,识别系统按照各个二次语音数据的采集时间顺序,依次将各个二次语音数据输入预先训练的语音识别模型进行处理,得到各个二次语音数据分别对应的初始序列矩阵。由于本实施例在语音识别模型的输入端和输出端均采用了滑窗处理(输入端对应一次滑窗处理,输出端对应二次滑窗处理),因此一次滑窗处理的步长可以设置的更大(比如设置步长与窗口长度相同),从而大幅度降低处理频率,提高处理效率。而为了保证不会发生漏检的情况,在语音识别模型的输出端则将前后预设数量个相邻时刻对应的初始序列矩阵进行拼接,以避免一次滑窗处理时步长过大导致的漏检情况。具体地,在识别系统刚启动或者缓存重置时(即在语音识别模型输出首个初始序列矩阵时),则在首个初始序列矩阵上使用识别算法进行搜索,从而获取识别结果,不需要对首个初始序列矩阵进行拼接。在得到至少两个初始序列矩阵后,每次语音识别模型输出新的初始序列矩阵时,识别系统将当前时刻的初始序列矩阵与预设数量个相邻上一时刻的初始序列矩阵进行拼接,得到二次序列矩阵。预设数量的具体值可以根据具体应用场景进行设置,其中,当前时刻的初始序列矩阵与预设数量个相邻上一时刻的初始序列矩阵之间具有连续性,比如具有初始序列矩阵A、初始序列矩阵B和初始序列矩阵C,初始序列矩阵A、初始序列矩阵B和初始序列矩阵C对应的处理时间为连续的、相邻的(即语音识别模型第一次输出初始序列矩阵A,第二次输出初始序列矩阵B,第三次输出初始序列矩阵C)。当预设数量为1,当前时刻对应初始序列矩阵C时,则识别系统将初始序列矩阵B和初始序列矩阵C顺序拼接得到二次序列矩阵。当预设数量为2,当前时刻对应初始序列矩阵C时,则将初始序列矩阵A、初始序列矩阵B和初始序列矩阵C顺序拼接得到二次序列矩阵。在每次得到新的二次序列矩阵时,识别系统对二次序列矩阵进行二次滑窗处理,从而得到最终序列矩阵。在进行二次滑窗处理时,窗口长度的设定与用户的语速无关,优选根据命令词的长度(即预设命令词长度)进行相应设置,且相邻窗口之间不做重叠;比如将窗口长度设定为预设命令词长度的1.5倍或2倍等,此时语音识别模型输出端二次滑窗处理的窗口长度远远小于输入端一次滑窗处理的窗口长度。同时,二次滑窗处理的步长可以设置的任意小(优先二次滑窗处理的步长小于一次滑窗处理的步长),由于二次滑窗处理是在模型的输出端,相对于输入端的一次滑窗处理,二次滑窗处理后不需要调用语音识别模型,因此步长设置的较小也不会增加延时,能够有效保证流式语音识别的实时率。识别系统调用识别算法在最终序列矩阵上进行搜索,从而获得识别结果,实现对初始语音数据中命令词的识别。
本实施例中,语音识别模型的输入端进行一次滑窗处理和输出端进行二次滑窗处理相结合,从而保证了语音识别模型的高命中率,有效避免漏识别命令词。同时,由于语音识别模型的输出端设置了二次滑窗处理,因此在输入端进行一次滑窗处理时,步长可以设置的更大,从而加快处理速度,保证了语音识别模型的实时率。
进一步的,所述对所述初始语音数据进行一次滑窗处理,得到若干个二次语音数据的步骤,包括:
S201:对所述初始语音数据进行语音特征提取,得到特征数据帧;
S202:调取预设窗口长度,并基于所述预设窗口长度和预设比例计算得到步长,所述预设比例表征所述步长与所述预设窗口长度之间的比值关系;
S203:根据所述预设窗口长度和所述步长对所述特征数据帧进行分割,得到若干个所述二次语音数据。
优选的,所述预设比例为1:1。
本实施例中,识别系统对初始语音数据进行语音特征提取(即经过时域转频域,比如使用fbank、mfcc等算法实现),得到特征数据帧。然后,识别系统调取预设窗口长度,并基于该预设窗口长度与预设比例计算得到步长。其中,预设比例表征步长与预设窗口长度之间的比值关系;比如预设窗口长度为160,预设比例为1:2,则步长为80。识别系统根据预设窗口长度和步长对特征数据帧进行分割,实现一次滑窗处理,得到若干个二次语音数据。
优选的,预设比例设定为1:1,即步长与预设窗口长度相同,按照该设定在对特征数据帧进行一次滑窗处理时,相邻窗口之间相互独立,互不重叠,从而大幅度提高处理速度、降低处理延时,同时保证了语音识别具有常规的识别准确率。
进一步的,所述每次所述语音识别模型输出新的初始序列矩阵时,将当前时刻的初始序列矩阵与预设数量个相邻上一时刻的初始序列矩阵进行拼接,得到二次序列矩阵的步骤,包括:
S401:获取所述初始序列矩阵中所有blank标签对应的概率值;
S402:调取概率阈值,并将所初始序列矩阵中所述概率值大于所述概率阈值的blank标签所对应的特征数据帧移除,得到精简后的初始序列矩阵;
S403:将当前时刻精简后的初始序列矩阵和预设数量个相邻上一时刻精简后的初始序列矩阵进行拼接,得到所述二次序列矩阵。
本实施例中,语音识别模型输出初始序列矩阵后,识别系统按照预设规则对初始序列矩阵进行精简,减少模型输出(即初始序列矩阵)的数据量。具体地,识别系统获取初始序列矩阵中所有blank标签对应位置的概率值,然后调取预先设置的概率阈值,将各个blank标签对应位置的概率值与概率阈值进行比对,如果blank标签对应位置的概率值大于概率阈值,则将blank标签对应位置的特征数据帧属于无效帧,将初始序列矩阵中概率值大于概率阈值的blank标签对应的特征数据帧移除,从而得到精简后的初始序列矩阵。识别系统对语音识别模型输出的每个初始序列矩阵均做上述精简处理,然后将当前时刻精简后的初始序列矩阵和预设数量个相邻上一时刻精简后的初始序列矩阵进行拼接,得到二次序列矩阵(即二次序列矩阵是在精简后的初始序列矩阵的基础上拼接得到,因而数据量大幅度减少)。
进一步的,所述按照各所述二次语音数据的采集时间顺序,依次将各所述二次语音数据输入预先训练的语音识别模型进行处理,得到各所述二次语音数据分别对应的初始序列矩阵的步骤,包括:
S301:调取预先设置的降采样倍率;
S302:按照各所述二次语音数据的采集时间顺序,依次将各所述二次语音数据输入预先训练的语音识别模型,按照所述降采样倍率进行数据压缩以及卷积处理,得到各所述二次语音数据分别对应的初始序列矩阵。
进一步的,语音识别模型在对二次语音数据进行处理的过程中,还对二次语音数据进行了数据压缩。具体地,二次语音数据输入语音识别模型后,语音识别模型按照预先设定的降采样倍率对二次语音数据进行数据压缩,以及卷积处理,从而得到各二次语音数据分别对应的初始序列矩阵。其中,降采样倍率的具体值由设计人员进行设定,理论上,特征提取后的二次语音数据的数据帧的长度远远大于对应的文本长度,同时,降采样后的数据帧长度大于对应文本转成音素序列的长度,即可做降采样处理。
本实施例中,语音识别模型的输出端由于进行了数据压缩和规则缩减(即上述的精简),大大减少了数据量,且不需要再重复经过模型的运算耗时。因此,二次滑窗处理的步长可设定的几乎任意小,比如步长为1,即可满足实时率的要求,同时大大提升了模型的召回率表现。
进一步的,所述初始序列矩阵的横列表征时间,所述每次所述语音识别模型输出新的初始序列矩阵时,将当前时刻的初始序列矩阵与预设数量个相邻上一时刻的初始序列矩阵进行拼接,得到二次序列矩阵的步骤,还包括:
S404:在得到至少两个所述初始序列矩阵,并且每次所述语音识别模型输出新的初始序列矩阵时,以时间为拼接基准,在初始序列矩阵的横列方向上将所述相邻上一时刻的初始序列矩阵的末端与所述当前时刻的初始序列矩阵的首端对齐拼接,得到所述二次序列矩阵。
本实施例中,本实施例中,初始序列矩阵的横列表征时间,纵列则表征建模单元的类别,比如建模单元为音素,则纵列表征音素。在得到至少两个初始序列矩阵,并且每次语音识别模型输出新的初始序列矩阵时,识别系统以时间为拼接基准,在初始序列矩阵的横列方向上,将相邻上一时刻的初始序列矩阵的末端与当前时刻的初始序列矩阵的首端对齐拼接,从而得到二次序列矩阵,以弥补在模型的输入端做一次滑窗处理时步长设置的较大,可能产生漏检的弊端,提高流式语音识别的准确度。
参照图2,本申请一实施例中还提供了一种流式语音识别的处理装置,包括:
采集模块1,用于采集初始语音数据;
第一滑窗模块2,用于对所述初始语音数据进行一次滑窗处理,得到若干个二次语音数据;
识别模块3,用于按照各所述二次语音数据的采集时间顺序,依次将各所述二次语音数据输入预先训练的语音识别模型进行处理,得到各所述二次语音数据分别对应的初始序列矩阵;
拼接模块4,用于每次所述语音识别模型输出新的初始序列矩阵时,将当前时刻的初始序列矩阵与预设数量个相邻上一时刻的初始序列矩阵进行拼接,得到二次序列矩阵;
第二滑窗模块5,用于在每次得到新的二次序列矩阵时,对所述二次序列矩阵进行二次滑窗处理,得到最终序列矩阵,其中,所述二次滑窗处理时窗口长度与预设命令词长度对应,且相邻窗口之间不做重叠;
搜索模块6,用于调用识别算法在所述最终序列矩阵上进行搜索,获得识别结果。
优选的,所述二次滑窗处理的步长小于所述一次滑窗处理的步长。
进一步的,所述第一滑窗模块2,包括:
提取单元,用于对所述初始语音数据进行语音特征提取,得到特征数据帧;
计算单元,用于调取预设窗口长度,并基于所述预设窗口长度和预设比例计算得到步长,所述预设比例表征所述步长与所述预设窗口长度之间的比值关系;
分割单元,用于根据所述预设窗口长度和所述步长对所述特征数据帧进行分割,得到若干个所述二次语音数据。
优选的,所述预设比例为1:1。
进一步的,所述在拼接模块4,包括:
获取单元,用于获取所述初始序列矩阵中所有blank标签对应的概率值;
移除单元,用于调取概率阈值,并将所初始序列矩阵中所述概率值大于所述概率阈值的blank标签所对应的特征数据帧移除,得到精简后的初始序列矩阵;
拼接单元,用于将当前时刻精简后的初始序列矩阵和预设数量个相邻上一时刻精简后的初始序列矩阵进行拼接,得到所述二次序列矩阵。
进一步的,所述识别模块3,包括:
调取单元,用于调取预先设置的降采样倍率;
压缩单元,用于按照各所述二次语音数据的采集时间顺序,依次将各所述二次语音数据输入预先训练的语音识别模型,按照所述降采样倍率进行数据压缩以及卷积处理,得到各所述二次语音数据分别对应的初始序列矩阵。
进一步的,所述初始序列矩阵的横列表征时间,所述拼接模块4,具体用于:
在得到至少两个所述初始序列矩阵,并且每次所述语音识别模型输出新的初始序列矩阵时,以时间为拼接基准,在初始序列矩阵的横列方向上将所述相邻上一时刻的初始序列矩阵的末端与所述当前时刻的初始序列矩阵的首端对齐拼接,得到所述二次序列矩阵。
本实施例中,流式语音识别的处理装置中各模块、单元用于对应执行与上述流式语音识别的处理方法中的各个步骤,其具体实施过程在此不做详述。
本实施例提供的一种流式语音识别装置,识别系统采集初始语音数据,首先对初始语音数据进行一次滑窗处理,得到若干个二次语音数据。然后按照各个二次语音数据的采集时间顺序,依次将各个二次语音数据输入预先训练的语音识别模型进行处理,得到各个二次语音数据分别对应的初始序列矩阵。在得到至少两个所述初始序列矩阵,并且每次语音识别模型输出新的初始序列矩阵时,识别系统将当前时刻的初始序列矩阵与预设数量个相邻上一时刻的初始序列矩阵进行拼接,得到二次序列矩阵。在每次得到新的二次序列矩阵时,对二次序列矩阵进行二次滑窗处理,得到最终序列矩阵,其中,二次滑窗处理时窗口长度与预设命令词长度对应,且相邻窗口之间不做重叠。最后,识别系统调用识别算法在所述最终序列矩阵上进行搜索,获得识别结果。本申请中,语音识别模型的输入端进行一次滑窗处理和输出端进行二次滑窗处理相结合,从而保证了语音识别模型的高命中率,有效避免漏识别命令词。同时,由于语音识别模型的输出端设置了二次滑窗处理,因此在输入端进行一次滑窗处理时,步长可以设置的更大,从而加快处理速度,保证了语音识别模型的实时率。
参照图3,本申请实施例中还提供一种计算机设备,该计算机设备可以是服务器,其内部结构可以如图3所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设计的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储预设窗口长度等数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种流式语音识别的处理方法。
上述处理器执行上述流式语音识别的处理方法的步骤:
S1:采集初始语音数据;
S2:对所述初始语音数据进行一次滑窗处理,得到若干个二次语音数据;
S3:按照各所述二次语音数据的采集时间顺序,依次将各所述二次语音数据输入预先训练的语音识别模型进行处理,得到各所述二次语音数据分别对应的初始序列矩阵;
S4:每次所述语音识别模型输出新的初始序列矩阵时,将当前时刻的初始序列矩阵与预设数量个相邻上一时刻的初始序列矩阵进行拼接,得到二次序列矩阵;
S5:在每次得到新的二次序列矩阵时,对所述二次序列矩阵进行二次滑窗处理,得到最终序列矩阵,其中,所述二次滑窗处理时窗口长度与预设命令词长度对应,且相邻窗口之间不做重叠;
S6:调用识别算法在所述最终序列矩阵上进行搜索,获得识别结果。
优选的,所述二次滑窗处理的步长小于所述一次滑窗处理的步长。
进一步的,所述对所述初始语音数据进行一次滑窗处理,得到若干个二次语音数据的步骤,包括:
S201:对所述初始语音数据进行语音特征提取,得到特征数据帧;
S202:调取预设窗口长度,并基于所述预设窗口长度和预设比例计算得到步长,所述预设比例表征所述步长与所述预设窗口长度之间的比值关系;
S203:根据所述预设窗口长度和所述步长对所述特征数据帧进行分割,得到若干个所述二次语音数据。
优选的,所述预设比例为1:1。
进一步的,所述每次所述语音识别模型输出新的初始序列矩阵时,将当前时刻的初始序列矩阵与预设数量个相邻上一时刻的初始序列矩阵进行拼接,得到二次序列矩阵的步骤,包括:
S401:获取所述初始序列矩阵中所有blank标签对应的概率值;
S402:调取概率阈值,并将所初始序列矩阵中所述概率值大于所述概率阈值的blank标签所对应的特征数据帧移除,得到精简后的初始序列矩阵;
S403:将当前时刻精简后的初始序列矩阵和预设数量个相邻上一时刻精简后的初始序列矩阵进行拼接,得到所述二次序列矩阵。
进一步的,所述按照各所述二次语音数据的采集时间顺序,依次将各所述二次语音数据输入预先训练的语音识别模型进行处理,得到各所述二次语音数据分别对应的初始序列矩阵的步骤,包括:
S301:调取预先设置的降采样倍率;
S302:按照各所述二次语音数据的采集时间顺序,依次将各所述二次语音数据输入预先训练的语音识别模型,按照所述降采样倍率进行数据压缩以及卷积处理,得到各所述二次语音数据分别对应的初始序列矩阵。
进一步的,所述初始序列矩阵的横列表征时间,所述每次所述语音识别模型输出新的初始序列矩阵时,将当前时刻的初始序列矩阵与预设数量个相邻上一时刻的初始序列矩阵进行拼接,得到二次序列矩阵的步骤,还包括:
S404:在得到至少两个所述初始序列矩阵,并且每次所述语音识别模型输出新的初始序列矩阵时,以时间为拼接基准,在初始序列矩阵的横列方向上将所述相邻上一时刻的初始序列矩阵的末端与所述当前时刻的初始序列矩阵的首端对齐拼接,得到所述二次序列矩阵。
本申请一实施例还提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现一种流式语音识别的处理方法,所述流式语音识别的处理方法具体为:
S1:采集初始语音数据;
S2:对所述初始语音数据进行一次滑窗处理,得到若干个二次语音数据;
S3:按照各所述二次语音数据的采集时间顺序,依次将各所述二次语音数据输入预先训练的语音识别模型进行处理,得到各所述二次语音数据分别对应的初始序列矩阵;
S4:每次所述语音识别模型输出新的初始序列矩阵时,将当前时刻的初始序列矩阵与预设数量个相邻上一时刻的初始序列矩阵进行拼接,得到二次序列矩阵;
S5:在每次得到新的二次序列矩阵时,对所述二次序列矩阵进行二次滑窗处理,得到最终序列矩阵,其中,所述二次滑窗处理时窗口长度与预设命令词长度对应,且相邻窗口之间不做重叠;
S6:调用识别算法在所述最终序列矩阵上进行搜索,获得识别结果。
优选的,所述二次滑窗处理的步长小于所述一次滑窗处理的步长。
进一步的,所述对所述初始语音数据进行一次滑窗处理,得到若干个二次语音数据的步骤,包括:
S201:对所述初始语音数据进行语音特征提取,得到特征数据帧;
S202:调取预设窗口长度,并基于所述预设窗口长度和预设比例计算得到步长,所述预设比例表征所述步长与所述预设窗口长度之间的比值关系;
S203:根据所述预设窗口长度和所述步长对所述特征数据帧进行分割,得到若干个所述二次语音数据。
优选的,所述预设比例为1:1。
进一步的,所述每次所述语音识别模型输出新的初始序列矩阵时,将当前时刻的初始序列矩阵与预设数量个相邻上一时刻的初始序列矩阵进行拼接,得到二次序列矩阵的步骤,包括:
S401:获取所述初始序列矩阵中所有blank标签对应的概率值;
S402:调取概率阈值,并将所初始序列矩阵中所述概率值大于所述概率阈值的blank标签所对应的特征数据帧移除,得到精简后的初始序列矩阵;
S403:将当前时刻精简后的初始序列矩阵和预设数量个相邻上一时刻精简后的初始序列矩阵进行拼接,得到所述二次序列矩阵。
进一步的,所述按照各所述二次语音数据的采集时间顺序,依次将各所述二次语音数据输入预先训练的语音识别模型进行处理,得到各所述二次语音数据分别对应的初始序列矩阵的步骤,包括:
S301:调取预先设置的降采样倍率;
S302:按照各所述二次语音数据的采集时间顺序,依次将各所述二次语音数据输入预先训练的语音识别模型,按照所述降采样倍率进行数据压缩以及卷积处理,得到各所述二次语音数据分别对应的初始序列矩阵。
进一步的,所述初始序列矩阵的横列表征时间,所述每次所述语音识别模型输出新的初始序列矩阵时,将当前时刻的初始序列矩阵与预设数量个相邻上一时刻的初始序列矩阵进行拼接,得到二次序列矩阵的步骤,还包括:
S404:在得到至少两个所述初始序列矩阵,并且每次所述语音识别模型输出新的初始序列矩阵时,以时间为拼接基准,在初始序列矩阵的横列方向上将所述相邻上一时刻的初始序列矩阵的末端与所述当前时刻的初始序列矩阵的首端对齐拼接,得到所述二次序列矩阵。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储与一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的和实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可以包括只读存储器(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)等。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其它变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、装置、第一物体或者方法不仅包括那些要素,而且还包括没有明确列出的其它要素,或者是还包括为这种过程、装置、第一物体或者方法所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、装置、第一物体或者方法中还存在另外的相同要素。
以上所述仅为本申请的优选实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其它相关的技术领域,均同理包括在本申请的专利保护范围内。
Claims (10)
1.一种流式语音识别的处理方法,其特征在于,包括:
采集初始语音数据;
对所述初始语音数据进行一次滑窗处理,得到若干个二次语音数据;
按照各所述二次语音数据的采集时间顺序,依次将各所述二次语音数据输入预先训练的语音识别模型进行处理,得到各所述二次语音数据分别对应的初始序列矩阵;
每次所述语音识别模型输出新的初始序列矩阵时,将当前时刻的初始序列矩阵与预设数量个相邻上一时刻的初始序列矩阵进行拼接,得到二次序列矩阵;
在每次得到新的二次序列矩阵时,对所述二次序列矩阵进行二次滑窗处理,得到最终序列矩阵,其中,所述二次滑窗处理时窗口长度与预设命令词长度对应;
调用识别算法在所述最终序列矩阵上进行搜索,获得识别结果。
2.根据权利要求1所述的流式语音识别的处理方法,其特征在于,所述对所述初始语音数据进行一次滑窗处理,得到若干个二次语音数据的步骤,包括:
对所述初始语音数据进行语音特征提取,得到特征数据帧;
调取预设窗口长度,并基于所述预设窗口长度和预设比例计算得到步长,所述预设比例表征所述步长与所述预设窗口长度之间的比值关系;
根据所述预设窗口长度和所述步长对所述特征数据帧进行分割,得到若干个所述二次语音数据。
3.根据权利要求1所述的流式语音识别的处理方法,其特征在于,所述每次所述语音识别模型输出新的初始序列矩阵时,将当前时刻的初始序列矩阵与预设数量个相邻上一时刻的初始序列矩阵进行拼接,得到二次序列矩阵的步骤,包括:
获取所述初始序列矩阵中所有blank标签对应的概率值;
调取概率阈值,并将所初始序列矩阵中所述概率值大于所述概率阈值的blank标签所对应的特征数据帧移除,得到精简后的初始序列矩阵;
将当前时刻精简后的初始序列矩阵和预设数量个相邻上一时刻精简后的初始序列矩阵进行拼接,得到所述二次序列矩阵。
4.根据权利要求1所述的流式语音识别的处理方法,其特征在于,所述按照各所述二次语音数据的采集时间顺序,依次将各所述二次语音数据输入预先训练的语音识别模型进行处理,得到各所述二次语音数据分别对应的初始序列矩阵的步骤,包括:
调取预先设置的降采样倍率;
按照各所述二次语音数据的采集时间顺序,依次将各所述二次语音数据输入预先训练的语音识别模型,按照所述降采样倍率进行数据压缩以及卷积处理,得到各所述二次语音数据分别对应的初始序列矩阵。
5.根据权利要求1所述的流式语音识别的处理方法,其特征在于,所述初始序列矩阵的横列表征时间,所述每次所述语音识别模型输出新的初始序列矩阵时,将当前时刻的初始序列矩阵与预设数量个相邻上一时刻的初始序列矩阵进行拼接,得到二次序列矩阵的步骤,还包括:
在得到至少两个所述初始序列矩阵,并且每次所述语音识别模型输出新的初始序列矩阵时,以时间为拼接基准,在初始序列矩阵的横列方向上将所述相邻上一时刻的初始序列矩阵的末端与所述当前时刻的初始序列矩阵的首端对齐拼接,得到所述二次序列矩阵。
6.根据权利要求2所述的流式语音识别的处理方法,其特征在于,所述预设比例为1:1。
7.根据权利要求1所述的流式语音识别的处理方法,其特征在于,所述二次滑窗处理的步长小于所述一次滑窗处理的步长。
8.一种流式语音识别的处理装置,其特征在于,包括:
采集模块,用于采集初始语音数据;
第一滑窗模块,用于对所述初始语音数据进行一次滑窗处理,得到若干个二次语音数据;
识别模块,用于按照各所述二次语音数据的采集时间顺序,依次将各所述二次语音数据输入预先训练的语音识别模型进行处理,得到各所述二次语音数据分别对应的初始序列矩阵;
拼接模块,用于每次所述语音识别模型输出新的初始序列矩阵时,将当前时刻的初始序列矩阵与预设数量个相邻上一时刻的初始序列矩阵进行拼接,得到二次序列矩阵;
第二滑窗模块,用于在每次得到新的二次序列矩阵时,对所述二次序列矩阵进行二次滑窗处理,得到最终序列矩阵,其中,所述二次滑窗处理时窗口长度与预设命令词长度对应;
搜索模块,用于调用识别算法在所述最终序列矩阵上进行搜索,获得识别结果。
9.一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至5中任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至5中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111054122.5A CN113506575B (zh) | 2021-09-09 | 2021-09-09 | 流式语音识别的处理方法、装置和计算机设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111054122.5A CN113506575B (zh) | 2021-09-09 | 2021-09-09 | 流式语音识别的处理方法、装置和计算机设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113506575A CN113506575A (zh) | 2021-10-15 |
CN113506575B true CN113506575B (zh) | 2022-02-08 |
Family
ID=78017105
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111054122.5A Active CN113506575B (zh) | 2021-09-09 | 2021-09-09 | 流式语音识别的处理方法、装置和计算机设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113506575B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114783438B (zh) * | 2022-06-17 | 2022-09-27 | 深圳市友杰智新科技有限公司 | 自适应解码方法、装置、计算机设备和存储介质 |
CN114822539A (zh) * | 2022-06-24 | 2022-07-29 | 深圳市友杰智新科技有限公司 | 双窗口语音解码方法、装置、设备和存储介质 |
CN116825109B (zh) * | 2023-08-30 | 2023-12-08 | 深圳市友杰智新科技有限公司 | 语音命令误识别的处理方法、装置、设备和介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107633842A (zh) * | 2017-06-12 | 2018-01-26 | 平安科技(深圳)有限公司 | 语音识别方法、装置、计算机设备及存储介质 |
CN111462777A (zh) * | 2020-03-30 | 2020-07-28 | 厦门快商通科技股份有限公司 | 关键词检索方法、系统、移动终端及存储介质 |
CN111489737A (zh) * | 2020-04-13 | 2020-08-04 | 深圳市友杰智新科技有限公司 | 语音命令识别方法、装置、存储介质及计算机设备 |
CN111933124A (zh) * | 2020-09-18 | 2020-11-13 | 电子科技大学 | 一种可支持自定唤醒词的关键词检测方法 |
CN113327610A (zh) * | 2021-06-30 | 2021-08-31 | 北京有竹居网络技术有限公司 | 一种语音唤醒方法、装置及设备 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11322136B2 (en) * | 2019-01-09 | 2022-05-03 | Samsung Electronics Co., Ltd. | System and method for multi-spoken language detection |
-
2021
- 2021-09-09 CN CN202111054122.5A patent/CN113506575B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107633842A (zh) * | 2017-06-12 | 2018-01-26 | 平安科技(深圳)有限公司 | 语音识别方法、装置、计算机设备及存储介质 |
CN111462777A (zh) * | 2020-03-30 | 2020-07-28 | 厦门快商通科技股份有限公司 | 关键词检索方法、系统、移动终端及存储介质 |
CN111489737A (zh) * | 2020-04-13 | 2020-08-04 | 深圳市友杰智新科技有限公司 | 语音命令识别方法、装置、存储介质及计算机设备 |
CN111933124A (zh) * | 2020-09-18 | 2020-11-13 | 电子科技大学 | 一种可支持自定唤醒词的关键词检测方法 |
CN113327610A (zh) * | 2021-06-30 | 2021-08-31 | 北京有竹居网络技术有限公司 | 一种语音唤醒方法、装置及设备 |
Also Published As
Publication number | Publication date |
---|---|
CN113506575A (zh) | 2021-10-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113506575B (zh) | 流式语音识别的处理方法、装置和计算机设备 | |
CN110689881B (zh) | 语音识别方法、装置、计算机设备和存储介质 | |
EP3979098A1 (en) | Data processing method and apparatus, storage medium, and electronic apparatus | |
CN114783438B (zh) | 自适应解码方法、装置、计算机设备和存储介质 | |
CN113506574A (zh) | 自定义命令词的识别方法、装置和计算机设备 | |
CN109614627B (zh) | 一种文本标点预测方法、装置、计算机设备及存储介质 | |
CN109559735B (zh) | 一种基于神经网络的语音识别方法、终端设备及介质 | |
CN111191032A (zh) | 语料扩充方法、装置、计算机设备和存储介质 | |
CN111914842A (zh) | 车牌信息的识别方法、装置、计算机设备及存储介质 | |
CN111223476A (zh) | 语音特征向量的提取方法、装置、计算机设备和存储介质 | |
CN111091839A (zh) | 语音唤醒方法、装置、存储介质及智能设备 | |
CN113689846B (zh) | 语音识别模型训练方法、装置、计算机设备和存储介质 | |
CN110609618A (zh) | 一种人机对话方法、装置、计算机设备及存储介质 | |
CN108682415A (zh) | 语音搜索方法、装置和系统 | |
CN113569021B (zh) | 用户分类的方法、计算机设备和可读存储介质 | |
CN115101063B (zh) | 低算力语音识别方法、装置、设备及介质 | |
CN113255343A (zh) | 标签数据的语义识别方法、装置、计算机设备及存储介质 | |
CN115497484B (zh) | 语音解码结果处理方法、装置、设备及存储介质 | |
CN111368061B (zh) | 短文本过滤方法、装置、介质及计算机设备 | |
CN113763960B (zh) | 模型输出的后处理方法、装置和计算机设备 | |
CN112183525A (zh) | 一种文本识别模型的构建及文本识别方法和装置 | |
CN113724688B (zh) | 语音识别的后处理方法、装置和计算机设备 | |
CN113113001A (zh) | 人声激活检测方法、装置、计算机设备和存储介质 | |
CN115063710A (zh) | 一种基于双分支注意力机制tcn的时序分析方法 | |
CN115374278A (zh) | 文本处理模型蒸馏方法、装置、计算机设备及介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |