Singing-Voice Separation from Monaural Recordings using Deep Recurrent Neural Networks论文笔记

网友投稿 242 2022-08-26

Singing-Voice Separation from Monaural Recordings using Deep Recurrent Neural Networks论文笔记

感想

这篇文章好像没有很多创新点,就是用DRNN做了很多实验,然后得到了一个相对比较好的效果,不过这也是一次把深度学习用在音乐与人声分离的尝试,克服了以往需要基于不合理假设的音乐人声分离的局限,比如音乐和语音的低秩和稀疏性假设,从某种程度上限制了音乐人声分离的效果的提高。本文的网络比较浅,只有3层,和其他深度学习网络相比,这个网络太浅了。还有待进一步探索。

单词理解

Monaural  单耳(听觉)的,非立体声的;

Concatenate  vt 把 (一系列事件、事情等)联系起来;

介绍

在现实世界中单源分离显得很重要,例如我们可以通过分离噪声从而改进自动语音识别系统(ASR)的精度,也可以从音乐中分离人声,从而提高和弦识别和音高估计的精度。可是,当下最好的结果仍然和人类的能力差别很大。单源分离单轨的信息是一个很有挑战性的问题。 本文侧重单声道的音乐人声分离,最近,一些方法利用了音乐和语音的低秩(low rank,说实话我也不明白这到底是啥意思)和稀疏性的假设。但是这些假设有时候不是合理的,例如,鼓声可能位于稀疏子空间。另外,所有的这些模型都可以被看做是在谱域(spectral domain)的线性变换。 最近深度学习的发展,在不加任何假设的情况下,我们可以使用多非线性层拓展模型的表达能力,并且可以学习和优化数据的隐士表达。这篇文章用了深度循环神经网络(DRNN)分离单轨的音频,我们探索用不同的DRNN框架联合优化这个网络和一个软掩蔽函数(soft masking function)。我们提出的框架如下图。

其中的神经网络的结构为:

在时刻t,输入是Xt,这篇文章用的是幅度谱(Magnitude Spectrum),输出是y1t和y2t.预测输出是y^1t和y^2t,代表不同源的幅度谱。这个幅度谱是从1024个点的短时傅里叶变换出去的,每一次信号点会有50%的重叠,经验表明,使用log-mel filterbank特征或者log 能量谱的特征会使结果变差。 注意:对一个时域信号进行傅里叶变换,就可以得到的信号的频谱,信号的频谱由两部分构成:幅度谱和相位谱。 作者使用反向传播算法来对目标函数进行优化,使用limited-memory Broyden-Fletcher- Goldfarb-Shanno (L-BFGS) (本人不懂这个算法,等学了再补上)算法来训练模型。Epoch设置的是400,,根据development set来选择最佳的模型。

这是soft time-frequency mask mt(f)的定义,f代表频率。计算mt后,我们把mt运用到下面的公式,zt(f)为幅度谱,这样可以求得估计的幅度谱s^1t(f),s^2(f). time-frequency masking function可以看作是DNN的一层,我们联合优化这个函数和网络。

然后我们另加一层输出,就得到了分离的谱y~1t,y~2t,计算公式为

原来的相谱和计算的频谱经过ISTFT,得到时域信号。

训练的目标函数

最小化误差平方和和KL散度(Kullback-Leibler (KL) divergence)

当Ai的概率和=Bi的概率和=1的时候,D(‘|’)减少到KLdivergence. A,B可以被看做概率分布。

实验结果

为了量化声源分离的结果,我们使用信号干扰比(Source toInterference Ratio ,SIR),系统误差比(Sourceto Artifacts Ratio ,SAR),信号偏差比(Source to DistortionRatio ,SDR)去评价。规范化的SDR定义如下:

V^是再合成的人声,V是原来干净的人声,X是混合的声音。NSDR是为了评估预先处理的混声X和分离的人声V^的SDR的效果。我们用Global NSDR (GNSDR),Global SIR (GSIR),Global SAR (GSAR)去评估整体的性能表现。它们分别是加权的GNSDR,SIR,SAR的均值。所有测试片段根据它们的长度加权重。SDR,SAR,SIR的值越高,代表分离的质量越好。干扰源的抑制用SIR来很亮,系统误差

注意:SIR,SDR,SAR的定义如下:

Starget(t)表示估计信号源中是信号源的那部分;einterf(t)表示估计信号中不属于信号源的部分,但是属于混合信号的那部分,是由其它信号源引起的估计误差;enoise(t)表示感测信号中包含的噪声干扰误差;eartif(t)是由算法本身产生的系统噪声误差。具体公式为:

很多情况下都可以忽略噪声对计算的影响,所以enoise(t)那部分可以去掉。由此只剩下三部分,由此得到上述三个性能参数。

上下文窗口大小为1,3,5的模型效果比较,窗口为3*3时效果最佳。

环形移位步长大小(circular shift step sizes,如果有人不知道这个东西,可以参考下面维基百科)为0,50k,25k,10k样本,当继续增加训练样例的时候,模型性能提高很小了,因此我们选择环形移位步长大小为以为10k样本。

第一个DNN是以单声源作为目标,第二个DNN是以二声源作为目标,没有联合掩蔽训练(joint mask training),第三个是以二声源作为目标,有联合掩蔽训练。使用joint mask 训练的效果最佳。

不同网络结构,不同目标函数的结果,MSE代表平均均方误差,KL代表KL散度。DRNN的效果比DNN的效果好。

使用不同的模型结构进行判别训练(discriminative training)。

参考文献

[1]. Circular shift. ​​ Po-Sen Huang, Minje Kim, MarkHasegawa-Johnson, Paris Smaragdis:

Singing-Voice Separation from MonauralRecordings using Deep Recurrent Neural Networks. ISMIR 2014: 477-482

[3] ​​基于深度循环神经网络(DRNN)的单通道音乐人声分离​​

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:IELTS11 Test4 besides economy, other types of progress are equally important
下一篇:weiphp2.0 controller.class.php里面add方法接收不到post请求发送的数据
相关文章

 发表评论

暂时没有评论,来抢沙发吧~