当前位置:K88软件开发文章中心办公应用办公应用21 → 文章内容

干货 | 搜狗研究员讲解基于深度学习的语音分离

减小字体 增大字体 作者:华军  来源:华军资讯  发布时间:2019-3-10 1:10:39

原标题:干货 | 搜狗研究员讲解基于深度学习的语音分离科技评论按:基于深度学习的有监督语音分离在学术界和工业界越来越受到关注,也是深度学习在语音领域的应用中重要的一部分。作为AI研习社近期组织的一系列语音领域应用的分享会之一,本次我们请到了来自搜狗的研究员文仕学对语音分离方面主要的研究课题和相关方法做一些介绍。分享者:文仕学文仕学,过去学物理,后来学EE,现在从事Deep Learning工作,未来投身AI和CM事业。他的研究兴趣在于语音信号处理和深度学习。在加入搜狗之前,曾在中国科学技术大学学习,在该领域的期刊和会议上发表了若干篇论文。现在在搜狗语音团队任副研究员。AI 科技评论将本次分享的内容整理如下——分享主题:基于深度学习的语音分离文仕学首先介绍了“语音分离”(Speech Separation)是怎么样的一种任务。这个问题来自于“鸡尾酒会问题”,采集的音频信号中除了主说话人之外,还有其他人说话声的干扰和噪音干扰。语音分离的目标就是从这些干扰中分离出主说话人的语音。根据干扰的不同,语音分离任务可以分为三类:当干扰为噪声信号时,可以称为“语音增强”(Speech Enhancement)当干扰为其他说话人时,可以称为“多说话人分离”(Speaker Separation)当干扰为目标说话人自己声音的反射波时,可以称为“解混响”(De-reverberation)由于麦克风采集到的声音中可能包括噪声、其他人说话的声音、混响等干扰,不做语音分离、直接进行识别的话,会影响到识别的准确率。因此在语音识别的前端加上语音分离技术,把目标说话人的声音和其它干扰分开就可以提高语音识别系统的鲁棒性,这从而也成为现代语音识别系统中不可或缺的一环。基于深度学习的语音分离,主要是用基于深度学习的方法,从训练数据中学习语音、说话人和噪音的特征,从而实现语音分离的目标。这次分享的内容有以下这5个部分:分离使用的模型、训练目标的设置、训练数据的生成、单通道语音分离算法的介绍和讨论。基于深度学习的语音分离方法使用的模型第一类模型是多层感知机,DNN,可以先做RBM预训练,再做微调(fine-tune);不过文仕学介绍,他们团队通过实验发现,在大数据集上不需要预训练也可以收敛。LSTM(长短时记忆网络)的方法中把语音作为一个随时间变化的序列进行建模,比较适合语音数据;CNN(卷积神经网络)通过共享权值,可以在减少训练参数的同时获得比全连接的DNN更好的性能。近些年也有人用GAN(对抗性生成式网络)做语音增强。模型中通常会把生成器设置为全部是卷积层,为了减少训练参数从而缩短训练时间;判别器负责向生成器提供生成数据的真伪信息,帮助生成器向着“生成干净声音”的方向微调。训练目标的设置训练目标包括两类,一类是基于Mask的方法,另一类是基于频谱映射的方法。基于Mask的方法又可以分为几类“理想二值掩蔽”(Ideal Binary Mask)中的分离任务就成为了一个二分类问题。这类方法根据听觉感知特性,把音频信号分成不同的子带,根据每个时频单元上的信噪比,把对应的时频单元的能量设为0(噪音占主导的情况下)或者保持原样(目标语音占主导的情况下)。第二类基于Mask的方法是IRM(Ideal Ratio Mask),它同样对每个时频单元进行计算,但不同于IBM的“非零即一”,IRM中会计算语音信号和噪音之间的能量比,得到介于0到1之间的一个数,然后据此改变时频单元的能量大小。IRM是对IBM的演进,反映了各个时频单元上对噪声的抑制程度,可以进一步提高分离后语音的质量和可懂度。TBM与IRM类似,但不是对每个时频单元计算其中语音和噪声的信噪比,而是计算其中语音和一个固定噪声的信噪比SMM是IRM在幅度上的一种形式PSM中加入了干净语音和带噪语音中的相位差信息,有更高的自由度虽然基于Mask的方法有这么多,但最常用的还是开头的IBM和IRM两种如果使用频谱映射,分离问题就成为了一个回归问题。频谱映射可以使用幅度谱、功率谱、梅尔谱以及Gammatone功率谱。Gammatone是模拟人耳耳蜗滤波后的特征。为了压缩参数的动态范围以及考虑人耳的听觉效应,通常还会加上对数操作,比如对数功率谱。基于频谱映射的方法,是让模型通过有监督学习,自己学习有干扰的频谱到无干扰的频谱(干净语音)之间的映射关系;模型可以是DNN、CNN、LSTM甚至GAN。这一页是使用相同的DNN模型、相同的输入特征、不同的训练目标得到的结果。左边的STOI指语音的可懂度,得分在0到1之间,越高越好;右边的PESQ是语音的听觉质量、听感,范围为-0.5到4.5,也是越高越好。基于Mask的方法STOI表现较好,原因是有共振峰的能量得到了较好的保留,而相邻共振峰之间波谷处的声音虽然失真较大,但人耳对这类失真并不敏感;两类方法在PESQ中表现相当。训练数据的生成针对语音分离中的语音增强任务,首先可以通过人为加噪的方法生成带噪语音和干净语音对,分别作为输入和输出(有标注数据),对有监督学习模型进行训练。加入的噪声可以是各种收集到的真实世界中的噪声。不过收集噪声需要成本,而且人工能够收集到的噪音总是有限的,最好能够有一套完备、合理的方案,用仿真的方式生成任意需要的噪声。 在今年的MLSP(信号处理机器学习)会议上,搜狗语音团队就发表了一项关于噪声基的工作,通过构造一个噪声基模型,在不使用任何真实噪音数据的情况下,生成带噪语音对语音增强模型进行训练,达到了与使用50种真实噪音的情况下相当的性能(下图)。如果将这50种真实噪声和噪声基产生的数据混合在一起,性能可以比单独使用真实噪音的情况得到进一步提高。这也说明噪声基生成的噪声和真实噪声数据之间有着互补性,在实际应用中也可以解开一些真实噪声数据不足带来的限制。单通道语音分离算法如开头所说,语音分离任务可以分为三类,语音增强、多说话人分离和解混响。不同任务的处理方法也有所不同。对于语音增强,基于Mask的方法首先进行耳蜗滤波,然后特征提取、时频单元分类、二值掩蔽、后处理,就可以得到增强后的语音了。语音增强的另一类基于频谱映射的方法中,先特征提取,用深度神经网络学习带噪语音和干净语音的对数功率谱之间映射关系,再加上波形重建,就可以得到增强后的语音。基于有监督学习的算法都存在推广性(generalization)的问题,语音增强这里也

[1] [2]  下一页


干货 | 搜狗研究员讲解基于深度学习的语音分离