CN111276125B - 一种面向边缘计算的轻量级语音关键词识别方法 - Google Patents
一种面向边缘计算的轻量级语音关键词识别方法 Download PDFInfo
- Publication number
- CN111276125B CN111276125B CN202010087131.3A CN202010087131A CN111276125B CN 111276125 B CN111276125 B CN 111276125B CN 202010087131 A CN202010087131 A CN 202010087131A CN 111276125 B CN111276125 B CN 111276125B
- Authority
- CN
- China
- Prior art keywords
- convolution
- input
- layer
- keyword recognition
- model
- 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
- 238000000034 method Methods 0.000 title claims abstract description 48
- 238000004364 calculation method Methods 0.000 title claims description 12
- 238000007781 pre-processing Methods 0.000 claims abstract description 7
- 238000001228 spectrum Methods 0.000 claims description 26
- 230000008569 process Effects 0.000 claims description 17
- 238000000605 extraction Methods 0.000 claims description 14
- 238000013507 mapping Methods 0.000 claims description 14
- 238000010586 diagram Methods 0.000 claims description 11
- 230000001965 increasing effect Effects 0.000 claims description 10
- 230000003595 spectral effect Effects 0.000 claims description 8
- 238000009432 framing Methods 0.000 claims description 7
- 230000002708 enhancing effect Effects 0.000 claims description 6
- 238000012545 processing Methods 0.000 claims description 6
- 230000004913 activation Effects 0.000 claims description 5
- 210000005036 nerve Anatomy 0.000 claims description 5
- 238000012549 training Methods 0.000 claims description 5
- 238000001914 filtration Methods 0.000 claims description 4
- 238000005070 sampling Methods 0.000 claims description 4
- 208000037170 Delayed Emergence from Anesthesia Diseases 0.000 claims description 3
- 125000004122 cyclic group Chemical group 0.000 claims description 3
- 238000010606 normalization Methods 0.000 claims description 3
- 230000001629 suppression Effects 0.000 claims description 3
- ORILYTVJVMAKLC-UHFFFAOYSA-N Adamantane Natural products C1C(C2)CC3CC1CC2C3 ORILYTVJVMAKLC-UHFFFAOYSA-N 0.000 claims description 2
- 238000006073 displacement reaction Methods 0.000 claims description 2
- 230000001537 neural effect Effects 0.000 claims description 2
- 244000141353 Prunus domestica Species 0.000 claims 1
- 238000013461 design Methods 0.000 abstract description 3
- 230000006870 function Effects 0.000 description 17
- 238000013527 convolutional neural network Methods 0.000 description 9
- 238000013136 deep learning model Methods 0.000 description 6
- 240000007651 Rubus glaucus Species 0.000 description 4
- 235000011034 Rubus glaucus Nutrition 0.000 description 4
- 235000009122 Rubus idaeus Nutrition 0.000 description 4
- 230000009467 reduction Effects 0.000 description 4
- 238000013135 deep learning Methods 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000003860 storage Methods 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 238000011410 subtraction method Methods 0.000 description 2
- 102100032202 Cornulin Human genes 0.000 description 1
- 101000920981 Homo sapiens Cornulin Proteins 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000000945 filler Substances 0.000 description 1
- 238000007667 floating Methods 0.000 description 1
- 238000012886 linear function Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 238000011176 pooling Methods 0.000 description 1
- 238000011946 reduction process Methods 0.000 description 1
- 230000004083 survival effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 230000007704 transition 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/02—Feature extraction for speech recognition; Selection of recognition unit
-
- 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/08—Speech classification or search
- G10L15/16—Speech classification or search using artificial neural networks
-
- 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/08—Speech classification or search
- G10L15/18—Speech classification or search using natural language modelling
-
- 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/20—Speech recognition techniques specially adapted for robustness in adverse environments, e.g. in noise, of stress induced speech
-
- 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/26—Speech to text systems
-
- 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/28—Constructional details of speech recognition systems
- G10L15/34—Adaptation of a single recogniser for parallel processing, e.g. by use of multiple processors or cloud computing
-
- 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
- G10L25/00—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
- G10L25/03—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the type of extracted parameters
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Computational Linguistics (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Theoretical Computer Science (AREA)
- Complex Calculations (AREA)
Abstract
本发明公开了一种面向边缘计算的轻量级语音关键词识别方法,包括下述步骤:信号预处理,剔除噪音信号;声学特征提取;构建采用了首层特征增强方法和轻量级组件的轻量级语音关键词识别模型EdgeCRNN,轻量级组件包括深度可分离卷积和残差结构;构造适合语音关键词识别任务的基础模块Base‑Block和下采样模块CRNN‑Block,并基于基础模块和下采样模块构造EdgeCRNN;将特征输入EdgeCRNN模型中进行语音识别。本发明采用特征增强方法、深度可分离卷积和深度残差结构设计了一种轻量级语音关键词识别模型,极大的减少了硬件资源消耗,使得模型能在资源受限的设备上平稳、流畅地运行,避免了用户隐私的泄露。
Description
技术领域
本发明属于语音识别的技术领域,具体涉及一种面向边缘计算的轻量级语音关键词识别方法。
背景技术
语音关键词识别(Keyword Spotting,KWS)应用通常采用终端采集数据、云端服务器识别的模式,虽然云端服务器具有充足的存储空间和强大的计算能力,能存储和处理大量数据,但是该模式具有潜在延时大的弊端,而且随着数据快速增长,服务器处理数据的压力、传输数据消耗的网络带宽将成倍增加,对服务器运算能力、网络带宽等提出了更高要求,延时也将变得更大,这对基于KWS模型的应用来说,用户体验感将是非常糟糕的。此外,用户数据上传到云端服务器还存在用户隐私泄漏、模型被盗取的隐患,甚至存在违反法律的情况。
然而,在边缘设备上部署KWS模型面临着一个关键挑战:模型推理过程对硬件资源消耗大与边缘设备低消耗需求之间的矛盾。边缘设备存储空间、计算能力等资源比较有限,这会导致模型推理过程受限,甚至无法运行。
语音关键词识别传统方法是采用关键词与填充词的隐马尔可夫模型(Keyword/filter Hidden Marko Model,HMM)和高斯混合模型(Gaussian mixture models,GMMs)。HMM首先建立一张包含关键词和填充词的特殊解码图,然后用Viterbi解码器判断其最优路径,输出概率最高的结果,但是HMM需要提前知道关键词的相关信息才能较准确的识别语音,对于不知道的关键词识别率很差;GMM用于确定每个HMM的状态在多大程度上适合一个帧或表示声音输入的系数帧的短窗口。在对于数据空间中位于或接近非线性流形的数据建模时,GMM统计上的效率较低。
语音关键词识别现代方法是基于深度学习的方法,但是深度学习模型对硬件资源要求较高,所有很多应用都是部署在计算力强、内存大的高性能服务器上。这种模式不仅生产成本高,而且存在用户隐私泄露的问题。
另外现有技术在边缘设备应用上中存在严重的局限性,这是因为边缘设备的CPU、内存等硬件的性能都是比较差的,例如树莓派3B+边缘设备的CPU是单核的ARMs7I芯片,主频只有1.2GHz。然而,深度学习模型推理过程特别是对计算力要求很高,在边缘计算设备上运行深度学习模型时经常会出现卡顿、CPU使用率爆满而关机等情况,从而限制了其在边缘计算设备上的实用性。
发明内容
本发明的主要目的在于克服现有技术的缺点与不足,提供一种面向边缘计算的轻量级语音关键词识别方法,既减轻了服务器和网络传输的压力,又保护了用户隐私。
为了达到上述目的,本发明采用以下技术方案:
本发明一种面向边缘计算的轻量级语音关键词识别方法,包括下述步骤:
对语音信号进行预处理,剔除噪音信号;
对预处理后的语音信号进行特征提取;
构建轻量级语音关键词识别模型,语音关键词识别模型采用了首层特征增强方法和轻量级组件,轻量级组件包括深度可分离卷积和残差结构;
构造适合语音关键词识别任务的基础模块Base-Block和下采样模块CRNN-Block,并基于基础模块和下采样模块构造EdgeCRNN网络结构,EdgeCRNN网络结构由一组CRNN-block和Base-block单元组成,分为三个阶段,每个阶段的第一个单元步长为2,同一个阶段内的其他超参数保持不变,下一个阶段的输出通道数以倍数增加;
将提取的特征输入轻量级语音关键词识别模型,进行语音识别,具体为:
将提取的特征输入EdgeCRNN模型中,EdgeCRNN采用卷积层提取输入特征的局部频域特征、循环神经层提取输入特征的时域特征,最后由全连接层进行特征分类并输出结果,在卷积层中采用Relu作为激活函数增加模型表示能力,批量归一化进行数据处理,交叉熵函数作为损失函数,反向传播中采用Adam作为优化器;循环神经层中采用LSTM。
作为优选的技术方案,所述预处理具体为:
输入语音信号文件;
分帧,把整段语音信号切分成长度为30ms的帧,时间位移为10ms;
利用FFT将时域信号转为频域信号;
采用多窗谱对分帧后的语音信号进行功率谱估计;
计算谱减增益:
其中Py(w)为带噪音信号的功率谱估计,Pn(w)为噪声功率谱估计,a为过减因子,a越大抑制噪声效果越好;
增强后的幅度谱:
|x(w)|=|y(w)|*|g(w)|
其中|y(w)|为在噪音的语音信号,|x(w)|为序列长度;
得到增强后的幅度谱后,加上初始相位θ(w)即可得出在频域增强后的语音,最后由逆向快速傅里叶变换得到增强后的语音:
y(w)=|x(w)|θ(w)。
作为优选的技术方案,在进行特征提取时,采用由LFBE和MFCC的一、二阶差分特征的叠加LFBE-Delta作为模型输入特征,LFBE-Delta特征提取过程如下:
输入信号进行预加重、分帧和加窗;
快速傅里叶变换;
梅尔滤波器组特征提取;
对所有的梅尔频谱取对数得到对数滤波器组能量;
对LFBE进行离散余弦变换,提取MFCC系数;
MFCC的一阶和二阶差分特征提取;
LFBE与Delta和Delta-Delta叠加。
作为优选的技术方案,所述首层特征增强方法具体为:
轻量级语音关键词识别模型首层为卷积层,卷积层主要结构是卷积核,卷积核参数有步长Stride、卷积核尺寸Kernel_Size、padding;所述卷积核选择3×3卷积核,在模型首层中设置stride为1进行增强和集中特征,特征提取可从第二层开始;其他参数采用默认参数;
卷积操作计算公式如下,其中d代表输入维度中的一维,其他维计算类似,m代表卷积核大小,p代表padding大小,s代表步长:
把Conv2D的卷积核数据代入公式中可得输出特征图大小为维,特征减半了;Conv2D的卷积核数据代入公式可得输出特征图大小为d,因此输出特征图大小没有改变,相当于重复提取特征,过滤掉了无用特征,增强了特征。
作为优选的技术方案,所述深度可分离卷积由深度卷积和点卷积组成,深度卷积中卷积核的维度与输入数据的通道数相等,并且一个维度与一个通道特征进行卷积操作,最后输出的通道数与输入通道数不变;点卷积的卷积核尺寸为1x1的,单个卷积核的维度与输入特征通道数相等,然后进行正常卷积操作,输出特征通道数为M。
作为优选的技术方案,所述残差结果的原理如下:
设H(x)作为几个堆叠的层底层映射,x为这几个堆叠层的输入,假设多个非线性层可以渐近的逼近复杂函数,则等效于可渐近地近似残存函数,即H(x)–x,故这些层近似为残差函数:F(x):=H(x)-x,故原函数表示为:H(x)=F(x)+x,F(x)代表残差模块的推理函数,公式如下:
y=F(x,wi)+x
其中,y代表残差模块的输出,wi为权重,残差结构由两部分组成:快捷连接和恒等映射,训练过程中,快捷连接修剪掉多余网络层,恒等映射能让网络变深,而恒等映射有两个:跳跃连接和激活函数;F(x)+x操作是通过快捷连接和恒等映射来执行,既不引入额外的参数,也不增加计算复杂度,可以直接使用输入输出是相同的维度,此时在残差模块输出后与残差模块输入做“加”操作,因此输入特征被增强了,而且在快捷连接过程中,能自动过滤掉无关的神经节点,零参数为0。
作为优选的技术方案,所述基础模块,用于重复提取特征,两分支输入相同,输出进行“Add”操作;所述下采样模块,能减小计算量,相对地增大感受野,两分支输入相同,输出采用“Concat”操作。
本发明与现有技术相比,具有如下优点和有益效果:
1、保护了用户隐私。本发明采用终端采集、推理数据的模式,用户数据不需要上传到服务器端,与现有采用终端采集、上传数据,云端服务器识别的模式相比,减少了用户隐私泄露的概率,进而保护了用户隐私。
2、降低了模型推理成本。本发明提出了一个基于深度可分离卷积和残差结构的轻量级语音关键词识别模型EdgeCRNN,EdgeCRNN对比现有模型每秒浮点计算次数和模型参数个数都减少了,参数个数0.45M个,FLOPSs为14.45M次。
3、提取了更丰富的语音特征。本发明提出了一种基于对数梅尔滤波器组能量和MFCC的一、二阶差分特征组合的LFBE-Delta特征提取方法,能提取光谱图中低维特征、波峰处包络特征、帧之间动态特征等,因此提取的特征更加丰富了。
附图说明
图1是本发明语音关键词识别模型识别流程图。
图2是本发明EdgeCRNN模型推理过程图。
图3是本发明MFCC和LFBE-Delta特征对比图。
图4是本发明深度卷积操作图。
图5是本发明点卷积操作图。
图6是本发明深度残差结构图。
图7(a)、图7(b)是本发明EdgeCRNN模块转中基础模块和下采样模块的结构示意图。
图8是本发明的方法流程图。
具体实施方式
下面结合实施例及附图对本发明作进一步详细的描述,但本发明的实施方式不限于此。
实施例
本发明要解决的技术问题是在边缘计算终端采集数据、服务器识别语音关键词的模式中防止用户隐私泄露,最大限度地减少模型推理过程中对CPU、内存等资源的消耗。
论文“An experimental analysis of the power consumption ofconvolutional neural networks for keyword spotting”分析了一组应用在语音关键词识别任务中的卷积神经网络,论文认为CNN模型有一个简单的架构,相对容易调优,并且在多个深度学习框架中都有实现,例如Tensorflow,Pytorch等框架,关键词识别模型识别过程如图1。
特征提取采用梅尔倒谱系数(Mel-Frequency Cepstrum Coefficient,MFCC)方法,输入语音数据采用频率为16KHz,帧长度为30ms,每帧移动长度为10ms,提取40维MFCC。
语音关键字模型主要由输入层、输出层、隐藏层组成,输入层为输入特征,隐藏层由卷积层组成,输出层采用Softmax损失函数和全连接函数,论文中列举了一系列的模型,如表1的pool2模型结构。其中DNN代表深度神经网络,m、r代表卷积核宽和高,p、q代表池化尺寸。
表1
Type | m | r | n | p | q | 参数 | 相乘次数 |
卷积层 | 21 | 8 | 94 | 2 | 3 | 15.8K | 42.2M |
卷积层 | 6 | 4 | 94 | 1 | 1 | 212K | 60.2M |
线性函数 | - | - | 32 | - | - | 854K | 854K |
DNN | - | - | 128 | - | - | 4.1K | 4.1K |
Softmax | - | - | <![CDATA[n<sub>labels</sub>]]> | - | - | 1.54K | 1.54K |
Total | - | - | - | - | - | 1.09M | 103M |
训练时,采用谷歌语音数据集作为训练集,输出标签分12种,10种是有“yes”,“no”,“up”,“down”等字母组成,另外还有“silence”和“unknown”两种标签。
表2是CNN变种模型在树莓派上测试的性能。
表2
Model | 准确率 | 参数 | 相乘次数 | 延时/次 | 能量/次 | 功耗 |
one-fstride4 | 70.28% | 220K | 1.43M | 40ms | 28mJ | 0.99W |
one-fstride8 | 67.90% | 337K | 1.43M | 42ms | 29mJ | 1.02W |
one-stridel | 77.06% | 954K | 5.76M | 100ms | 115mJ | 1.52W |
trad-pool2 | 87.51% | 1.38M | 98.8M | 146ms | 306mJ | 2.60W |
tpool2 | 91.97% | 1.09M | 103M | 204ms | 384mJ | 2.21W |
Tpool3 | 91.23% | 823K | 73.7M | 159ms | 279mJ | 2.16W |
trad-fpool3 | 89.43% | 1.37M | 125M | 227ms | 431mJ | 2.20W |
其中Tpool2模型准确率最高达到91.97%,但是均衡准确率和模型参数个数、相乘数,Tpool3更轻量,适用于边缘计算设备树莓派3B上。
本发明提供一种面向边缘计算的轻量级语音关键词识别方法,该方法利用轻量级语音关键词识别模型EdgeCRNN对语音进行识别,EdgeCRNN是端到端的。本发明整体流程为:首先对麦克风采集数据进行降噪预处理,然后提取特征,将特征输入模型中,模型推理输出识别结果。EdgeCRNN模型推理过程如图2所示。
如图8所示,本发明面向边缘计算的轻量级语音关键词识别方法,包括下述步骤:
S1、对语音信号进行预处理,剔除噪音信号;
预处理包括语音信号降噪和输入长度对齐,在进行语音信号分析之前,先要去除语音信号中的噪音,为后续语音关键词识别提高基础。降噪技术主要谱相减法、多窗谱估计谱减法、非负线性矩阵算法(Nonnegative Matrix Factorization,NMF)。谱相减法会残留音乐噪声,而另外两种并不会,本发明采用多窗谱估计谱减法作为降噪方法,降噪过程如下:
S1.1、输入语音信号文件;
S1.2、分帧,微观层面语音信号是连续不间断的,但是宏观上看在20-40ms内语音信号是相对平稳,可以近似看作稳态信号,因此可以把整段语音信号切分成长度为30ms的帧;
S1.3、FFT变换,FFT将时域信号转为频域信号,便于进一步分析信号;
S1.4、多窗谱估计噪声。常用的谱估计方法是采用周期性窗,但是会产生频谱泄露的现象,造成方差性能比多窗谱查。因此,采用多窗谱对分帧后的语音信号进行功率谱估计。
S1.5、计算谱减增益:
其中Py(w)为带噪音信号的功率谱估计,Pn(w)为噪声功率谱估计,a为过减因子,a越大抑制噪声效果越好。
S1.6、增强后的幅度谱:
|x(w)|=|y(w)|*|g(w)|
其中|y(w)|为在噪音的语音信号,|x(w)|为序列长度.
S1.7、得到增强后的幅度谱后,加上初始相位θ(w)即可得出在频域增强后的语音,最后由逆向快速傅里叶变换得到增强后的语音:
y(w)=|x(w)|θ(w)。
S2、对预处理后的语音信号进行特征提取;
常见特征提取方法有:梅尔频率倒谱系数(Mel-scale Frequency CepstrumCoefficient,MFCC),每通道能量归一化(per-channel energy normalization,PCEN),MFCC的一阶和二阶偏微分。
语音关键词识别任务中,研究者多采用MFCC或对数梅尔滤波器组能量(logfilter bank energies,LFBE)作为特征提取方法,MFCC只提取了众多特征聚集的包络处的特征,其他有效特征被忽略了,而且特征提取的视野小,容易受噪声、回声、滤波影响。LFBE包含包络在内等更多详细特征。深度学习模型学习和表示能力强,输入数据特征越多深度学习模型能学习越多特征,因而,LFBE更合适。MFCC基础上的一、二阶差分特征,能更好的表示语音帧与帧之间的关联特征,可以弥补分帧带来的数据不连续问题。因此,本发明采用由LFBE和MFCC的一、二阶差分特征的叠加LFBE-Delta作为模型输入特征,能够很好的增强语音特征,LFBE-Delta特征提取过程如下:
·输入信号进行预加重、分帧、加窗;
·快速傅里叶变换(fast Fourier transform,FFT);
·梅尔滤波器组特征提取;
·对所有的梅尔频谱取对数得到对数滤波器组能量(log filterbank energies,
·LFBE);
·对LFBE进行离散余弦变换(Discrete Cosine Transformation,DCT),提取MFCC系数;
·MFCC的一阶和二阶差分特征提取(Delta和Delta-Delta);
·LFBE与Delta和Delta-Delta叠加;
图3是MFCC特征和LFBE-Delta特征对比图。
S3、构建轻量级语音关键词识别模型;
语音关键词识别模型采用了首层特征增强方法和轻量级组件,轻量级组件包括深度可分离卷积和残差结果。
S3.1、首层特征增强;
计算机视觉领域3×224×224的输入数据维度,39维的语音特征显得比较小了;常用的CNN都会在首层卷积操作中开始提取特征,设置卷积stride为2,降低输入map的高和宽;本发明认为在模型首层应该要增强和集中特征,特征提取可以从第二层开始,因此模型第一层卷积层的设计非常重要。卷积层主要结构是卷积核,卷积核参数有步长Stride、卷积核尺寸Kernel_Size、padding,卷积核参数设计如表3,深度学习中常用的卷积核尺寸有1×1,3×3,5×5,7×7,本发明应用在边缘计算设备上,因此选择3×3卷积核,其计算量小;在计算机视觉中,模型输入数据维度通常采用224维度,通过设置卷积stride为2,降低输入map的尺寸。然而,语音识别中较多采用13、40等维,语音特征显得比较少。因此本发明在模型首层中设置stride为1进行增强和集中特征,特征提取可以从第二层开始;其他参数采用默认参数,其中Conv2D代表标准卷积,Conv2D_enhance代表增强卷积。
表3
参数 | Kernel_Size | Stride | Padding |
Conv2D | 3*3 | 2*2 | 1*1 |
Conv2D_enhance | 3*3 | 1*1 | 1*1 |
卷积操作计算公式如下,其中d代表输入维度中一维,其他维计算类似,m代表卷积核大小,p代表padding大小,s代表步长:
把表1中的Conv2D的卷积核数据代入公式中可得输出特征图大小为维,特征减半了;Conv2D的卷积核数据代入公式可得输出特征图大小为d,因此输出特征图大小没有改变,相当于重复提取特征,过滤掉了无用特征,增强了特征。可计算得到添加特征增强的模型计算开销是没有添加的3-4倍。
S3.2、深度可分离卷积;
近年来,深度可分离卷积由于其高效性和减少卷积计算量变得非常流行,在很多轻量化模型研究中逐渐取代了标准卷积核。深度可分离卷积由深度卷积和点卷积组成,深度卷积中卷积核的维度与输入数据的通道数相等,并且一个维度与一个通道特征进行卷积操作,最后输出的通道数与输入通道数不变,如图4;点卷积的卷积核尺寸为1x1的,单个卷积核的维度与输入特征通道数相等,然后进行正常卷积操作,输出特征通道数为M,如图5。
从图4、图5操作中可知道Depthwise Separable Convolutional卷积操作的计算量是标准卷积的运算量倍,其中N为输出Map的channel个数,D为卷积核大小,N往往较大可以忽略,因此深度可分离卷积可以减少D2倍。基于深度可分离卷积的DS-CNN轻量化模型,内存和计算开销的减小了,模型准确率达到了95.4%。
S3.3、构建残差结构;
残存结构原理如下:设H(x)作为几个堆叠的层底层映射,x为这几个堆叠层的输入。假设多个非线性层可以渐近的逼近复杂函数,则等效于它们可以渐近地近似残存函数,即H(x)-x。故这些层近似为残差函数:F(x):=H(x)-x,故原函数表示为:H(x)=F(x)+x,F(x)代表残差模块的推理函数,公式如下:
y=F(x,wi)+x
其中,y代表残差模块的输出,wi为权重。残差结构如图6,残差结构由两部分组成:快捷连接和恒等映射,训练过程中,快捷连接修剪掉多余网络层,恒等映射能让网络变深,而恒等映射主要有两个:跳跃连接和激活函数。F(x)+x操作是通过快捷连接和恒等映射来执行,既引入额外的参数,也不增加计算复杂度,可以直接使用输入输出是相同的维度,此时在残差模块输出后与残差模块输入做“加”操作,因此输入特征被增强了,而且在快捷连接过程中,能自动过滤掉无关的神经节点,零参数为0。当输入维度增加了时,可以选择两个方式处理:增加零来增加维度,或使用点卷积来匹配相应维度,这两种处理方式种Stride都为2。
S3.4、构建EdgeCRNN模块;
如上所示,深度可分离卷积不仅能减少计算量,而且还可以减少模型参数,是当前流行的轻量级结构。残差结构可以提高特征复用,而且不增加计算量。
本发明根据残差结构和深度可分离卷积,参考ShuffleNetV2模型,构造了适合语音关键词识别任务的基础模块(Base-Block)和下采样模块CRNN-Block,如图7(a)和图7(b)所示。图7(a)中为基础模块,用于重复提取特征,两分支输入相同,输出进行“Add”操作;图7(b)为下采样模块,能减小计算量,相对地增大感受野,两分支输入相同,输出采用“Concat”操作。两种模块中分支操作只作用于“同边”的通道信息,阻隔了不同通道信息交流。本发明采用了ShuffleNetV2提出的“channel shuffle”,增强了不同通道信息的交流。
S3.5、构建EdgeCRNN模型;
卷积层对语音特征中的局部时域和频域相关性能很好的建模,捕获局部特征,但CNN模型应用在时间序列模型中存在一个问题:忽略了语音特征上下文特征联系,需要更多层才能在不同频段和帧之间获得足够的相关性,否则无法在音频数据的时间或频率上进行整体建模;循环递归网络能很好的学习数据上下文特征,应用在语音关键词识别中取得了很好的准确率,Arik利用带CE loss的CRNN,在语音关键词识别中取得了高达97.71%的准确率。在CNN基础上添加RNN,同时通过减少RNN层后全连接层的参数降低FLOPs数量,准确率率达到了96.17%。因此,可以将在CNN模型后面添加RNN结构,用于提取语音时间和频率上的连续特征。
本发明利用上述提出的方法和模型,构造了EdgeCRNN网络结构,如表4。EdgeCRNN主要由一组CRNN-block和Base-block单元组成,分为三个阶段,每个阶段的第一个单元步长为2,同一个阶段内的其他超参数保持不变,下一个阶段的输出通道数以倍数增加。
表4
特定的用例或应用程序可能需要模型更小和更快,本发明也采用了WidthMultiplier宽度乘数α,α的作用是统一每一层网络输入输出通道数。例如,给定乘数α,某一层的输入通道数为M,输出通道数为N,则输入通道数为αM和输出通道为αN。因此,EdgeCRNN2x代表Width Multiplier为2的EdgeCRNN模型。表5,总结了EdgeCRNN模型在不同α倍数下的参数、FLOPs指标,并测试了在PC端和树莓派3B+上的推理速度。
表5
本发明是在边缘计算终端采集数据、服务器识别语音关键词的模式中防止用户隐私泄露,最大限度地减少模型推理过程中对CPU、内存等资源的消耗。因此,本发明采用特征增强方法、深度可分离卷积和深度残差结构设计了一种轻量级语音关键词识别模型,极大的减少了硬件资源消耗,使得模型能在资源受限的设备上平稳、流畅地运行,进而避免了用户隐私的泄露。
上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受上述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。
Claims (6)
1.一种面向边缘计算的轻量级语音关键词识别方法,其特征在于,包括下述步骤:
对语音信号进行预处理,剔除噪音信号;
对预处理后的语音信号进行特征提取;
构建轻量级语音关键词识别模型EdgeCRNN,语音关键词识别模型EdgeCRNN采用了首层特征增强方法和轻量级组件;
所述首层特征增强方法具体为:
轻量级语音关键词识别模型首层为卷积层,卷积层主要结构是卷积核,卷积核参数有步长Stride、卷积核尺寸Kernel_Size、padding;所述卷积核选择3×3卷积核,在模型首层中设置stride为1进行增强和集中特征,特征提取可从第二层开始;其他参数采用默认参数;
卷积操作计算公式如下,其中d代表输入维度中的一维,其余维度计算类似,m代表卷积核大小,p代表padding大小,s代表步长:
把Conv2D的卷积核数据代入公式中可得输出特征图大小为维,特征减半了;Conv2D的卷积核数据代入公式可得输出特征图大小为d,因此输出特征图大小没有改变,相当于重复提取特征,过滤掉了无用特征,增强了特征;
所述轻量级组件包括深度可分离卷积和残差结构;根据深度可分离卷积和残差结构构造适合语音关键词识别任务的基础模块Base-Block和下采样模块CRNN-Block,EdgeCRNN模型由一组基础模块Base-Block和下采样模块CRNN-Block组成,分为三个阶段,每个阶段的第一个单元步长为2,同一个阶段内的其他超参数保持不变,下一个阶段的输出通道数以倍数增加;所述基础模块Base-Block,用于重复提取特征,两分支输入相同,输出进行“Add”操作;所述下采样模块CRNN-Block,能减小计算量,相对地增大感受野,两分支输入相同,输出采用“Concat”操作;
将提取的特征输入轻量级语音关键词识别模型,进行语音识别,具体为:
将提取的特征输入EdgeCRNN模型中,EdgeCRNN采用卷积层提取输入特征的局部频域特征、循环神经层提取输入特征的时域特征,最后由全连接层进行特征分类并输出结果,在卷积层中采用Relu作为激活函数增加模型表示能力,批量归一化进行数据处理,交叉熵函数作为损失函数,反向传播中采用Adam作为优化器;循环神经层中采用LSTM。
2.根据权利要求1所述面向边缘计算的轻量级语音关键词识别方法,其特征在于,所述预处理具体为:
输入语音信号文件;
分帧,把整段语音信号切分成长度为30ms的帧,时间位移为10ms;
利用FFT将时域信号转为频域信号;
采用多窗谱对分帧后的语音信号进行功率谱估计;
计算谱减增益:
其中Py(w)为带噪音信号的功率谱估计,Pn(w)为噪声功率谱估计,a为过减因子,a越大抑制噪声效果越好;
增强后的幅度谱:
|x(w)|=|y(w)|*|g(w)|
其中|y(w)|为在噪音的语音信号,|x(w)|为序列长度;
得到增强后的幅度谱后,加上初始相位θ(w)即可得出在频域增强后的语音,最后由逆向快速傅里叶变换得到增强后的语音:
y(w)=|x(w)|θ(w)。
3.根据权利要求 1所述面向边缘计算的轻量级语音关键词识别方法,其特征在于,在进行特征提取时,采用由LFBE和MFCC的一、二阶差分特征的叠加LFBE-Delta作为模型输入特征,LFBE-Delta特征提取过程如下:
输入信号进行预加重、分帧和加窗;
快速傅里叶变换;
梅尔滤波器组特征提取;
对所有的梅尔频谱取对数得到对数滤波器组能量;
对LFBE进行离散余弦变换,提取MFCC系数;
MFCC的一阶和二阶差分特征提取;
LFBE与Delta和Delta-Delta叠加。
4.根据权利要求 1所述面向边缘计算的轻量级语音关键词识别方法,其特征在于,所述深度可分离卷积由深度卷积和点卷积组成,深度卷积中卷积核的维度与输入数据的通道数相等,并且一个维度与一个通道特征进行卷积操作,最后输出的通道数与输入通道数不变;点卷积的卷积核尺寸为1x1的,单个卷积核的维度与输入特征通道数相等,然后进行正常卷积操作,输出特征通道数为M。
6.根据权利要求 1所述面向边缘计算的轻量级语音关键词识别方法,其特征在于,所述残差结构的原理如下:
设H(x)作为几个堆叠的层底层映射,x为这几个堆叠层的输入,假设多个非线性层可以渐近的逼近复杂函数,则等效于可渐近地近似残存函数,即H(x)–x,故这些层近似为残差函数:F(x):=H(x)-x,故原函数表示为:H(x)=F(x)+x,F(x)代表残差模块的推理函数,公式如下:
y=F(x,wi)x
其中,y代表残差模块的输出,wi为权重,残差结构由两部分组成:快捷连接和恒等映射,训练过程中,快捷连接修剪掉多余网络层,恒等映射能让网络变深,而恒等映射有两个:跳跃连接和激活函数;F(x)+x操作是通过快捷连接和恒等映射来执行,既不引入额外的参数,也不增加计算复杂度,可以直接使用输入输出是相同的维度,此时在残差模块输出后与残差模块输入做“加”操作,因此输入特征被增强了,而且在快捷连接过程中,能自动过滤掉无关的神经节点,零参数为0。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010087131.3A CN111276125B (zh) | 2020-02-11 | 2020-02-11 | 一种面向边缘计算的轻量级语音关键词识别方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010087131.3A CN111276125B (zh) | 2020-02-11 | 2020-02-11 | 一种面向边缘计算的轻量级语音关键词识别方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111276125A CN111276125A (zh) | 2020-06-12 |
CN111276125B true CN111276125B (zh) | 2023-04-07 |
Family
ID=71002185
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010087131.3A Active CN111276125B (zh) | 2020-02-11 | 2020-02-11 | 一种面向边缘计算的轻量级语音关键词识别方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111276125B (zh) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111755010A (zh) * | 2020-07-07 | 2020-10-09 | 出门问问信息科技有限公司 | 一种结合语音增强和关键词识别的信号处理方法、装置 |
CN111833878A (zh) * | 2020-07-20 | 2020-10-27 | 中国人民武装警察部队工程大学 | 基于树莓派边缘计算的中文语音交互无感控制系统和方法 |
CN112435652A (zh) * | 2020-09-29 | 2021-03-02 | 江苏清微智能科技有限公司 | 一种基于图卷积神经网络的语音关键词识别系统及方法 |
CN112259080B (zh) * | 2020-10-20 | 2021-06-22 | 北京讯众通信技术股份有限公司 | 一种基于神经网络模型的语音识别方法 |
CN112634870B (zh) * | 2020-12-11 | 2023-05-30 | 平安科技(深圳)有限公司 | 关键词检测方法、装置、设备和存储介质 |
CN112786021B (zh) * | 2021-01-26 | 2024-05-14 | 东南大学 | 一种基于分层量化的轻量级神经网络语音关键词识别方法 |
CN112995287B (zh) * | 2021-02-04 | 2022-09-13 | 中国科学院计算技术研究所 | 一种面向边缘计算的关键词检测任务调度方法 |
CN113296952B (zh) * | 2021-06-01 | 2022-03-18 | 南京大学 | 一种采用模拟传感器高阶微分进行边缘计算的系统及方法 |
CN113409775B (zh) * | 2021-06-25 | 2023-01-10 | 展讯通信(上海)有限公司 | 关键词识别方法及装置、存储介质、计算机设备 |
CN115132231B (zh) * | 2022-08-31 | 2022-12-13 | 安徽讯飞寰语科技有限公司 | 语音活性检测方法、装置、设备及可读存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109460737A (zh) * | 2018-11-13 | 2019-03-12 | 四川大学 | 一种基于增强式残差神经网络的多模态语音情感识别方法 |
CN110148408A (zh) * | 2019-05-29 | 2019-08-20 | 上海电力学院 | 一种基于深度残差的中文语音识别方法 |
CN110189749A (zh) * | 2019-06-06 | 2019-08-30 | 四川大学 | 语音关键词自动识别方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10540961B2 (en) * | 2017-03-13 | 2020-01-21 | Baidu Usa Llc | Convolutional recurrent neural networks for small-footprint keyword spotting |
US10672414B2 (en) * | 2018-04-13 | 2020-06-02 | Microsoft Technology Licensing, Llc | Systems, methods, and computer-readable media for improved real-time audio processing |
-
2020
- 2020-02-11 CN CN202010087131.3A patent/CN111276125B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109460737A (zh) * | 2018-11-13 | 2019-03-12 | 四川大学 | 一种基于增强式残差神经网络的多模态语音情感识别方法 |
CN110148408A (zh) * | 2019-05-29 | 2019-08-20 | 上海电力学院 | 一种基于深度残差的中文语音识别方法 |
CN110189749A (zh) * | 2019-06-06 | 2019-08-30 | 四川大学 | 语音关键词自动识别方法 |
Non-Patent Citations (5)
Title |
---|
ADAM:A Method for Stochastic Optimization;D.Kingma和J.Ba;《arXiv preprint arXiv:1412.6980》;https://arxiv.org/abs/1412.6980;20141231;全文 * |
EdgeCNN Convolutional Neural Network Classification Model with small inputs for Edge Computing;Shunzhi Yang et al.;《arXiv:1909.13522v1[cs.CV]》;20190930;全文 * |
ShuffleNet V2: Practical Guidelines for Efficient CNN Architecture Design;Ningning Ma, Xiangyu Zhang, Hai-Tao Zheng, Jian Sun;《arXiv:1807.11164 [cs.CV]》;20180730;全文 * |
基于深度学习的音乐情感识别;唐霞等;《电脑知识与技术》;20190415(第11期);全文 * |
小小将.ShuffleNetV2:轻量级CNN网络中的桂冠.《https://zhuanlan.zhihu.com/p/48261931》.2018, * |
Also Published As
Publication number | Publication date |
---|---|
CN111276125A (zh) | 2020-06-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111276125B (zh) | 一种面向边缘计算的轻量级语音关键词识别方法 | |
CN110491416B (zh) | 一种基于lstm和sae的电话语音情感分析与识别方法 | |
CN107146601B (zh) | 一种用于说话人识别系统的后端i-vector增强方法 | |
CN109272988B (zh) | 基于多路卷积神经网络的语音识别方法 | |
CN108447495B (zh) | 一种基于综合特征集的深度学习语音增强方法 | |
CN111899757B (zh) | 针对目标说话人提取的单通道语音分离方法及系统 | |
Pang | Spectrum energy based voice activity detection | |
CN110942766A (zh) | 音频事件检测方法、系统、移动终端及存储介质 | |
CN106373559B (zh) | 一种基于对数谱信噪比加权的鲁棒特征提取方法 | |
CN112035696B (zh) | 一种基于音频指纹的语音检索方法及系统 | |
CN110931045A (zh) | 基于卷积神经网络的音频特征生成方法 | |
Dua et al. | Discriminative training using heterogeneous feature vector for Hindi automatic speech recognition system | |
CN112562725A (zh) | 基于语谱图和胶囊网络的混合语音情感分类方法 | |
Soe Naing et al. | Discrete Wavelet Denoising into MFCC for Noise Suppressive in Automatic Speech Recognition System. | |
Hidayat et al. | A Modified MFCC for Improved Wavelet-Based Denoising on Robust Speech Recognition. | |
CN108806725A (zh) | 语音区分方法、装置、计算机设备及存储介质 | |
Kadyan et al. | Improved filter bank on multitaper framework for robust Punjabi-ASR system | |
CN110197657B (zh) | 一种基于余弦相似度的动态音声特征提取方法 | |
Ulkar et al. | Ultra-low power keyword spotting at the edge | |
Hu et al. | A light-weight full-band speech enhancement model | |
CN114023336A (zh) | 模型训练方法、装置、设备以及存储介质 | |
Sharma et al. | A Natural Human-Machine Interaction via an Efficient Speech Recognition System | |
Goodarzi et al. | Model-based clustered sparse imputation for noise robust speech recognition | |
CN107818780B (zh) | 一种基于非线性特征补偿的鲁棒语音识别方法 | |
Yan et al. | Exploring Low-Dimensional Structures of Modulation Spectra for Robust Speech Recognition. |
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 |