Supervised Speech Separation Based on Deep Learning-An Overview
如有不当之处欢迎批评指正
目录
1. 论文目的
基于深度学习的监督语音分离概述
2. 摘要
语音分离是指从有背景干扰的语音中分离出目标语音。传统上,该问题被认为是信号处理问题。最新的一些研究将该问题作为监督学习问题。文章对近些年来基于深度学习的监督语音分离问题做了一个全面的概述。文章首先介绍了语音分离的背景和监督分离的形式,然后介绍了监督分离中的3个主要部分:学习机(learning machines)、训练目标和声学特征。文章的大部分内容是关于分离算法的,不仅回顾了单麦方法:包括语音增强、说话人分离和语音去混响,而且也回顾了多麦克风的方法。文章也讨论了监督学习中的泛化这一重要概念以及其他一些重要的概念性问题。
3. 介绍
人类的听觉系统能较容易地从混合的声源中分离出目标声源。人们在鸡尾酒会这样混合着背景噪声和其他人声的环境中似乎能轻松地只关注目标说话人的声音。语音分离也经常被称为“鸡尾酒会问题”,该术语由E.C. Cherry在其
1953年的一篇论文中提出。
人类能较轻松地从被噪声、混响等干扰的信号中分离出目标语音,但构造一个系统来完成这样的工作还是一件非常有挑战的事。
语音分离已在信号处理领域进行了数十年的深入研究。根据麦克风的数目,可以将分离方法分为基于单麦和基于麦克风阵列的方法。两种传统的单麦分离方法是语音增强和计算听觉场景分析(CASA)。语音增强方法分析语音和噪声的统计特性,然后根据估计的噪声从含噪语音中估计出干净语音。最简单和最常用的方法是谱减法,为了估计背景噪声,该类方法通常假设背景噪声是平稳的,也就是说背景噪声不随着时间变化或者相比语音更加平稳。CASA基于听觉场景分析的感知原理。
两麦或多麦阵列使用不同的原理来实现语音分离。波束形成或者空间滤波通过适当的阵列配置增强特定方向的信号,而衰减其它方向的信号。最简单的波束形成器是delay-and-sum,它将来自目标方向的多个麦克风信号同相相加,利用相位差衰减来自其他方向的信号。噪声的抑制量依赖于麦克风阵列的间距、大小和配置。通常来说,阵列麦克风数目越多,阵列长度越大,噪声抑制量也越大。很明显,当目标源和干扰源在同一位置或靠得很近时,就不能使用波束形成。而且,在混响条件下,波束形成的作用会大打折扣,因为混响会掩盖声源的真实方位。
最近的一种方法将语音分离视为监督学习问题。监督分离的原始公式是受CASA中的时频掩蔽概念启发。时频掩蔽将二维掩码应用于混合信号的时频点上以分离目标信号。CASA的一个主要目标是理想二值掩码(IBM),它表示目标信号是否在混合信号的时频表示中占主导地位。听力研究表明,在嘈杂的环境下,理想二值掩码可以极大地提高正常听力和听力受损听众的语音清晰度。当IBM作为计算目标,语音分离问题变为二分类问题,这是监督学习的基本形式。在这种情况下,IBM可以用作训练期间的期望信号或目标函数。在测试期间,学习机旨在估计IBM。尽管作为监督语音分离中的第一个训练目标,IBM绝不是唯一的训练目标。
自从语音分离问题被定义为分类问题以来,数据驱动的方法在语音处理领域得到了广泛的研究。过去数十年,监督语音分离通过大量的训练数据和增加的计算资源极大地提高了算法性能。监督语音分离算法可以大致分为以下几个部分:学习机(learning machines)、训练目标和声学特征。文章首先介绍了这3个部分,然后介绍了有代表性的算法。其中单麦和多麦算法将在单独的部分介绍。文章也介绍了监督语音分离所特有的泛化问题。
文章中的语音分离是指从背景干扰中分离出目标语音,这些干扰包括非语音噪声、干扰语音以及房间混响。此外,文章将语音分离和鸡尾酒会问题等同起来看待。文章中的语音增强是指语音和非语音噪声的分离,说话人分离是指分离多个人声。
文章的第2、3、4部分介绍了监督语音分离的3个主要部分,第5、6部分分别介绍单麦和多麦语音分离算法,第7部分是总结,并讨论了其他一些问题,例如:应将哪些信号视为目标以及如何解决鸡尾酒会问题。
4. 分类器和学习机
过去数十年,DNNs大大提高了监督学习任务的性能,如:图像分类、手写识别、自动语音识别、语言建模和机器翻译等。DNNs也大大提高了监督语音分离的性能。该部分介绍了用于监督语音分离的DNNs的类型:前向多层感知机(MLPs)、卷积神经网络(CNNs)、递归神经网络(RNNs)和生成对抗网络(GANs)。
MLP是神经网络中最受欢迎的模型,使用经典的反向传播算法对其进行训练。反向传播算法通过梯度下降法调整网络权重以最小化预测误差。预测误差通过预测输出和期望输出之间的代价函数计算得到。其中期望输出作为监督学习的一部分,由用户提供。例如,当MLP用来分类时,一个有名的代价函数是交叉熵:
其中是输出神经元的索引,表示预测的属于类别的概率。和分别表示输出神经元的数量和类别的数量。是一个二值分类器,当其值为1的时候,表示输出神经元的期望类别为,否则其值为0。对于函数逼近或者回归问题,常见的代价函数是均方误差(MSE):
其中,和分别是第个输出神经元的预测输出和期望输出。
尽管MLP的层数越多,其能力就越强,理论上,两个隐层的MLP可以逼近任意函数。反向传播算法适用于任何深度的MLP。但是,由于存在所谓的梯度消失问题,很难训练一个具有随机初始值的多隐藏层的深度神经网络(DNN),梯度消失是指在较低层(接近输入端的网络层)上,从较高层反向传播回来的误差信号计算得到的梯度逐渐变小或消失。梯度消除导致的结果是,较低层的权重在训练阶段几乎不变,学到的有效信息很少。这也解释了为什么在DNN出现之前,单个隐藏层的MLPs是用的最多的神经网络。
Hinton等人在DNN的训练上取得了重大突破。关键思想是对未标记的数据进行逐层的无监督预训练以期用标记数据进行监督训练之前正确地初始化DNN。具体来说,Hinton等人提出适用受限玻尔兹曼机(RBMs)逐层地预训练DNN,并且发现RBM预训练可以改善随后的监督学习。还有一种方法是使用整流线性单元ReLU替代传统的sigmoid**函数。最近的实践表明,**函数为ReLU的中等深度的MLP可以通过大量的训练数据进行训练,而无需进行无监督与训练。最近,跳过连接(skip connections)被用来帮助训练非常深的MLPs。
卷积神经网络(CNNs)作为前馈神经网络的一种,已经被证明非常适合模式识别,尤其在视觉领域。CNNs在模式识别中结合了有据可查的不变性,例如翻译(移位)不变性。一个典型的CNNs结构是卷积层和子采样层对的级联。一个卷积层包含多个特征图,每个特征图通过权重共享抽取局部特征,而不管其在上一层中的位置如何。在这种情况下,神经元的感受野表示连接到神经元的上一层的局部区域,其加权和操作类似于卷积(相关)。每个卷积层后面是一个子采样层,它们求取卷积层中神经元的感受野
的平均值或最大值。子采样可以降低分辨率以及对局部变化的敏感性。CNN中使用的权重共享也可以减少训练参数量。由于CNN通过其网络结构将领域知识整合到模式识别中,因此尽管CNN是深度网络,也可以通过反向传播算法对其进行更好地训练。
RNNs允许循环(反馈)连接,通常是在隐藏单元之间。不像前馈网络独立地处理每个输入,RNNs将输入视为一个序列,并对其随时间的变化进行建模。语音信号在时间上是有关联性的,当前帧的信号会受到之前帧的影响。因此RNNs是建模语音信号的一个很自然的选择。RNNs通过循环连接引入了时间维度,这是很灵活而且能无限扩展的,无论多深的前馈神经网络都无法实现这个特性。某种程度上,RNNs可以视为无限深度的DNNs。通常使用BTT(backpropagation through time)算法对循环连接进行训练。然而,这样的RNN训练容易出现梯度消失或梯度爆炸的问题,为了缓解这个问题,提出了带有存储单元的long short-term memory(LSTM)网络。具体来说,一个存储单元包括3个门:输入门、遗忘门和输出门。遗忘门控制保留多少历史信息,输入门控制应向存储单元中添加多少当前信息。通过这些门,LSTM允许在存储单元中保留上下文信息以改善RNN的训练。
生成对抗网络GANs包括两个同时训练的模型:生成模型G和判别模型D。生成模型G学习建模目标数据,例如,从含噪语音到其对应的干净语音的映射。判别模型D通常是一个二值分类器,学习区分生成的样本和真实样本。该框架类似于两人对抗游戏,其中最小最大是一种行之有效的策略。在训练期间,G旨在学习正确的映射,这样的话生成的数据能够很好的模仿真实数据,从而欺骗过D。另一方面,D学习更好地分辨真实的数据和G生成的数据。这样的对抗学习驱使两个模型提升他们各自的准确性,直到生成的样本与真实样本无法区别为止。GANs的关键思想是使用判别器来生成生成器的损失函数。GANs最近已经被用于语音增强。
文章中,DNN是指拥有至少两个隐藏层的任意神经网络,以与只有一个隐藏层的MLPs、带有核的SVMs、GMMs进行区分。我们使用DNN表示具有深层结构的神经网络,不管它是前馈的还是循环的。
5. 训练目标
在监督语音分离中,定义一个适当的训练目标对学习和推广至关重要。有两类主要的训练目标:基于masking的目标和基于mapping的目标。基于masking的目标描述了干净语音与其背景干扰的时频关系,而基于mapping的目标对应于干净语音的频谱表示。本小节研究了该领域中提出的一些训练目标。
语音分离效果的评价指标主要分为两类:信号方面和感知方面。信号方面的评价指标旨在评价信号的增强程度或者干扰的抑制程度。除了传统的SNR之外,也可以单独评估分离信号的语音失真和噪声残留。像SDR(source-to-distortion ratio)、SIR(source-to-interference ratio)和SAR(source-to-artifact ratio)都是比较重要的评价指标。
由于可懂度和质量是语音感知的两个重要但不同的方面,因此已有客观指标被提出来用以分别评估这两个方面。比如STOI(short-time objective intelligibility)和PESQ(perceptual evaluation of speech quality)。
A. ideal Binary Mask
监督语音分离中使用的第一个训练目标是理想二值掩码(IBM),它是受听觉掩蔽效应和听觉场景分析中的排他性分配原理启发所提出来的。IBM定义在含噪信号的二维时频(耳蜗谱/语谱)表示上:
其中,和分别代表时域和频域。当时频单元中的SNR超过local criterion(LC)或者某个阈值时,该时频单元的IBM值为1,否则为0。图2(a)展示了定义在64个通道耳蜗谱上的IBM。IBM将每个时频单元标记为目标语音为主或者干扰为主,自然地,可以认为IBM估计是监督分类问题,正如文章第二部分说述,IBM估计常用的代价函数是交叉熵。
B. Target Binary Mask
目标二值掩码(TBM)通过将每个时频单元中的目标语音能量与固定干扰(speech-shaped noise)进行比较来得出标签。该干扰是一种与所有语音信号的平均值相对应的平稳信号。图2(b)展示了TBM。
C. ideal Ratio Mask
不同于每个时频单元中的硬标签,理想比例掩码(IRM)可以认为是IBM的一种“软版本”:
其中,和分别表示一个时频单元中的语音能量和噪声能量。可调参数可以缩放掩码,通常取值为。若和不相关,那么的平方根保留了每个时频单元中的语音能量。该假设适用于加性噪声,但不适用于房间混响情况下的卷积干扰(晚期混响可以合理地认为是不相关干扰)。如果不对(2)式开平方,IRM类似于经典的维纳滤波器,它是功率谱上目标语音的最优估计器。IRM估计常用的代价函数是MSE,图2(c)展示了IRM。
D. Spectral Magnitude Mask
谱幅度掩码(SMM)定义在干净语音和含噪语音的STFT(short-time Fourier transform)变换上:
其中,和分别表示干净语音和含噪语音的谱幅度。不像,上限没有被限制为。为了得到分离的语音,将或其估计应用到含噪语音的谱幅度上,然后使用含噪语音的相位(或干净语音相位的估计)合成分离的语音。图2(e)展示了SMM。
E. Phase-Sensitive Mask
相位敏感的掩码(PSM)通过增加相位信息扩展了SMM:
其中表示时频单元内干净语音和含噪语音的相位差。PSM包含了相位差能获得较高的SNR,相比SMM能估计出更好的干净语音。图2(f)展示了PSM。
F. Complex Ideal Ratio Mask
复数理想比例掩码(cIRM)是复数域的一种理想掩码。不像前面提到的掩码,它能从含噪语音中完美地重构出干净语音:
其中,和分别表示干净语音和含噪语音的STFT,表示复数乘法。
其中,和分别表示含噪语音的实部和虚部。和分别表示干净语音的实部和虚部。由于使用了复数计算,因此掩码的值不受限制。因此使用tanh或sigmoid函数对进行限制。
提供了一种相位估计,但并没有。
G. Target Magnitude Spectrum
干净语音的目标幅度谱TMS或者是一种基于映射的训练目标。在这种情况下,监督学习从含噪语音中估计干净语音的幅度谱。幅度谱也可以被其他形式的谱比如功率谱或者梅尔谱所代替。通常对谱取,以达到压缩动态范围、优化模型训练的效果。TMS的一种主要形式是均值归一化为0,方差归一化为1的对数功率谱。将估计的干净语音幅度和含噪语音相位合到一起生成分离出的语音信号。TMS的估计中通常使用的代价函数是MSE。也可以使用最大似然来训练TMS估计器,这种方式明显地模拟输出相关性。图2(g)展示了TMS。
H. Gammatone Frequency Target Power Spectrum
伽马通频率目标功率谱(GF-TPS)是另一个与基于谱映射密切相关的训练目标。不同于TMS定义在频谱图上,GF-TPS定义在基于伽马通滤波器组的耳蜗图上。这个目标反应出耳蜗对干净语音的响应能力,GF-TPS的估计值很容易通过对耳蜗图求逆得到分离的语音。图2(d)展示了GF-TPS。
I. Signal Approximation
信号估计(SA)主要是训练比例掩码器,它能最小化干净语音及估计的干净语音谱幅度之间的差异。
其中是指SMM的估计。因此,SA可以认为是一种联合了比例掩码和谱映射的目标,以寻求最大化的SNR。如果将SA作为目标,两阶段训练能获得更好地分离性能。第一阶段以SMM为目标训练学习机,第二阶段通过最小化损失函数对学习机进行微调。
有研究使用固定的前馈DNN网络比较了不同训练目标的性能,该前馈DNN网络具有同样的输入特征并且包含3个隐藏层。分别使用STOI和PESQ来评价不同训练目标分离出的语音的可懂度和质量。另外,使用有代表性的语音增强算法和有监督的非负矩阵(NMF)分离算法作为基准进行评估。图3给出了评价结果。从这项研究中可以得到许多结论。首先,就客观可懂度而言,基于掩码的目标整体要优于基于映射的目标。最近一项的研究表明,当输入信号的SNRs较高时,基于掩码的目标更优。而当输入信号的SNRs较低时,基于映射的目标更优。就语音质量而言,比例掩码优于二值掩码。需要特别说明的是SMM和TMS之间的区别,除了SMM的分母中有一项外,两者其余方面是一样的。SMM估计地更好应该是由于TMS对干扰信号和SNR不敏感,而SMM却比较敏感。TMS中多对一的映射使其估计要比SMM更难。另外,无界谱幅度的估计往往会放大估计误差。总体而言,IRM和SMM是首选目标。另外,基于DNN的比例掩码的性能要比有监督的NMF和无监督的语音增强算法的性能好得多。
上面并没有列出全部的训练目标,也有文献使用了其他训练目标,也许,最直接的目标是干净语音的时域波形信号。早期的一项研究确实使用了该目标,它训练MLP以从含噪语音的波形中映射出干净语音的波形,这可以称为时间映射。尽管很简单,但即使使用DNN来替代浅层网络,这种映射也无法正常工作。有文献使用定义在时域的训练目标,但是用来估计目标的DNN包括比例掩码模块和含噪相位的逆傅立叶变换模块。该训练目标和PSM密切相关。最近的一项研究评估了许多理想掩码的结果,并引入了所谓的理想增益掩码(IGM),它是根据传统语音增强算法中常用的先验SNR和后验SNR来定义的。有文献评估了所谓的最优比例掩码,发现它是一种基于DNN语音分离的有效目标,它考虑了目标语音和背景噪声之间的相关性。
6. 特征
监督学习中,特征作为输入,学习机与其互补。当特征具有区分性时,它们对学习机的需求就不那么强烈以便成功完成任务。另一方面,功能强大的学习机对特征的需求不那么强烈。在一个极端情况下,当特征使一个任务线性可分时,就需要像Rosenblatt感知器那样的线性分类器。在另一个极端的情况下,如果分类器能够学习适当的特征,则输入原始数据就够了,无需提取特征。对处于两个极端的大多数任务来说,特征提取和学习机都很重要。
在监督语音分离的早期研究中,双耳分离仅使用了双耳时间差ITD和双耳能量差IID这两个特征。单耳分离使用基于基频的特征以及幅度调制谱AMS这两个特征。随后的研究探索了更多的单通道特征,包括梅尔倒谱系数(MFCC)、伽马通倒谱系数(GFCC)、感知线性预测(PLP)以及相对谱变换感知线性预测(RASTA-PLP)。
文章进行了一项研究,该研究旨在探索低SNR时,用于监督语音分离的不同声学特征的性能。这些特征已被用于自动语音识别和基于分类的语音分离任务中。它们包括梅尔域、线性预测、伽马通域、过零率、自相关、中值时间滤波、调制和基于基频的特征。梅尔域的特征是MFCC和增量谱倒谱系数DSCC,DSCC相比MFCC在梅尔谱上应用了增量操作。线性预测特征是PLP和RASTA-PLP。伽马通域的特征包括伽马通特征(GF)、GFCC和伽马通频率调制系数GFMC。通过将输入信号通过伽马通滤波器组并对子带信号进行抽取来得到GF。峰值幅度过零率(ZCPA)根据使用伽马通滤波器组得到的子带信号计算出过零间隔以及对应的峰值幅度。自相关特征包括相对自相关序列MFCC(RAS-MFCC)、自相关序列MFCC(AC-MFCC)和相位自相关MFCC(PAC-MFCC)。所有这些特征都是在自相关域计算MFCC。中值时间滤波器是功率归一化的倒谱系数PNCC以及抑制缓慢变化的成分和功率包络的下降沿SSF。调制域的特征是Gabor滤波器组和AMS特征。基于基频的特征根据基频追踪来计算时频特征,并使用周期性和瞬时频率区分以语音为主的时频单元和以噪声为主的时频单元。除了现有的特征,文章提出了一种新的称为多分辨率耳蜗谱的特征MRCG,它在不同的时频分辨率下计算四个耳蜗谱,以提供局部信息和更多的上下文信息。
使用自回归滑动平均滤波器对这些特征进行后处理,并使用基于MLP的IBM掩码估计器对其进行评价。根据分类准确度和HIT-FA率对估计的掩码进行评估。表1展示了HIT-FA结果。
如表所示,在准确度和HIT-FA率方面,伽马通域的特征(MRCG、GF和GFCC)始终优于其它特征,其中MRCG表现最好。通过比较GF和GFCC特征可以看出,通过离散余弦变换(DCT)进行的倒谱压缩是无效的。值得注意的是,基频特征性能较差主要是由于在低SNR的情况下估计不准,事实证明基频具有较强的辨别能力。
最近,Delfarah和Wang进行了另一项特征研究,他们考虑了房间混响,语音降噪和说话人分离。这项研究使用经过训练的固定的DNN来估计IRM,评价结果是对未处理的含噪语音和混响语音进行STOI打分得到的。这项研究中的特征包括对数谱幅度LOG-MAG和对数梅尔谱特征LOG-MEL,这两个都是监督分离中常用的特征。还包括原始信号的波形。为了模拟混响,使用了仿真的RIRs和真实录制的RIRs,其混响时间均达到0.9秒。在两说话人分离任务中,目标说话人是男性,干扰说话人或是男性或是女性。表2展示了所评估的各个特征的STOI增益。在无回声以及噪声匹配的情况下,STOI的结果与表1基本一致。使用仿真的和真实录制的RIRs差异也不大。但是,对于匹配噪声、非匹配噪声以及说话人分离来说,性能最好的特征是不一样的。除了MRCG,PNCC和GFCC分别在非匹配噪声及同信道条件下得到最佳结果。对于特征组合,该研究得出的结论是:对于语音增强来说,最有效的特征集包括PNCC、GF和LOG-MEL;对于说话人分离来说,最有效的特征集包括PNCC、GFCC和LOG-MEL。
表1和表2中特征所引起的巨大性能差异说明了特征对于监督语音分离的重要性。表2表明如果使用原始信号波形,而不提取特征的话,分离性能将会很差。但是需要注意的是,该项研究中使用的前馈DNN可能无法与原始波形信号很好地耦合。而CNNs和RNNs可能更适合于所谓的端到端分离。文章后半部分会讨论该问题。
7. 单通道分离算法
文章该小节将讨论语音增强、语音去混响、语音去噪去混响以及说话人分离的单通道算法。解释了一些代表性的算法并讨论了监督语音分离的一般化。
A. speech enhancement
Yuxuan Wang和Deliang Wang在2012年发表的两篇会议文章应该是首次将深度学习引入到语音分离中。随后他们将这两篇文章进行了扩展并于2013年发表了期刊论文。他们使用DNN进行子带分类来估计IBM。在会议文章中,具有RBM预训练的前馈DNNs被用作二值分类器,以及结构化感知器和条件随机野的特征编码器。他们指出在所有使用DNN的情况下,都能得到比较强的分离效果,由于在结构化预测中融合了时间的变化,DNN用于特征学习的结果更好。
在期刊文章中,将输入信号通过64通道的伽马通滤波器组以获得子带信号,然后从这些子带信号中提取每个时频单元内的声学特征。这些特征构成了子带DNNs(总共64个)的输入,以学习更多具有区分性的特征。图4展示了DNN用于语音分离的用法。经过DNNs训练之后,输入特征和最后一层隐藏层学到的特征拼接到一起馈送给线性SVMs以有效地估计子带IBM。
这个算法被进一步扩展为两级DNN,其中,第一阶段像往常一样被训练用来估计子带IBM,第二阶段按照以下方式明确融合了时频上下文信息。在训练了第一阶段DNN之后,可将二值化之前的单元级别的输出解释为语音主导时频单元的后验概率。因此,第一阶段DNN的输出被认为是后验掩码。在第二阶段,时频单元将以该单元为中心的后验掩码的局部窗口作为输入。图5展示了两阶段DNN。第二阶段的结构让人想起CNN中的卷积层,但它没有权值共享。这种方法显示了利用上下文的信息可以显著提高分类准确性。主观测试表明这种DNN可以明显改善HI和NH听众对语音的可懂度,HI听众受益更多。这是第一个为HI听众在背景噪声中提供实质性语音清晰度改善的单通道算法。
Lu等人在2013年发表了一篇用深度自编码器(DAE)作语音增强的文章。基本的自编码器(AE)是一种无监督学习机,它通常具有对称的结构,该结构包含一个具有绑定权重的隐藏层,学习将输入信号映射成自身。可以将多个AE堆叠成一个DAE,然后对DAE进行有监督的微调,例如使用反向传播算法。换句话说,自编码是RBM预训练的一种替代方法。有文献中的算法学习从含噪语音的梅尔功率谱映射到干净语音,因此,它可以被认为是第一个基于映射的方法。