基于混合噪声场景下的精度可控语音端点判别技术转让专利

申请号 : CN201910746373.6

文献号 : CN112447190A

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 王镇刘波朱文涛于华振范虎郭世晟

申请人 : 南京约顿海姆电子科技有限公司

摘要 :

本发明公开了基于混合噪声场景下的精度可控语音端点判别技术,是基于BCNN神经网络模型以及BWN神经网络模型的一种优化技术,包括语音信号采集模块、神经网络运算模块、特征提取模块、噪声检测模块、可配置N比特数据量化模块、神经网络参数预处理模块。其特征在于:可根据环境信噪比大小动态调整各级网络运算参数。其优势在于:通过各模块动态协同配合,拥有比BWN更小的硬件资源占用率,同时在低信噪比语音端点检测精度显著高于BCNN网络。在多噪声环境,是一种能够在保证一定的识别精度情况下,实现低功耗、低延时、快速及动态可配置的语音端点检测技术。

权利要求 :

1.如权利要求1所述的基于混合噪声场景下的精度可控语音端点判别技术,其特征在于:包括语音信号采集模块、优化设计特征提取模块、神经网络运算模块;增设底噪声检测模块、可配置N比特数据量化模块(其中N=8,4,2,1)、神经网络参数预处理模块;所述语音信号采集模块由语音麦克风采集电路和一个低噪声放大电路构成,语音麦克风采集电路输出结果一方面送入底噪声检测模块,另一方面经过低噪声放大电路送入特征提取模块;所述优化设计特征提取模块由26个矩形数字滤波器构成,采样频率为16KHZ,工作时对连续的语音信号进行滤波处理,输出结果的经过对数运算最终的语音信号特征。与传统梅尔滤波器(MFCC)特征提取方式相比,矩形滤波器具有更快的运算速度、更低的功耗以及可比拟的运算精度;所述神经网络运算模块、增设底噪声检测模块、可配置N比特数据量化模块(其中N=

8,4,2,1)、神经网络参数预处理模块用于实时运算得出带噪声语音的分类阈值信息,上述模块其输入为M帧语音特征信息(M为1,3,6),其输出Z为[0,1]之间唯一确定值,对于输出Z大于0.7的输入语音帧,则判别当前输入语音帧为有用的语音信息,否则则输出无用的噪声信息;基于混合噪声场景下的精度可控语音端点判别技术各模块之间协同配合,根据当前外界场景噪声大小,动态调整神经网络参数预处理模块的工作模式,并在精度可控范围内,更改了前项语音特征提取的滤波器结构,实时对网络运算参数的量化处理,大大减少了乘法硬件单元结构,在最优情况下仅仅需要加法单元进行运算操作。

2.如权利要求1所述的基于混合噪声场景下的精度可控语音端点判别技术,其特征在于:所述底噪声检测模块由底噪声检测电路和阈值比较电路构成;低噪检测电路获取当前采集的语音信号底噪声大小,并计算得出当前语音信噪比大小;当前语音信噪比通过阈值比较电路动态输出当前语音环境下量化位数选取结果。

3.如权利要求1所述的基于混合噪声场景下的精度可控语音端点判别技术,其特征在于:所述可重构K值化神经网络模块由输入层、4个全连接(FC)网络层、可配置N比特数据量化模块、分类层、输出层构成;在电路正常工作时,可配置N比特数据量化模块可根据底噪声模块的输出结果,动态可配置的对网络层数据进行N比特量化,同时并行读取神经网络参数预处理模块的参数输出结果;分类层依据核心网络层输出概率结果判断并输出最终当前语音是否包含有用的声音信息。

4.如权利要求1所述的基于混合噪声场景下的精度可控语音端点判别技术,其特征在于:所述的神经网络参数预处理模块由一个网络参数存储模块以及自适应模式切换模块,具有两种工作模式,即一般模式和高精度模式;该模块可根据电路前端判别的当前环境语音信噪比大小自适应进行工作模式选择,在一般模式下,从存储模块中动态输出二值化(-1或1)的权重、偏置等网络参数;在高精度模式下,则输出2比特权重、偏置等网络参数以满足精度需求。

5.如权利要求1所述的基于混合噪声场景下的精度可控语音端点判别技术,其特征在于:可配置N比特数据量化模块由归一化模块和量化模块构成,可根据前项底噪声检测模块输出的控制信息,动态实现对网路层输出数据参数进行N比特数据量化,其中归一化模块由单元、数据筛选单元、一个二位乘法器构成; 单元将输入的数据转换归一到(-

1,1)之间,数据筛选单元输出由 单元输出的批量值中的绝对值中最大值的倒数,二位乘法器将上述两者输出做乘法运算输出[-1,1]的批量数据;可配置的N位比较器单元(其中N=8、4、2、1),可根据归一化模块输出结果,以及底噪声检测模块输出的控制信息,可配置的N位比较器单元输出结果对应当前数据量化结果。

6.基于混合噪声场景下的精度可控语音端点判别技术,其整个功能的实现流程:步骤

1:通过给定的语音信号采集模块采集当前语音时序信号;步骤2 :利用优化设计特征提取模块,获取语音的特征数据,底噪声检测模块与特征提取模块协同工作,对采集的语音时域信号,检测其底噪声大小同时输出模式控制信息和网络层数据量化控制信息,完成神经网络模块参数设置步骤3:可配置的神经网络模块依据底噪声检测模块给定的控制信息动态读取神经网络参数预处理模块的权重、偏置参数,判定各层数据量化位数最最优结果,并通过神经网络运算模块对进行对语音特征信息进行先验运算;步骤4:通过对网络层输出结果的与预先设定评判规则进行评判,最终输出当前语音的端点检测结果。

说明书 :

基于混合噪声场景下的精度可控语音端点判别技术

技术领域

[0001] 本发明涉及一种基于混合噪声场景下的精度可控语音端点判别技术,属于人工智能神经网络技术领域。
[0002]

背景技术

[0003] 近些年,深度神经网络已经成为人工智能范畴中一个炙手可热的发展方向,这类新技术的革新也使得语音识别技术得到了很好的发展。通常,语音端点检测技术在语音信号识别处理中起关键作用,尤其是在后续语音关键词识别技术中,仅利用前项语音端点检测到的语音片段进行处理可大大减小设备硬件开销,同时满足用户高精度的需求。
[0004] 传统语音端点检测技术多为双门限法、方差法以及谱熵法,电路实现时不仅占用了大量的硬件资源,在低信噪比环境下普遍存在低识别精度、延迟高、速度慢的特点。基于神经网络的语音端点检测技术能很好的克服传统算法低精度、高延迟的特点,因此近些年该项技术得到了很好的发展。
[0005] 但传统的CNN和DNN神经网络任存在很大的问题,主要是由于在网络结构中存在大量的乘法操作,为满足高精度需求必然要牺牲较多的硬件资源,同时网络层间的数据量化也存在问题,这些问题导致在实际硬件电路实现有一定的困难,成为该技术发展的一个重要瓶颈。
[0006] BCNN二值化神经网络以及BWN权重二值化网络的提出则为解决上述问题提供了较好的方案,但两者均存在各自的不足。BCNN二值化神经网络很好的避免了在神经网络层中大乘法操作,极大的降低了硬件开销和功耗,但是该网络在低信噪比环境下识别精度有明显下降,无法满足高精度要求;BWN权重二值化网络满足了低信噪比下的精度要求,但是网络层中并没有减少乘法器个数,在功耗下降方面并没有BCNN二值化神经网络那么明显。
[0007] 当前,如何有效的优化基于神经网络的语音端点技术已成为难点所在。
[0008]

发明内容

[0009] 发明目的:为了更好的与硬件资源兼容以及解决当前语音端点检测技术中存在的高延迟、低精度、高能耗问题,本发明提出一种面向多噪声场景的语音端点检测技术,可大大减少传统神经网络占用大量硬件资源问题,同时可根据环境噪声大小动态调整网络运算参数,在低信噪比环境下实现高精度识别效果。
[0010] 技术方案:基于混合噪声场景下的精度可控语音端点判别技术,动态可配置的对多种噪声环境下实现对连续语音端点的识别处理。本发明的特点是在精度可控范围内,更改了前项语音特征提取的滤波器结构,实时对网络运算参数的量化处理,大大减少了乘法硬件单元结构,在最优情况下仅仅需要加法单元进行运算操作。
[0011] 本发明核心模块为特征提取模块、底噪声检测模块、可配置N比特数据量化模块以及神经网络参数预处理模块。
[0012] 所述底噪声检测模块将输入的声音进行信噪比检测,通过低噪声检测和噪声大小检测得出当前环境的信噪比大小,并将检测的信噪比大小进行阈值比较,信噪比阈值选取为:  ,对应输出的控制信号为:,当检测信噪比高于5dB时,选定当
前工作模式为一般模式,当前数据量化位数选定根据检测的信噪比大小动态输出对应控制信号并配置神经网络参数预处理模块,从存储模块中动态输出二值化(-1或1)的权重、偏置等网络参数。当检测信噪比高于5dB时,选定当前工作模式为高精度模式,数据量化固定为
8bit量化,输出2比特权重、偏置等网络参数以满足精度需求
所述特征提取模块主要由26个矩形滤波器构成,是基于传统梅尔滤波语音特征提取技术的一种优化设计。对于传统的传统梅尔滤波语音特征提取技术,其原理为:给定采样频率,通过对时序语音信号进行512点的FFT运算转换为频域信号,在将该信号与
26个梅尔刻度的滤波器组相乘,最终获得特征信息。由上述所提的26个梅尔刻度的滤波器组为在频域空间上按梅尔刻度分布的26个三角滤波器,因此在实际电路操作中不可避免的涉及乘法操作,不仅占用了硬件资源也引入了额外的功耗。通过将梅尔刻度上的三角滤波器替换为对应的矩形滤波器,这种优化设计避免了乘法操作,相同情况下,识别精度仅下降约1.2%,功耗降低约15%。
[0013] 所述可配置N比特数据量化模块用于对第n层和第n+1层(n=1、2、3、...)之间的批量数据进行数据量化,对于输入批量数据, 单元将所有数据归一化至(-1,1)范围内,数据筛选模块输出归一化后数据的绝对值中最大值的倒数,在依次通过二位乘法器将数据归一化至[-1,1]范围内。上述[-1,1]归一化结果输入至下一级可配置的N位比较器单元,可配置的N位比较器单元原理在于对于比特数据量化(N=1,2,3,4),将[-1,1]间的 等分的端点作为比较器各级输出大小,比较器各级阈值选定为相邻端点数值的一半,(如2比特量化,对应比较器各级输出为: ,对应比较器各级阈值为: ),上述比可配置的N位比较器单元即为对应原始数据的数据量化结果。
[0014] 本发明提供了一种基于混合噪声场景下的精度可控语音端点判别技术,权衡BCNN神经网络以及BWN神经网络之间的优劣,可根据环境信噪比大小动态调整各级网络运算参数,其优势在于:拥有比BWN更小的硬件资源占用率,同时在低信噪比检测精度高于BCNN网络结果。通过低噪声检测模块、优化的语音特征提取模块、可配置N比特数据量化模块以及神经网络参数预处理模块的动态配合,是一种能够实现低功耗、低延时、快速及较高的检测精度的语音端点检测技术。
[0015]

附图说明

[0016] 图1为本发明的整体结构示意图;图2为本发明可配置N比特数据量化模块的示意图;
图3为基于混合噪声场景下的精度可控语音端点判别技术的流程图;
图4为本发明的底噪检测模块输出控制信息的流程图。

具体实施方式

[0017] 下面结合具体实施例,进一步阐明本发明,应理解这些实施例仅用于说明本发明而不用于限制本发明的范围,在阅读了本发明之后,本领域技术人员对本发明的各种等价形式的修改均落于本申请所附权利要求所限定的范围。
[0018] 基于混合噪声场景下的精度可控语音端点判别技术是一种BCNN神经网络以及BWN神经网络算优劣的一种优化技术。可动态根据场景噪声大小,动态配置网络数据参数进行Nbit量化,同时设置系统工作模式,完成对网络权重、偏置参数的配置。这使得即使当前场景信噪比较低的情况下,任然具有较高的检测精度,具有低功耗、低延时、灵活可配置及较高的检测精度的特点。
[0019] 如图1所示整体结构示意图,本发明核心模块为特征提取模块、底噪声检测模块、可配置N比特数据量化模块以及神经网络参数预处理模块,工作时进行如下操作:底噪声检测模块根据环境噪声输出对可配置N比特数据量化模块以及对神经网络参数预处理模块的控制信息,特征提取模块实时输出语音特征信息到神经网络运算模块,神经网络参数预处理模块提供当前网络权重、偏置参数。可配置N比特数据量化模块读取当前控制信息实现对各网络层之间的数据量化。
[0020] 可配置N比特数据量化模块构成如图2所示,对于给定上一网络层输出数据结果,若要求的Nbit量化结果,其量化实现的具体操作如下:设当前层数据输出为X,则:
 其中: 为当前网络层的输入层, 为该层数据量化结果,其量化输出幅值设定在[-
1,1]范围内。
[0021] 神经网络运算模块由网络层包括输入层、4成DNN、softmax层以及输出层组成,进一步的此处4层DNN每层节点说分别为64,128,64,32,每层DNN包括批量归一化层(Batch-Normalization)和RELU激活层,可配置N比特数据量化模块实际操作为对每层DNN间所述网路层输出进行量化(但不包括第一个DNN层),最终softmax层输出为二分类(语音或者噪声)概率值,输出层根据该对应概率值输出最终的识别结果。
[0022] 对于上述神经网络运算模块,其所需网络参数(权重、偏置)为通过训练所得的权重量化值,其训练过程算法如下:对于正向传播权重参数,采用同数据量化相同的量化方法。在一般模式下采用1bit权重量化,权重量化结果为-1或1,即:
高精度模式下采用2bit权重量化,权重量化结果为 。
[0023] 训练过程中反向传播权重更新任然采用浮点数更新:即:进一步的这里反向梯度损失函数选取为交叉熵损失函数,梯度下降法采用adam梯度下降算法。
[0024] 上述所获取的量化权重参数、偏置参数存入图1中的网络参数存数模块,偏置在训练过程中并不做任何量化处理,因此保存为16位的浮点数。
[0025] 本发明提出了基于混合噪声场景下的精度可控语音端点判别技术,具体的技术实现步骤如下:如图3所示,对于场景环境下任意连续语音信号:
步骤1:通过给定的语音信号采集模块采集当前语音时序信号 。该模块由语音麦克风采集电路和一个低噪声放大电路构成,工作时,语音信号采样频率固定为16000HZ,采集到实时语音时序输入至特侦提取模块和底噪生检测模块。
[0026] 步骤2 :获取语音的特征数据,完成神经网络模块参数设置。
[0027] 具体的可分为:步骤2A1:特征提取模块获当前语音时序信号 ,并对其进行预加重、加窗处理。其中,预加重处理其实将时序信号进行高通滤波处理,其传递函数为: ,为了方便硬件实现这里 ;加窗处理采用传统的汉明窗对信号处理,目的在于平滑信号。该过程语音信号输出函数表达式: ,
上步骤输出, 为选定的窗函数。
[0028] 步骤2A2:通过512点的FFT运算得出语音时序信号的频域能量信号并与所选定的26个矩形滤波器组进行滤波处理,在实际硬件电路仅为简单的加法操作处理。
[0029] 步骤2A3:对26个矩形滤波器输出结果进行log运算和DCT运算得出最终完整的语音特征数据。
[0030] 步骤2B1:底噪声检测模块与特征提取模块协同工作,如图4所示:对采集的语音时域信号,检测其底噪声大小,通过与设定的信噪比阈值大小比较,输出模式控制信息和网络层数据量化控制信息。
[0031] 步骤2B2:通过底噪声检测模块输出的控制信息,配置数据量化模块和神经网络参数预处理模块。
[0032] 步骤3:可配置的神经网络模块依据底噪声检测模块给定的控制信息动态读取神经网络参数预处理模块的权重、偏置参数,同时决定当前网络各层数据量化位数选取,并实时对输入的语音特征数据进行运算处理,得到可配置的神经网络模块结果数据。
[0033] 步骤4:通过对网络层输出结果的与预先设定评判规则进行评判,最终输出当前语音的端点检测结果。