当前位置: 首页 > 专利查询>南京大学专利>正文

基于循环神经网络的语音增强模型计算量压缩方法技术

技术编号:35448586 阅读:36 留言:0更新日期:2022-11-03 12:02
本发明专利技术公开了一种基于循环神经网络的语音增强模型计算量压缩方法。该方法包括以下步骤:(1)使用清晰语音数据和噪声数据构造用于训练的含噪语音数据;(2)构建包含至少一个循环神经网络模块的深度神经网络作为语音增强模型;(3)在循环神经网络模块中添加隐状态跳跃结构,并向训练误差函数中添加隐状态跳跃频率的正则化项;(4)使用含噪语音训练数据集训练语音增强模型;(5)在增强阶段使用自适应跳跃或是指定跳跃频率的方式实现循环神经网络的隐状态跳跃更新,实现计算量压缩。本发明专利技术的方法能够使用在多种基于深度学习的语音增强算法中,具有可以在推断时动态调节计算量的能力。力。力。

【技术实现步骤摘要】
基于循环神经网络的语音增强模型计算量压缩方法


[0001]本专利技术属于语音增强的领域,具体涉及一种基于循环神经网络隐状态跳跃更新的语音增强模型计算量压缩方法。

技术介绍

[0002]使用传声器在真实环境中采集到说话人的语音信号时,会同时采集到各种干扰信号,它们可能是背景噪声、房间混响等。这些噪声干扰在信噪比较低时会降低语音的质量,并且使语音识别准确率严重下降。从噪声干扰中提取目标语音的技术称为语音增强技术。
[0003]最近,多种基于深度学习的模型被用于语音增强中。包括卷积神经网络(CNN)、循环神经网络(RNN)和注意力机制(Attention)等模型均成功运用在语音增强领域,并相对于传统的谱减法等算法(Boll,S.F.(1979)Suppression of acoustic noise in speech using spectral subtraction,IEEE Transactions on Acoustics,Speech and Signal Processing,27,113

120.)具有显著的性能优势。一般而言,循环神经网络适合实时处理,而注意力机制更擅长对上下文信息建模。相对于循环神经网络和注意力机制,卷积神经网络使用权重共享机制有着更少的可训练参数。中国专利CN112927707A就使用了一种基于循环神经网络和注意力机制的深度学习模型进行语音增强。然而,为了达到良好性能,这些基于神经网络的语音增强算法具有数十亿的浮点计算需求。对有限计算资源和高实时应用场景,就需要轻量化的网络模型。
[0004]除了直接训练一个小神经网络,通过对大的神经网络进行压缩也常用于神经网络部署。文献(K.Tan and D.Wang,"Towards Model Compression for Deep Learning Based Speech Enhancement,"in IEEE/ACM Transactions on Audio,Speech,and Language Processing,vol.29,pp.1785

1794,2021,doi:10.1109/TASLP.2021.3082282.)已经成功将剪枝和量化等常见的神经网络压缩方法应用在语音增强模型压缩中。文献(Hao,X.,Wen,S.,Su,X.,Liu,Y.,Gao,G.,Li,X.(2020)Sub

Band Knowledge Distillation Framework for Speech Enhancement.Proc.Interspeech 2020,2687

2691,doi:10.21437/Interspeech.2020

1539)应用知识蒸馏方法,通过更大模型的输出来监督更小语音增强模型训练。
[0005]上述方法都在训练阶段进行,无法在推断时结合数据特性动态调整。在实际运用中,根据不同的数据特征或是计算量限制,对语音增强模型的计算量进行灵活的调整具有重要意义。

技术实现思路

[0006]本专利技术提出了一种基于循环神经网络隐状态跳跃更新的语音增强模型计算量压缩方法,该方法能够被运用在具有循环神经网络结构的语音增强模型中,在有限的性能损失下显著降低循环神经网络的平均计算量。
[0007]本专利技术采用的技术方案为:
[0008]基于循环神经网络的语音增强模型计算量压缩方法,包括以下步骤:
[0009]步骤1,使用清晰语音数据和噪声数据构造用于训练的含噪语音数据;
[0010]步骤2,构建包含至少一个循环神经网络模块的深度神经网络作为语音增强模型;
[0011]步骤3,向所述循环神经网络模块中添加隐状态跳跃结构,并向训练误差函数中添加隐状态跳跃频率的正则化项;
[0012]步骤4,以步骤3得到的训练误差函数为目标,使用步骤1的含噪语音数据训练所述深度神经网络;
[0013]步骤5,向完成训练的深度神经网络输入待增强语音的复数时频谱,使用自适应跳跃或是指定跳跃频率的方式实现循环神经网络模块的隐状态跳跃更新,以实现语音增强模型的计算量压缩。
[0014]与现有技术相比,本专利技术的有益效果为:本专利技术的方法能够运用在多种基于深度学习的语音增强网络中,以较低的性能损失显著降低模型运算量,并且可以方便地在运行时调整计算量。
附图说明
[0015]图1是本专利技术方法的处理流程图。
[0016]图2是本专利技术所使用的循环神经网络隐状态跳跃模型处理流程图。
[0017]图3是隐状态跳跃模型在t时刻隐状态跳跃状态的处理流程图。
[0018]图4是隐状态跳跃模型在t时刻隐状态更新状态的处理流程图。
[0019]图5是实施例中使用的双路卷积循环神经网络的具体结构图,其主要结构为编码器、两层双路卷积循环网络、解码器。其中编解码器分别由5层卷积网络和转置卷积网络构成对称结构,并由跳层连接相连,相应的输出通道数被标注在每一个卷积层上方。
[0020]图6是实施例中使用的双路卷积循环神经网络具体结构图,其主要由两个循环神经网络组成,分别是时间维度并行的双向GRU和频率维度并行的单向GRU,每一个GRU层后面连接着一个全连接层和归一化层。
[0021]图7是现有的基于结构化剪枝的算法、直接减少循环神经网络输出维度的方法和本专利技术的方法在测试语音数据集上(a)SDR、(b)PESQ和(c)STOI指标随计算量的变化曲线。
[0022]图8是本专利技术的方法在理想VAD标签和神经网络预测的VAD标签条件下,在测试语音数据集上(a)SDR、(b)PESQ和(c)STOI指标以及(d)循环神经网络的平均更新频率随着γ的变化曲线。
具体实施方式
[0023]本专利技术基于循环神经网络隐状态跳跃更新的语音增强模型计算量压缩方法主要包括以下几个部分:
[0024]1、语音增强模型构建和训练
[0025]1)构造含噪语音数据
[0026]若清晰语音信号为s(t),加性噪声信号为n(t),则构造的含噪语音信号为:
[0027]x(t)=s(t)+n(t)
[0028]对x(t)做N点FFT的短时傅里叶变换,得到T帧F维(F=N/2+1)复数频谱为X=
{x1,...,x
t
},其中将复数频谱分解为实部虚部,并作为语音增强模型的输入。
[0029]2)构建一个拥有循环神经网络模块的语音增强模型
[0030]构建一个基于深度学习的语音增强模型,可以仅仅使用循环神经网络(RNN),也可以是卷积循环神经网络(CRN)。该模型中至少具有一个循环神经网络结构,常见的循环神经网络有长短期记忆网络(LSTM)和门控循环单元(GRU)。该模型以含噪语音特征为输入,以清晰语音特征或是清晰语音掩蔽函数为输出。
[0031]3)在语音增强模型上添加隐状态跳跃模型...

【技术保护点】

【技术特征摘要】
1.基于循环神经网络的语音增强模型计算量压缩方法,其特征在于,包括以下步骤:步骤1,使用清晰语音数据和噪声数据构造用于训练的含噪语音数据;步骤2,构建包含至少一个循环神经网络模块的深度神经网络作为语音增强模型;步骤3,向所述循环神经网络模块中添加隐状态跳跃结构,并向训练误差函数中添加隐状态跳跃频率的正则化项;步骤4,以步骤3得到的训练误差函数为目标,使用步骤1的含噪语音数据训练所述深度神经网络;步骤5,向完成训练的深度神经网络输入待增强语音的复数时频谱,使用自适应跳跃或是指定跳跃频率的方式实现循环神经网络模块的隐状态跳跃更新,以实现语音增强模型的计算量压缩。2.根据权利要求1所述的基于循环神经网络的语音增强模型计算量压缩方法,其特征在于,所述步骤3中,所述隐状态跳跃结构的具体结构如下:向循环神经网络模块添加一个全连接层,用于估计隐状态更新概率;全连接层以循环神经网络上一时刻的隐状态s
t
‑1为输入,以t时刻的微分跳跃概率Δp
t
为输出,表示为:Δp
t
=σ(Ws
t
‑1+b)其中W和b分别表示权重矩阵和偏置向量,σ(
·
)表示sigmoid函数;微分跳跃概率Δp
t
将被累计在t时刻的跳跃概率p
t
上,对累计跳跃概率p
t
通过四舍五入函数得到二值门g
t
,如果g
t
为1则在t时刻使用循环神经网络更新的隐状态输出;如果g
t
为0则使用上一时刻的隐状态s
t
‑1作为输出,计算过程表示为:其中s
t
表示t时刻循环神经网络模块最终的隐状态输出,p
t
的更新公式为:p
t+1
=g
t
Δp
t
+(1

g
t
)(p
t
+min(Δp
t
,1

p
t
))其中p
t+1
表示t+1时刻的累计跳跃概率,mi...

【专利技术属性】
技术研发人员:乐笑怀卢晶
申请(专利权)人:南京大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1