基于卷积神经网络的单通道混合语音时域分离方法技术

技术编号:15642675 阅读:143 留言:0更新日期:2017-06-16 16:16
本发明专利技术涉及一种单通道混合语音的时域分离方法,一种基于卷积神经网络的单通道混合语音的时域分离方法,包括以下步骤:(1)建立用于训练的语音数据组,(2)对语音数据进行预处理,(3)获得混合的语音数据,(4)构造神经网络结构,(5)利用整理好的数据,对神经网络进行监督式训练,(6)利用训练好的神经网络进行分离测试。本发明专利技术是以时域语音信号作为卷积神经网络的输入和输出,将单通道的混合语音分离开来,从而得到两路源信号的估计。该方法不需要处理相位恢复的问题,提高了单通道语音的分离质量。

【技术实现步骤摘要】
基于卷积神经网络的单通道混合语音时域分离方法
本专利技术涉及一种单通道混合语音的时域分离方法,更具体地说,涉及一种基于卷积神经网络的单通道混合语音时域分离方法。
技术介绍
单通道盲源分离(MonauralBlindSourceSeparation,MBSS)是语音处理领域中一项重要技术,它能在只获得单通道混合语音信号的情况下得到两路源信号的估计。单通道语音分离技术在在语音识别、语音增强、语音鉴定等领域具有重要的应用价值。典型的单通道语音分离包括基于非负矩阵分解(Non-negativeMatrixFactorization,NMF)和基于神经网络(NeuralNetwork)的方法。由于单通道混合语音中所包含的信息较少,因此基于非负矩阵分解的方法很难取得令人满意的分离效果。而神经网络具有较强的特征表达能力,因此基于神经网络的方法可以取得比NMF方法更好的分离效果。但是,目前基于神经网络的方法一般采用全连接网络(FullConnectedNeuralNetwork,FCNN)或循环神经网络(RecurrentNeuralNetwork,RNN),并且通常需要提取语音信号的幅度谱特征,这样并没有很好地利用到卷积神经网络本身强大的特征表达能力;同时由于使用了幅度谱特征,使得在恢复源信号的时候面临着很难处理的相位恢复问题。因此,传统的基于神经网络的分离方法在分离出的两路源信号估计之间存在互扰,分离质量有待提高。
技术实现思路
为了克服现有技术中存在的不足,本专利技术的目的是提供一种基于卷积神经网络的单通道混合语音时域分离方法。该方法是以时域语音信号作为卷积神经网络的输入和输出,其作用是将单通道的混合语音分离开来,从而得到两路源信号的估计。该方法不需要处理相位恢复的问题,提高了单通道语音分离的质量。为了实现上述专利技术目的,解决已有技术中存在的问题,本专利技术采用的技术方案是:基于卷积神经网络的单通道混合语音时域分离方法,包括以下步骤:步骤1、建立用于训练的语音数据组,从一个标准数据库,例如,TSP语音数据库中随机选取大量语音数据,并分为两组,其中80%语音数据作为训练数据,余下20%作为测试数据;步骤2、对语音数据进行预处理,首先利用公式(1)将原始的语音数据归一化到[-1,1]的范围内,其中,si表示第i路源信号,max(·)表示取最大值,abs(si)表示对si中的每一个元素取绝对值,yi表示归一化后的第i路源信号。然后将时域语音信号利用公式(2)进行分帧处理,帧长为N=1024,帧间重叠为H,这里H=N/2,zi={y(1+(N-H)*(i-1)),...,y((N-H)*(i-1)+N)}(2)其中zi表示第i帧数据,y表示归一化后的数据;步骤3,获得混合的语音数据,这里利用公式(3)所描述的循环移位混合的方法来扩大混合语音数据的数量,其中,x表示循环移位后的输出,表示将W个向量串连起来,W等于L/τ,L表示原始语音信号s的长度,τ表示循环移位的点数长度,Ψ表示循环移位算子,利用公式(4)进行描述,式中,y表示输入,β表示循环移位的点数,L为y的长度;步骤4、构造神经网络结构,构建一个适于分离的卷积神经网络(ConvolutionalNeuralNetwork,CNN),这里所使用的卷积层(ConvolutionalLayer)是一维卷积层,其卷积核是一维的,该卷积神经网络包括数据载入层、卷积层1、2、3,最大池化层1、2、3,全连接层1、2及线性整流单元(RectifiedLinearUnit),ReLU层1、2、3,每一层的具体参数以及连接顺序依次为:数据载入层用于读取批量帧语音混合数据和对应的源数据,并提供给后面的层输入;卷积层1,卷积核的长度为75,卷积核的个数为96个;线性整流单元层1;最大池化Maxpooling层1,池化的核长度为2,池化步长为2;卷积层2,卷积核的长度为55,卷积核的个数为128个;线性整流单元层2;最大池化层2,池化的核长度为2,池化步长为2;卷积层3,卷积核的长度为27,卷积核的个数为128个;线性整流单元层3;最大池化层3,池化的核长度为2,池化步长为2;全连接层1,节点数为2048,激活函数为反正切函数tanh;全连接层2,节点数为2048,没有激活函数即为线性输出,该层为输出层;误差层,利用欧式距离计算网络输出信号output与目标信号target之间的误差;步骤5、利用训练整理好的数据,即单路混合语音和源语音的对应数据对,对神经网络进行监督式训练,采用批量随机梯度下降法(StochasticGradientDescent,SGD)对神经网络进行优化训练。首先对卷积层的神经网络参数采用均值为0,方差为0.1的高斯分布进行随机初始化,设置迭代的最大次数为MaxIter=40000、优化的学习率为α=0.01、学习动量为μ=0.95,然后依次迭代执行前向传播子步骤(a)和后向传播子步骤(b);(a)、数据载入层读取批量数据,这里每一批为256帧的混合语音数据和对应的源语音数据对,分别记为mix和target,其中mix通过整个神经网络后得到输出记为output,神经网络中的卷积层神经元的输出利用公式(5)进行计算,式中,x表示神经元的输出,m表示滤波器核,z表示卷积层的输入,b表示神经元偏置,M表示滤波器核的长度,a(·)表示激活函数,即线性整流单元,其计算通过公式(6)进行描述,式中,r表示线性整流单元的输入,最后经过全连接层之后得到神经网络的输出output,是一个长度为2048的向量,其中前1024点代表源信号1的估计后1024点代表源信号2的估计通过计算output和target之间的欧式距离作为神经网络该次计算的误差,与前一次迭代计算的误差进行比较,当相邻两次误差的差值小于一个较小的阈值(如0.1)时,可判断为收敛,若收敛或者已达到预先设置的最大迭代次数,则停止迭代,网络已经训练好,可用于测试,若未收敛,则执行后向传播子步骤(b);(b)、经过子步骤(a)的前向传播后,得到了神经网络的输出output,可以计算output与target之间的误差,并通过公式(7)进行描述,式中,W代表神经网络的权值参数矩阵,b代表神经网络的偏置参数矩阵,J(W,b)表示网络输出output与target之间的误差,是神经网络对两路源信号的估计,s=[s1,s2]是两路源信号的真实值,得到神经网络该次迭代的误差后,利用链式法则逐层计算误差相对于神经网络参数W,b的梯度和计算梯度的更新值,式中,和分别表示第i次和第i-1次迭代时权值参数矩阵W的更新值,和分别代表第i次和第i-1次迭代时偏置矩阵b的更新值,μ代表优化的学习动量,α代表优化的学习率,然后对神经网络的参数W和b利用公式(12)和(13)进行更新,其中Wi和Wi-1分别表示第i次和第i-1次迭代时权值参数矩阵,bi和bi-1分别代表第i次和第i-1次迭代时偏置矩阵。神经网络参数更新后,在新的参数下执行前向传播子步骤(a);步骤6、在经过步骤5对神经网络训练完成后,将神经网络的参数保存起来,即可利用训练好的神经网络对单通道混合语言信号进行分离测试。将待分离的单通道混合语音输入到神经网络中,在神经网络的输出端即可得到对源信号本文档来自技高网...
基于卷积神经网络的单通道混合语音时域分离方法

【技术保护点】
基于卷积神经网络的单通道混合语音时域分离方法,其特征在于包括以下步骤:步骤1、建立用于训练的语音数据组,从一个标准数据库,例如,TSP语音数据库中随机选取大量语音数据,并分为两组,其中80%语音数据作为训练数据,余下20%作为测试数据;步骤2、对语音数据进行预处理,首先利用公式(1)将原始的语音数据归一化到[‑1,1]的范围内,

【技术特征摘要】
1.基于卷积神经网络的单通道混合语音时域分离方法,其特征在于包括以下步骤:步骤1、建立用于训练的语音数据组,从一个标准数据库,例如,TSP语音数据库中随机选取大量语音数据,并分为两组,其中80%语音数据作为训练数据,余下20%作为测试数据;步骤2、对语音数据进行预处理,首先利用公式(1)将原始的语音数据归一化到[-1,1]的范围内,其中,si表示第i路源信号,abs(si)表示对si中的每一个元素取绝对值,max(·)表示取最大值,yi表示归一化后的第i路源信号,然后利用公式(2)将时域语音信号进行分帧处理,帧长为N=1024,帧间的重叠为H,这里H=N/2,zi={y(1+(N-H)*(i-1)),...,y((N-H)*(i-1)+N)}(2)其中,zi表示第i帧数据,y表示归一化后的数据;步骤3,获得混合的语音数据,这里通过循环移位混合的方法扩大混合语音数据的数量,其中,x表示循环移位后的输出,表示将W个向量串连起来,W等于L/τ,L表示原始语音信号s的长度,τ表示循环移位的点数长度,Ψ表示循环移位算子,通过公式(4)进行描述,式中,y表示输入,β表示循环移位的点数,L为y的长度;步骤4、构造神经网络结构,构建一个适用于分离的卷积神经网络ConvolutionalNeuralNetwork,CNN,这里所使用的卷积层ConvolutionalLayer是一维卷积层,其卷积核是一维的,该卷积神经网络包括数据载入层、卷积层1、2、3,最大池化层1、2、3,全连接层1、2及线性整流单元RectifiedLinearUnit,ReLU层1、2、3。每一层的具体参数以及连接顺序依次为:数据载入层用于读取批量帧语音混合数据和对应的源数据,并提供给后面的层输入;卷积层1,卷积核的长度为75,卷积核的个数为96个;线性整流单元层1;最大池化Maxpooling层1,池化的核长度为2,池化步长为2;卷积层2,卷积核的长度为55,卷积核的个数为128个;线性整流单元层2;最大池化层2,池化的核长度为2,池化步长为2;卷积层3,卷积核的长度为27,卷积核的个数为128个;线性整流单元层3;最大池化层3,池化的核长度为2,池化步长为2;全连接层1,节点数为2048,激活函数为反正切函数tanh;全连接层2,节点数为2048,没有激活函数即为线性的输出,该层为输出层;误差层,利用欧式距离计算网络输出信号output与目标target之间的误差;步骤5、利用整理好的数据,即单路混合语音和源语音的对应数据,对神经网络进行监督式训练,采用批量随机梯度下降法StochasticGradientDescent,SGD对神经网络进行优化训练,首先对卷积层的神经网络参数采用均值为0,方差为0.1的高斯分布进行随机初始化,设置迭代的最大次数为MaxIter=40000、优化的学习率为α=0.01、学习动量为μ=0.95,然后依次迭代执行前向传播子步骤(a)和后向传播子步骤(b);(a)、数据载入层读取批量数据,这里每一批为256帧的混合语音数据和对应的源语音数据对,分别记为mix和target,其中mix通过整个神经网络后得到输出记为output,神经网络中的卷积层的输出利用公式(5)进行计算,式中,x表示神经元的输出,m表示滤波器核...

【专利技术属性】
技术研发人员:张鹏马晓红
申请(专利权)人:大连理工大学
类型:发明
国别省市:辽宁,21

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

1