一种基于二值权重卷积神经网络的声纹识别系统转让专利

申请号 : CN202110060398.8

文献号 : CN112767949B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 刘波吴海舸张轩蔡浩葛伟杨军

申请人 : 东南大学

摘要 :

本发明公开了一种基于二值权重卷积神经网络的声纹识别系统,其功能为对采集到的语音信号进行处理判断是否为目标说话人,并输出识别结果。其核心结构包括网络控制模块、权重存储片上静态存储器、数据存储片上静态存储器、通用异步收发传输器接口uart模块、梅尔频率倒谱系数特征提取处理MFCC模块、并转串模块。本发明采用高度复用的二值权重卷积神经网络系统,实现了较好的声纹识别效果同时有效降低了整体计算的功耗和延时。

权利要求 :

1.一种基于二值权重卷积神经网络的声纹识别系统,其特征在于,包括网络控制模块、权重存储片上静态存储器、数据存储片上静态存储器单元、通用异步收发传输器接口模块、梅尔频率倒谱系数特征提取处理模块和并转串模块;

梅尔频率倒谱系数特征提取处理模块、并转串模块和数据存储片上静态存储器单元依次连接,梅尔频率倒谱系数特征提取处理模块接收外部语音数据后进行频谱处理得到神经网络运算所需的语音特征向量,并转串模块从梅尔频率倒谱系数特征提取处理模块接收语音特征向量数据,并将梅尔频率倒谱系数特征提取处理模块输出的并行格式数据转换成串行格式后存入数据存储片上静态存储器单元;

权重存储片上静态存储器与通用异步收发传输器接口模块连接,用于通过通用异步收发传输器接口模块将二值权重卷积神经网络权重参数加载并存储到权重存储片上静态存储器;

网络控制模块与权重存储片上静态存储器、数据存储片上静态存储器单元连接,用于从权重存储片上静态存储器中提取二值权重卷积神经网络权重数据、从数据存储片上静态存储器单元中提取神经网络运算所需的语音特征向量,将提取到的权重数据和语音特征向量数据进行声纹识别计算,输出识别结果,并将识别结果发送到数据存储片上静态存储器单元中进行暂存;

权重存储片上静态存储器存放的二值权重卷积神经网络权重数据的具体格式和内容用如下方式表示:

权重存储片上静态存储器第1‑14行高16位为0,低16位存放卷积核的偏置参数;

权重存储片上静态存储器第15‑28行高16位存放卷积层批标准化运算中的尺度参数,低16位存放批标准化运算中的偏移参数,其中尺度参数为预载的批标准化运算乘系数,偏移参数为批标准化运算偏置加系数;

权重存储片上静态存储器第29‑30行存放全连接层的偏置参数;

权重存储片上静态存储器第31‑32行高16位存放全连接层批标准化运算中的尺度参数,低16位存放批标准化运算中的偏移参数;其中尺度参数为预载的批标准化运算乘系数,偏移参数为批标准化运算偏置加系数;

权重存储片上静态存储器第33‑41行高16位为0,低16位存放卷积核的二值化权重参数;

权重存储片上静态存储器第42‑329行高16位存放全连接层第一个神经元二值化权重参数,低16位存放全连接层第二个神经元二值化权重参数;

权重存储片上静态存储器第330行高16位存放第一个神经元阈值参数,低16位存放第二个神经元阈值参数。

2.根据权利要求1所述的一种基于二值权重卷积神经网络的声纹识别系统,其特征在于,网络控制模块包括地址生成单元、状态机控制单元和智能运算计算单元,状态机控制单元与地址生成单元以及智能运算计算单元连接,用于控制地址生成单元以及智能运算计算单元;

地址生成单元用于跟随时钟在基址的基础上递增生成智能运算计算单元的权重数据、语音特征向量数据读写地址,保证计算时数据的提取与存储不出现偏差;

智能运算计算单元用于权重数据和语音特征向量数据的运算,实现声纹识别功能。

3.根据权利要求1所述的一种基于二值权重卷积神经网络的声纹识别系统,其特征在于,数据存储片上静态存储器单元存储梅尔频率倒谱系数特征提取处理模块传来的语音特征向量数据时按16位的格式存储,存储网络控制模块传来的识别结果数据时按1位的格式存储。

4.根据权利要求1所述的一种基于二值权重卷积神经网络的声纹识别系统,其特征在于,所述梅尔频率倒谱系数特征提取处理模块采用标准26通道梅尔频率倒谱系数特征提取计算单元,所述特征提取计算单元包括分帧模块、求能量模块和梅尔滤波器模块;

分帧模块用于对输入的语音数据进行分帧操作,将分帧后的数据送入求能量模块进行快速傅里叶变换,再通过梅尔滤波器进行梅尔滤波得到梅尔频谱,最后通过倒谱分析得到神经网络运算所需的语音特征向量。

5.根据权利要求1所述的一种基于二值权重卷积神经网络的声纹识别系统,其特征在于,并转串模块从梅尔频率倒谱系数特征提取处理模块每次接收30*16位的数据,分为30个周期输出,每个周期输出一组16位数据,所述数据送向数据存储片上静态存储器单元。

说明书 :

一种基于二值权重卷积神经网络的声纹识别系统

技术领域

[0001] 本发明涉及人工智能神经网络技术领域,尤其是一种基于二值权重卷积神经网络的声纹识别系统。

背景技术

[0002] 伴随着对计算精度和速度的追求日益深入,采用传统结构的神经网络正变得越来越庞大。所以从软件模型和硬件结构两方面对网络压缩的优选的研究也正逐步推进。传统
上来说,采用通用卷积神经网络的方式来处理语音识别任务能获得较高的精确度,但在目
前的情况下会导致过大的硬件开销,并在降低功耗上面临难题。本发明采用了具有高能源
效率的二值权重卷积神经网络,用很少的精确度提升获得了硬件面积和能源效率上的大幅
度提升。传统声纹识别的基础模型采用高斯混合模型,硬件计算电路比较复杂,难以实现复
用,资源利用率低,与主流的语音识别方案兼容性不好。

发明内容

[0003] 本发明的目的是,这了解决传统声纹识别的模型采用高斯混合模型占用存储空间大、且硬件计算电路与主流的语音识别方案兼容性不好的技术问题,本发明设计了一种基
于二值权重卷积神经网络的声纹识别系统,在硬件实现时,采用高度复用的设计,提高资源
利用率,与主流语音识别方法兼容性好,采用二值化的卷积神经网络,有效降低了系统延时
与功耗。
[0004] 本发明的一种基于二值权重卷积神经网络的声纹识别系统,包括网络控制模块、权重存储片上静态存储器、数据存储片上静态存储器、通用异步收发传输器接口(uart)模
块、梅尔频率倒谱系数特征提取处理(MFCC)模块和并转串模块。
[0005] 梅尔频率倒谱系数特征提取处理(MFCC)模块、并转串模块和数据存储片上静态存储器依次连接,梅尔频率倒谱系数特征提取处理(MFCC)模块接收外部语音数据后进行频谱
处理得到神经网络运算所需的语音特征向量数据,并转串模块从梅尔频率倒谱系数特征提
取处理模块接收语音特征向量数据,并转串模块将梅尔频率倒谱系数特征提取处理(MFCC)
模块输出的并行格式数据转换成串行格式后存入数据存储片上静态存储器单元。
[0006] 权重存储片上静态存储器与通用异步收发传输器接口(uart)模块连接,用于通过通用异步收发传输器接口(uart)模块将二值权重卷积神经网络权重参数加载并存储到权
重存储片上静态存储器。
[0007] 网络控制模块与权重存储片上静态存储器以及数据存储片上静态存储器连接,用于从权重存储片上静态存储器中提取二值权重卷积神经网络权重数据,从数据存储片上静
态存储器中提取神经网络运算所需的语音特征向量,并将提取到的权重数据和语音特征向
量数据进行声纹识别计算,输出识别结果,并将识别结果发送到数据存储片上静态存储器
中进行暂存。
[0008] 网络控制模块包括地址生成单元、状态机控制单元和智能运算计算单元,状态机控制单元与地址生成单元以及智能运算计算单元连接,用于控制地址生成单元以及智能运
算计算单元。
[0009] 地址生成单元用于跟随时钟在基址的基础上递增生成智能运算计算单元的权重数据、语音特征向量数据的读写地址,保证计算时数据的提取与存储不出现偏差;智能运算
计算单元用于网络权重数据与语音特征向量数据的运算,实现声纹识别功能;所述状态机
控制单元用于控制地址生成单元与智能运算计算单元,跟随时钟按系统的需要在工作模式
和空闲模式中切换,所述的工作模式是指权重数据、语音特征向量数据已经准备就绪智能
运算计算单元可以开始进行计算,智能运算计算单元中的计算过程如下:按先进行卷积计
算,再进行全连接计算,再进行阈值比较计算的顺序。所述卷积计算将语音特征向量数据和
权重数据按位进行卷积的运算,所述全连接计算将卷积计算得到的每一位结果进行连接,
所属阈值比较计算将全连接计算得到的结果和阈值进行比较得到最终结果。所述的空闲模
式是指权重数据或语音特征向量数据准备没有准备好智能运算计算单元不用进行计算处
于空闲状态。
[0010] 其中权重存储片上静态存储器存放的二值权重卷积神经网络权重数据的具体格式和内容用如下方式表示:
[0011] 权重存储片上静态存储器第1‑14行高16位为0,低16位存放卷积核的偏置参数;
[0012] 权重存储片上静态存储器第15‑28行高16位存放卷积层批标准化运算中的尺度参数,低16位存放批标准化运算中的偏移参数,其中尺度参数为预载的批标准化运算乘系数,
偏移参数为批标准化运算偏置加系数;
[0013] 权重存储片上静态存储器第29‑30行存放全连接层的偏置参数;
[0014] 权重存储片上静态存储器第31‑32行高16位存放全连接层批标准化运算中的尺度参数,低16位存放批标准化运算中的偏移参数;其中尺度参数为预载的批标准化运算乘系
数,偏移参数为批标准化运算加系数。
[0015] 权重存储片上静态存储器第33‑41行高16位为0,低16位存放卷积核的二值化权重参数。
[0016] 权重存储片上静态存储器第42‑329行高16位存放全连接层第一个神经元二值化权重参数,低16位存放全连接层第二个神经元二值化权重参数。
[0017] 权重存储片上静态存储器第330行高16位存放第一个神经元阈值参数,低16位存放第二个神经元阈值参数。
[0018] 优选的,数据存储片上静态存储器单元存储梅尔频率倒谱系数特征提取处理(MFCC)模块传来的语音特征向量数据时按16位的格式存储,存储网络控制模块传来的识别
结果数据时按1位的格式存储。
[0019] 优选的,所述梅尔频率倒谱系数特征提取处理(MFCC)模块采用标准26通道梅尔频率倒谱系数特征提取计算单元,所述特征提取计算单元包括分帧模块、求能量模块和梅尔
滤波器模块。
[0020] 分帧模块用于对输入的语音数据进行分帧操作,再将分帧后的数据送入求能量模块进行快速傅里叶变换处理,再通过梅尔滤波器进行梅尔滤波得到梅尔频谱,并进行倒谱
分析得到神经网络运算所需的语音特征向量。
[0021] 优选的,并转串模块从梅尔频率倒谱系数特征提取处理(MFCC)模块每次接收30*16位的数据,分为30个周期输出,每个周期输出一组16位数据,所述数据送向数据存储片上
静态存储器单元。
[0022] 本发明具有以下有益效果:
[0023] (1)模块化程度高,每个模块功能清晰,各模块之间区分度高,可很方便地对各个模块根据实际需求进行更改和重复使用,而且结构简单,可行性好。
[0024] (2)网络结构参数可以根据实际精度和功耗要求进行调整,在硬件实现时,可以充分节约电路功耗,以实现高能效的目标。
[0025] (3)对核心网络结构采用复用计算单元并可重构的设计,最大化利用硬件资源,有效减小面积占用,并便于进行二次功能扩展。
[0026] (4)深度把握语音数据的特点,采用二值权重卷积网络的设计,数据处理能力强,延时小,系统功耗较低。

附图说明

[0027] 图1为本发明的系统整体架构。
[0028] 图2为本发明的权重存放格式。
[0029] 图3为本发明的系统工作流程图。

具体实施方式

[0030] 下面结合具体实施例,进一步阐明本发明,应理解这些实施例仅用于说明本发明而不用于限制本发明的范围,在阅读了本发明之后,本领域技术人员对本发明的各种等价
形式的修改均落于本申请所附权利要求所限定的范围。
[0031] 如图1所示,基于二值权重卷积神经网络的声纹识别系统整体架构,包括网络控制模块、权重存储片上静态存储器、数据存储片上静态存储器、通用异步收发传输器接口
(uart)模块、梅尔频率倒谱系数特征提取处理(MFCC)模块和并转串模块。由前端硅麦捕捉
语音数据后送入梅尔频率倒谱系数特征提取处理(MFCC)模块进行频谱处理,并由数据存储
单元通过并转串模块接收处理结果进行存储,由通用异步收发传输器接口(uart)模块将权
重数据加载到权重存储单元,由网络控制模块从权重存储单元提取权重数据并从数据存储
单元提取语音特征向量数据结合后进行声纹识别计算,输出识别结果,并将结果送到数据
存储片上静态存储器进行暂存。
[0032] 网络控制模块包括地址生成单元、状态机控制单元、智能运算计算单元。状态机控制单元用于控制地址生成单元与智能运算计算单元,并间接控制系统内的其他模块,跟随
时钟应系统的需求在工作模式和空闲模式中切换,所述的工作模式是指权重数据、语音特
征向量数据已经准备就绪智能运算计算单元可以进行计算,智能运算计算单元中的计算过
程如下:按先进行卷积计算,再进行全连接计算,再进行阈值比较计算的顺序。所述卷积计
算将语音特征向量数据和权重数据按位进行卷积的运算,所述全连接计算将卷积计算得到
的每一位结果进行连接,所属阈值比较计算是将全连接计算得到的结果和阈值进行比较得
到最终结果。地址生成单元用于跟随时钟在基址的基础上递增生成智能运算计算单元所需
的权重、语音特征向量数据在读出和写入是所用的地址,保证计算时数据的提取与存储不
出现偏差,网络权重与数据的运算操作由智能运算计算单元具体实现,实现模块核心的说
话人判别功能。网络控制模块在具体运算时调用智能运算计算单元进行卷积计算、全连接
计算和阈值比较计算,对从数据存储片上静态存储器中提取的语音特征向量数据,和权重
存储片上静态存储器中存放的权重相关参数进行两次卷积计算和一次全连接计算,以在保
证运算精度的同时提高运算效率。
[0033] 权重存储片上静态存储器在网络控制模块计算时为其提供权重数据。具体数据来源是通过通用异步收发传输器接口(uart)模块传递过来并存储在权重存储片上静态存储
器的权重数据。权重存储片上静态存储器存放数据的具体格式如图2所示,并采用如下方式
表示:
[0034] 权重存储片上静态存储器第1‑14行高16位为0,低16位存放卷积核的偏置参数。
[0035] 权重存储片上静态存储器第15‑28行高16位存放卷积层批标准化运算中的尺度参数,低16位存放批标准化运算中的偏移参数。其中尺度参数为预载的批标准化运算乘系数,
偏移参数为批标准化运算偏置加系数。
[0036] 权重存储片上静态存储器第29‑30行存放全连接层的偏置参数。
[0037] 权重存储片上静态存储器第31‑32行高16位存放全连接层批标准化运算中的尺度参数,低16位存放批标准化运算中的偏移参数。其中尺度参数为预载的批标准化运算乘系
数,偏移参数为批标准化运算加系数。
[0038] 权重存储片上静态存储器第33‑41行高16位为0,低16位存放卷积核的二值化权重参数。
[0039] 权重存储片上静态存储器第42‑329行高16位存放全连接层第一个神经元二值化权重参数,低16位存放全连接层第二个神经元二值化权重参数。
[0040] 权重存储片上静态存储器第330行高16位存放第一个神经元阈值参数,低16位存放第二个神经元阈值参数。
[0041] 数据存储片上静态存储器单元负责存储梅尔频率倒谱系数特征提取处理(MFCC)模块计算后的语音特征向量数据并提供给网络控制模块使用,并负责存储网络控制模块计
算完成后输出的数据。数据存储片上静态存储器单元具体存储数据的格式如下所示:存储
梅尔频率倒谱系数特征提取处理(MFCC)模块传来的语音特征向量数据时按16位的格式存
储。存储网络控制模块传来的判别结果数据时按1位的格式存储。
[0042] 通用异步收发传输器接口(uart)模块负责将收到的网络权重参数以串行的格式按照权重存储片上静态存储器的对应格式要求加载到权重存储片上静态存储器进行存储。
通用异步收发传输器接口(uart)模块调用内部的一个先入先出存储器,在接收外部传来的
数据时先按格式在该先入先出存储器内进行缓存,随后收到权重存储片上静态存储器的数
据要求后,按上述权重存储片上静态存储器格式要求将缓存的数据串行输出。
[0043] 梅尔频率倒谱系数特征提取处理(MFCC)模块对前端模拟麦克风捕捉得到的音频信号进行处理得到神经网络运算所需的特征向量。当梅尔频率倒谱系数特征提取处理
(MFCC)模块接收到从前端硅麦经过串转并模块后的并行语音数据后,先通过分帧模块对收
到的语音数据进行分帧处理,帧长为640,帧移位320,语音采样率为16k,因此系统实际工作
时,每20毫秒会有新的320点语音数据传入MFCC模块的分帧模块,MFCC模块的分帧模块模块
包括有两个单端口静态存储器,分别为第一静态存储器和第二静态存储器:第一静态存储
器大小为320*16,第二静态存储器大小为640*16,第一静态存储器用于存储分帧帧叠语音
数据,第二静态存储器用于存储完整的一帧语音数据,用于后续进行快速傅里叶变换操作。
MFCC模块输出1个帧长(640点)语音数据,当第二静态存储器的数据输入全满时,拉高存储
器存满的指示信号,表明当前帧语音数据已经准备好,并将数据送入后续MFCC模块中的求
能量模块对所需特征向量进行求值,所述求能量模块包括快速傅里叶变换模块和梅尔滤波
模块。其中快速傅里叶变换模块采用基2的512点快速傅里叶变换,实部和虚部系数以及梅
尔系数采用固化的方式。本模块中采用的梅尔滤波器的个数为26,梅尔滤波器是在梅尔频
率域上的带通滤波器。
[0044] 所述并转串模块实现将梅尔频率倒谱系数特征提取输出的并行格式数据在存入数据存储片上静态存储器单元前转换成串行格式数据的功能。具体表现为每一次接收数据
时接收到30*16位的数据,随后分为30个周期输出,每个周期输出一组16位数据,并将数据
送向数据存储片上静态存储器单元。
[0045] 所有单元之间相互配合,以如图3所示的方式完成声纹识别判定,具体包括如下步骤:
[0046] 步骤101:录入声音底库时进行训练得到二值权重卷积神经网络权重数据,通过通用异步收发传输器接口(uart)模块加载入权重存储片上静态存储器;
[0047] 步骤102:捕捉到的语音数据串转并后送入梅尔频率倒谱系数特征提取处理(MFCC)模块,进行计算后得到语音特征向量数据并通过并转串模块存入数据存储片上静态
存储器单元。
[0048] 步骤103:网络控制模块依控制指令从数据存储片上静态存储器单元和权重存储片上静态存储器中分别提取语音特征向量数据和权重数据,在智能运算计算单元中进行神
经网络计算。
[0049] 步骤104:状态机控制单元判定智能运算计算单元是否计算完毕,当计算完毕时由智能运算计算单元输出计算结果,由地址生成单元生成结果存放地址。当计算未完毕时由
地址生成单元生成语音特征向量数据提取地址并重复步骤103。
[0050] 步骤105:在智能运算计算单元中将神经网络计算结果与预设阈值进行比较,输出最终判别结果并将判别结果暂存入数据存储片上静态存储器单元。