首页> 中国专利> 一种深度双向门递归神经网络的骨导语音增强方法

一种深度双向门递归神经网络的骨导语音增强方法

摘要

本发明提出了一种深度双向门递归神经网络的骨导语音增强方法,利用双向门递归神经网络模型训练骨导到气导语音特征,并利用训练好的双向门递归神经网络模型增强骨导语音。本发明利用深度学习强大的非线性映射性能实现骨导语音特征到气导语音特征的转换,使用的门递归神经网络是长短时记忆递归神经网络的一种变形,可有效对语音的长时依赖进行建模,并且参数更少训练更快,同时本发明从两个方向上对语音特征的上下文进行建模,更能有效恢复骨导语音中缺失信息,并能够有效提升骨导语音的清晰度与可懂度,改善骨导语音质量,达到良好的增强效果。

著录项

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2018-11-13

    授权

    授权

  • 2018-05-01

    实质审查的生效 IPC(主分类):G10L25/30 申请日:20171118

    实质审查的生效

  • 2018-04-06

    公开

    公开

说明书

技术领域

本发明属于语音信号处理技术领域,特别是一种深度双向门递归神经网络的骨导语音增强方法。

背景技术

骨导(Bone Conduction,BC)麦克风是利用人体骨头或组织振动形成电信号的语音采集设备,此类麦克风可有效避免背景噪声干扰,具有很强抗噪性能,在军事和民事上均已得到应用。例如,飞行员利用喉头骨麦克风与地面人员通信,避免机舱内强噪声干扰;伐木工人利用头骨麦克风通信极大减少了大型作业工具的噪声。但是,由于人体信号传导的低通性以及振动信号的固有特点,骨导语音呈现高频部分缺失、中频部分厚重、气流音、鼻腔音缺失等现象,语音听起来沉闷、不清晰,严重影响了人们的听觉感受。骨导语音增强,就是利用技术手段提高骨导语音的可懂度与清晰度,从而提高语音质量。

目前,骨导语音的增强方法主要分为均衡法、频带扩展法、分析合成法三大类。均衡法(Shimamura T,Tamiya T.A reconstruction filter for bone-conducted speech[C],2005.Kondo K,Fujita T,Nakagawa K.On Equalization of Bone Conducted Speech for Improved Speech Quality[C],2006.)通过寻找BC与AC(气导,Air Conduction)语音特征的比例系数即均衡系数实现BC语音增强。该方法在训练过程中使用成对的AC与BC特征计算均衡系数,实际使用时基于计算好的系数来均衡BC语音,特征通常为频谱幅度大小。该方法可增加BC语音的高频成分,语音清晰度有所提升,但是目前的均衡法均是假设特征线性相关,虽然算法复杂度低实现简便,但是并不能符合BC与AC语音特征实际的非线性相关关系,增强后存在语音不连续、失真感明显等问题。频带扩展法(Bouserhal R E,Falk T H,Voix J.In-ear microphone speech quality enhancement via adaptive filtering and artificial bandwidth extension.[J].Journal of the Acoustical Society of America.2017.)认为BC和AC语音信号在低频段(0~2kHz)具有很强相关性,可利用人工频谱扩展技术(Valin,J.M.and R.Lefebvre.Bandwidth extension of narrowband speech for low bit-rate wideband coding.in Speech Coding[J],2000.Bernd,I.and S.Gerhard,Bandwidth Extension of Telephony Speech[J],2008.)直接将BC语音由低频段扩展到高频段(2~4kHz)从而达到增强的目的。这种扩频方法运算快易于硬件实现,但是该方法需要同时获得AC语音,并且BC与AC的低频段并非完全相同,在一定程度上影响了增强效果。分析合成法(PhungNghiaTrung,M.Unoki and M.Akagi,A Study on Restoration of Bone-Conducted Speech in Noisy Environments with LP-based Model and Gaussian Mixture Model[J],2012.Turan,M.A.T.and E.Erzin,Source and Filter Estimation for Throat-Microphone Speech Enhancement[J],2016.Mohammadi,S.H.and A.Kain,An overview of voice conversion systems[J],2017.)将BC语音增强问题看成BC到AC特征的非线性转化问题。该方法首先使用语音分析合成模型,例如预测编码(LPC,Linear predictive coding)模型和STRAIGHT(Speech Transformation and Representation using Adaptive Interpolation of Weighted spectrum)模型,将成对的AC与BC语音信号分解,在训练阶段利用GMM或者简单神经网络映射LPC、LSF或者STRAIGHT谱等特征,得到BC到AC相关参数的映射模型,测试阶段通过转化BC相关参数实现增强。但是BC语音除了高频缺失外,AC语音的气流音、口腔音、鼻音等对应于BC语音无声段,目前所采用的GMM或者简单神经网络映射模型直接从BC语音无声段中恢复出正确的语音信息显得能力不足。

发明内容

本发明的目的在于提供一种深度双向门递归神经网络的骨导语音增强方法,该方法以数据为驱动,通过训练获取模型参数,再利用训练好的模型增强骨导语音,提升了骨导语音的可懂度及清晰度,改善了骨导语音质量。

实现本发明目的的技术解决方案为:一种基于深度双向门递归神经网络的骨导语音增强方法,包括如下步骤:

步骤一:提取气导和骨导语音特征,并对提取的语音特征进行数据预处理以符合神经网络的输入需求,然后进入步骤二进行训练;

步骤二:训练时,以骨导语音特征作为训练输入,以气导语音特征作为训练目标,采用时间反向传播算法训练深度双向门递归神经网络模型,并存储训练好的深度双向门递归神经网络模型;

步骤三:提取待增强的骨导语音特征,并根据步骤一所获得的语音特征数据统计特征进行数据归一化,然后进入步骤四进行骨导语音增强;

步骤四:增强时,利用步骤二训练好的双向门递归神经网络对步骤三提取的骨导语音特征进行增强,再对神经网络的输出进行反归一化和特征逆变换,最终得到增强后的骨导时域语音。

本发明与现有技术相比,其显著优点:将深度双向门递归神经网络应用到骨导语音增强任务中,以数据为驱动,通过训练得到网络模型参数,利用训练好的模型可有效提高骨导语音的可懂度与清晰度,即:(1)有效利用了深度门递归神经网络建模骨导语音到气导语音特征之间复杂的非线性关系,相比于传统的神经网络,门递归神经网络通过引入精心设计的控制变量,可有效学习序列长时依赖关系,并且相比于与其有相同功能的长短时记忆神经网络,参数更少更容易训。(2)将门递归神经网络从原来的单方向学习建模为从两个方向上共同学习,更为有效地学习了骨导语音上下文关系,有助于骨导语音中丢失信息的推断与恢复。

下面结合附图对本发明作进一步详细描述。

附图说明

图1是本发明一种深度双向门递归神经网络的骨导语音增强方法示意图。

图2(a)是训练阶段特征抽取过程示意图。

图2(b)是增强阶段特征抽取过程示意图。

图3是训练阶段数据预处理示意图。

图4是增强阶段数据反归一化以及逆变换处理示意图。

图5是门递归单元(GRU)示意图。

图6是双向递归神经网络(BRNN)的隐层处理过程示意图

图7是本发明骨导语音增强实例图。

具体实施方式

结合图1,本发明深度双向门递归神经网络的骨导语音增强方法共分为两个阶段,训练阶段和增强阶段,训练阶段包含步骤一、步骤二,增强阶段包含步骤三、步骤四。训练阶段和增强阶段语音数据不重复,即没有说话内容相同的语句。

第一个阶段,训练阶段:通过训练数据对神经网络模型进行训练。

步骤一:提取气导(AC,Air Conduction)和骨导(BC,Bone Conduction)语音特征,并对提取的语音特征进行数据预处理以符合神经网络的输入需求,然后进入步骤二进行训练,具体如下:

第一步,分别提取AC、BC语音的特征,如图2(a)所示,包括以下步骤:

①语音数据是由同一个人同时佩戴AC与BC麦克风设备录制的AC与BC语音对,AC语音可表示为A,BC语音可表示为B,利用短时傅里叶变换分别将AC与BC语音时域信号y(A)、y(B)分别变换到时频域,具体步骤为:

(1)对语音时域信号y(A)、y(B)分别进行分帧加窗处理,窗函数为汉明窗,帧长为N,N取为2的整数次幂,帧间移动长度为H;

(2)对分帧后的语音帧进行K点离散傅里叶变换,获得语音的时频谱YA(k,t)、YB(k,t),计算公式如下:

这里,k=0,1,…,K-1表示离散频率点,K表示离散傅里叶变换时的频率点数,K=N,t=0,1,…,T-1表示帧序号,T为分帧的总帧数,h(n)为汉明窗函数;

②对频谱Y(k,t)取绝对值,计算得到幅度谱MA、MB,计算公式如下:

M(k,t)=|Y(k,t)|

③对幅度谱M(k,t)取以e为底的对数,得到对数幅度谱LA、LB,计算公式如下:

L(k,t)=ln M(k,t)

第二步,对获得的AC、BC语音对数幅度谱特征进行数据预处理,如图3所示,包括如下步骤:

①由于录制设备原因,AC、BC语音对具有相同的说话内容,但语音时长可能不一致,利用动态时间规整(Dynamic Time Warping,DTW)算法实现对数幅度谱LA、LB的对齐,具体操作是利用以欧式距离为度量的DTW算法,得到对齐后的对数幅度谱LQA和LQB

②分析对齐后的对数幅度谱LQA、LQB,分别得到两者的均值和方差向量和然后分别归一化到均值0方差1,得到特征数据LQ'A、LQ'B

计算公式如下:

步骤二:训练时,以骨导语音对齐后的对数幅度谱特征作为训练输入,以气导对齐后的对数幅度谱特征作为训练目标,采用时间反向传播算法(Back Propagation Through Time,BPTT)训练深度双向门递归神经网络模型,并存储训练好的深度双向门递归神经网络,神经网络结构以及训练如下:

①门递归神经网络(Gated Recurrent Networks)模型是长短时记忆(Long Short-Term Memory)模型的一种变形,通过引入了记忆单元和一些控制变量,能够对序列数据的长时依赖进行建模,并且参数更少,其组成部件门递归单元(Gated Recurrent Unit,GRU)如图5所示,可用以下式子表示:

这里,与分别表示前一时刻隐层信息与当前时刻隐层的候补信息(candidate information),z、r分别是更新门与重置门,用于更新和重置记忆单元信息,δ是隐层激活函数,x是输入向量,W是权重矩阵(例如Wxz表示输入层与更新门之间的连接权重),b是偏置值(例如br是重置门的偏置值),⊙表示矩阵点乘;

②通过双向递归神经网络模型(BRNNs,Bidirectional Recurrent Neural Networks)从两个方向共同学习骨导语音的上下文关系:双向递归神经网络模型相比于单向递归神经网络,双向递归网络可从两个方向上建模上下文关系,从而更有利于恢复骨导语音中缺失的信息,双向递归网络模型示意图如图6表示,可用以下式子表达:

BRNN每一层实际有两个分离的隐层,其从时间t=1到T计算前向隐层序列从时间t=T到1计算反向隐层序列yt是输出序列;

③深度双向门递归神经网络结构的设置:双向门递归神经网络结构的设置有n个隐层(例如n设为2-5),每个隐层神经元个数为m(例如m设为256-512),隐层神经元激活函数为tanh,输入、输出层为线性激活函数,设置的最大递归帧数是r帧(例如r设为20-40);

④深度双向门递归神经网络的训练:为提高模型的鲁棒性,将丢弃正则化(dropout regularization)技术应用于神经网络中除了输出层外的所有层,该技术是通过削减神经单元数,从而达到提高泛化能力的作用。设置丢弃比率为p(例如,0.1-0.5),丢弃正则化公式为:

其中,表示第l层的第j个神经元的存在概率,Bernoulli(p)指概率为p的伯努利分布,该分布是以概率p出现1,以概率1-p出现0,是第l层的第j个神经元的输出值,是乘以后的值,即该值等于或0,是网络权值,是偏置,f表示激活单元,是经过激活函数的神经元输出。

⑤深度双向门递归神经网络训练:c%(例如c为百分数,可以设为10-20)的训练数据作为验证集数据,训练损失目标函数是网络输出值与对应AC语音对数幅度谱的均方差,网络随机初始权值[-0.1,0.1],如具体采用的是随机梯度下降算法(Stochastic Gradient Descent,SGD)的一种变形均方根传播算法(Root Mean Square Propagation,RMSProp),学习率初始值设为lr(例如lr设为0.01-0.05),当验证集损失函数值未下降时,学习率乘以因子ratio(例如ratio设为0.1-0.5),动量为momentum(例如momentum设为0.7-1.2),当验证集损失函数值连续i(例如i设为3-6)个训练回合未下降时停止训练,保存验证集的损失函数值最小的神经网络模型参数,记为S。

第二个阶段,增强阶段:利用训练好的双向门递归网络模型,对待增强的BC语音进行增强。

步骤三:提取待增强的骨导语音特征,并根据步骤一所获得的对齐后的对数幅度谱LQB的数据统计特征,包括均值和方差进行数据归一化,然后进入步骤四进行骨导语音增强:

第一步,对待增强BC语音数据BE,采用傅里叶变换将语音时域波形变换到时频域具体的傅里叶变换过程已在第一个阶段步骤一的第一步中叙述。提取待增强的BC语音特征的过程如图2(b)所示,相比于步骤一中的特征提取,该步骤多了相位提取步骤,即在得到时域语音频谱后,不仅需要计算幅度谱,还需要计算相位,根据时频谱计算得到其幅度谱和相位计算公式为:

第二步,根据幅度谱计算得到对数幅度谱计算过程已在第一阶段步骤一的第一步中叙述。根据训练阶段得到的BC语音对数幅度谱的均值和方差对计算得到的对数幅度谱进行归一化,,计算公式如下:

步骤四:增强时,利用步骤二训练好的双向门递归神经网络对步骤三提取的骨导语音特征进行转化,再对神经网络的输出进行反归一化和特征逆变换,最终得到增强后的骨导时域语音。

第一步,将归一化后的输入到训练好的双向门递归神经网络模型S中,计算得到网络输出,即增强后的特征

第二步,将增强后的特征进行反归一化以及逆变换,最终得到增强后的骨导时域语音,其过程如图4所示,包括步骤如下:

①根据训练阶段AC语音对数幅度谱的均值和方差将双向门递归神经网络得到的输出进行反归一化,得到对数幅度谱计算公式如下:

②将对数幅度谱进行指数运算,得到幅度谱计算公式如下:

③利用幅度谱以及相位信息计算得到时频谱计算公式如下:

④利用傅里叶逆变换以及语音分帧后去重叠加公式,将频谱转化到时域,最终得到增强后的骨导时域语音y(BE)。

实施例

图7为本发明较佳的实施例图,实例语音长度约为4s,语音采样频率为8kHz,设置语音帧长32ms,帧移10ms,对每帧进行离散傅里叶变换,频点数K=256,得到的对数幅度谱维度是129维。图7(a)为骨导语句的时频谱图,(b)为对应的气导语句时频谱图,(c)为增强后的骨导语句时频谱图。可明显看出,增强后骨导语音的高频信号和缺失的气音、摩擦音等信号均得到了恢复,并且计算得出PESQ值由1.5560提升到2.3075,提升了0.7515,STOI由0.5259提升到0.7281,提升了0.2022,同时主观测试试听结果表明本发明能够取得良好的骨导语音增强效果。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号