论文研究14:Deep Attention Gated Dilated Temporal Convolutional Networks with Intra-Parallel Convolutional Modules for End-to-End Monaural Speech Separation

abstract

单声道语音分离技术远不能令人满意,并且由于来自多个来源的干扰而成为一项具有挑战性的任务。最近,深度扩张的时间卷积网络(TCN)已被证明在序列建模中非常有效。这项工作探索了如何扩展TCN以产生一种新的,最新的单声道语音分离方法。首先,引入并添加了新的门控机制以生成门控TCN。门控激活控制信息流。此外,为了组合多个训练模型以减少性能差异并改善语音分离效果,我们建议在门控TCN架构中使用集成学习原理,方法是将与每个膨胀因子相对应的卷积模块替换为多个相同的分支,卷积成分。为了客观起见,我们建议通过直接优化发声级信噪比(SDR)的排列不变训练(PIT)样式来训练网络。我们在公共WSJ0-2mix数据语料库上进行的实验使SDR改善了18.2 dB,这表明我们提出的网络可以提高说话者分离任务的性能。

1. Introduction

多讲话者单声道语音分离具有广泛的应用。 例如,在许多人讲话的家庭环境或会议环境中,人类听觉系统可以轻松地从多个讲话者的混合语音中跟踪并跟踪目标讲话者的语音。 在这种情况下,必须从混合语音中分离出目标说话者的干净语音信号。 此任务有两个困难。 第一个问题是,由于我们没有关于用户的任何先验信息,因此真正有用的系统必须独立于说话者。第二个难题是,无法对单个麦克风信号使用波束成形算法。 许多传统方法,例如计算听觉场景分析(CASA)[1、2、3],非负矩阵分解(NMF)[4、5]和概率模型[6],都不能很好地解决这两个难题。

最近,已针对此任务提出了大量基于深度学习的技术。这些方法可以简要分为三类。第一种是基于深度聚类(DPCL)[7,8],它将频谱图的时间频率(TF)点映射到嵌入向量,然后将这些嵌入向量聚类为对应于不同说话者的相应类,最后是这些簇用作遮罩,将频谱图逆变换为分离的干净声音。第二种是置换不变训练(PIT)[9,10],它将N个混合资源分配的所有可能置换中的最低错误输出最小化,以解决标签置换问题;第三类是时域[11、12、13、14]中的端到端语音分离,这是克服上限信噪比提高(SDRi)障碍的自然方法实时傅里叶变换(STFT)掩模估计的方法和实际使用中的实时处理要求。

本文基于端到端方法[11、12、13、14],与基于DPCL或基于PIT的方法相比,取得了更好的效果。由于大多数基于DPCL和PIT的方法都将STFT用作前端,因此,首先将混合语音信号从时域中的一维信号转换为TF域中的二维频谱信号,然后分离混合频谱通过深度聚类或掩码估计来生成对应于不同语音源的频谱。该方法最终通过每个频谱上的逆STFT恢复清除的源语音信号。该框架有几个限制。首先,对于语音信号的转换,尚不清楚STFT是否最优(即使假设其所依赖的参数是最优的,例如音频帧的大小和重叠,窗口类型等)。其次,大多数基于STFT的方法通常假定分离的信号的相位等于混合相位,这通常是不正确的,并且通过使用理想的掩码对分离性能施加了明显的上限。作为解决上述问题的一种方法,最近提出了几种语音分离模型,它们直接在时域语音信号上运行[11、12、13、14]。包括长短期记忆(LSTM)在内的递归神经网络(RNN)是模拟时间相关序列的首选方法。然而,它们的主要缺点之一是爆炸和消失梯度问题以及并行训练和分离的困难。此外,最近的文献还表明,前馈卷积模型在经验上优于递归模型,并且可以并行化,从而更容易以更稳定的梯度进行训练[15]。受这些初步结果的启发,我们介绍了FurcaPorta和FurcaPa。 FurcaPorta在TCN中增加了一种新颖的门控机制,在每个与每个膨胀因子相对应的膨胀卷积模块中,引入了两个门,一个门控制信息流入,一个门控制信息处理和流出。另外,我们建议用两个内并行卷积模块替换每个膨胀卷积模块中的两个卷积相关模块,这可以减小该模型的方差。并行内卷积模块复制权重矩阵,并从这些层生成的特征图中获取平均值。这种方便的技术可以有效地提高分离性能。

本文的其余部分安排如下:第2节介绍了使用TCN进行单声道语音分离。 第3节详细介绍了我们提出的FurcaPorta,FurcaPa和分离算法。 实验设置和结果显示在第4节中。我们在第5节中总结了本文。

2. Speech separation with TCN

单声道语音分离的目标是从线性混合的单个麦克风信号中估计各个目标信号,其中目标信号在TF域中重叠。 令xi(t),i = 1,…,S表示S个目标语音信号,y(t)表示混合语音。 如果我们假设目标信号是线性混合的,则可以表示为:

然后单声道语音分离旨在根据给定的混合语音y(t)估计各个目标信号。 在这项工作中,假设目标信号的数量是已知的。

为了解决这个不适的问题,罗等人[12]引入TCN [16,15]来完成此任务。在各种任务中,建议使用TCN作为RNN的替代方法[16,15]。 TCN中的每一层都包含一个具有增大的膨胀因子的1D卷积块。如图1所示,扩张因子以指数方式增加,以确保适当的较长时间上下文窗口可以利用语音信号的远程依赖性,如图1所示。WaveNet中的扩张卷积在音频生成方面取得了巨大的成功[17]。具有不同扩张因子的扩张卷积具有不同的接受场。堆叠的扩张卷积为网络提供了非常大的接收场,只有几层,因为扩张范围呈指数增长。这允许网络捕获具有输入序列的各种分辨率的时间依赖性。 TCN引入了时间层次:上层可以访问较长的输入子序列,并可以在较大的时间尺度上学习表示形式。来自下层的本地信息通过残差和跳过连接在层次结构中传播。

如图1所示,原始TCN [15]中有两个重要元素,一个是膨胀的卷积,另一个是残差连接。 扩张卷积遵循[17]的工作,其定义为

其中x是一维输入信号,k是滤波器(又称内核),d是膨胀因子。 因此,膨胀等效于在每两个相邻的滤波器抽头之间引入固定的步长。 增加TCN接收场的一般方法是增加扩张因子d。 在这项工作中,我们随着网络的深度以指数方式增加d,并且d = 2,如图1所示,该TCN具有四层1-D Conv模块,其扩张因子分别为1、2、4、8。 如图1所示,每个1-D Conv模块是一个残差块[18],其中包含一层膨胀的卷积(Depth wise conv [19]),两层1×1卷积(1×1 Conv), 两个非线性激活层(参数整流线性单元,PReLU [20])和两个归一化层(归一化)。 对于归一化,我们将全局归一化[12]应用于卷积滤波器。

罗等提出了一种基于TCN的语音分离方法[12],该方法包括三个处理阶段,如图2所示:编码器(Conv1d之后是PReLU),分离块(依次由LayerNorm,1×1conv,4组成) TCN层,1×1conv和softmax操作)和解码器(FC层)。 首先,编码器模块用于将混合波形的短片段转换为其相应的表示形式。 然后,该表示用于估计每个时间步长的每个源和每个编码器输出的乘法函数(掩码)。 然后,通过使用线性解码器模块转换被屏蔽的编码器特征来重建源波形。

3. End-to-end Speech separation with FurcaPorta and FurcaPa

本文的主要工作是对语音分离的TCN(图1)和基于TCN的框架(图2)进行一些改进。 首先,我们在该TCN中引入了一种新颖的门控机制,如图3所示。在先前的序列建模工作中已使用非线性门控激活[17,21],它可以控制信息流并可以帮助网络进行建模。 更复杂的互动。 将两个门添加到普通TCN中的每个1-D卷积模块,一个门对应于1-D卷积模块中的第一个1×1卷积层,并且此门用于控制流入信息。 另一个门对应于从深度卷积层到输出1×1卷积层的所有层,该门用于控制信息的处理和流出。 在这项工作中,基于门控TCN的语音分离通道称为FurcaPorta。

3.1. FurcaPa: Gated TCN with intra-parallel convolutional components

ensemble可以始终提高单个预测模型的性能,即结合一组独立训练的网络。最常用的方法是对模型求平均值,这至少可以帮助减少性能差异。如图4所示,在FurcaPorta中的门控TCN的每个1-D卷积模块的不同层中,添加了两个相同的并行分支。这种结构称为FurcaPa。每个内并行卷积分量的总输出是通过平均所有不同分支的输出获得的。在每个单独的一维膨胀一维卷积模块层中,引入了两个并行内卷积分量,第一个在输入层附近,并覆盖Conv1d,PReLU和Normalization层;另一层在输出附近,它覆盖了其余所有层,包括Depthwise conv,PReLu,Normalization和1×1 Conv层。之所以在两个地方进行此合奏,是为了减少每个块的子方差。

3.2. Perceptual metric: Utterance-level SDR objective

由于许多基于STFT的方法的损失函数不能直接应用于基于波形的端到端语音分离,因此在这项工作中尝试了基于感知度量的损失函数。 语音感知受失真的影响很大[22,23]。 通常,为了评估语音分离的性能,BSS Eval度量信号失真比(SDR),信号干扰比(SIR),信号失真比(SAR)[24、25], 短期目标清晰度(STOI)[26]经常被使用。 在这项工作中,我们直接使用SDR(这是最常用的评估源分离性能的指标)作为培训目标。 SDR测量输出信号引入的失真量,并将其定义为纯信号能量与失真能量之间的比率。

SDR捕获了算法的整体分离质量。 这里有一个微妙的问题。 我们首先将FurcaPorta或FurcaPa的输出连接成一个完整的语音,然后与输入的完整语音进行比较,以语音水平计算SDR,而不是一次计算一帧的SDR。 这两种方法在方式和性能上都非常不同。 如果我们用s表示网络的输出,理想情况下它应该等于目标源x,那么SDR可以表示为[24,25].

那么我们的目标是使SDR最大化或使SDR的负SDR最小化,作为相对于s的损失函数。

为了解决跟踪和置换问题,在这项工作中采用了PIT训练标准[9,10]。 我们计算所有排列的SDR,选择最大值,然后使用负数作为损失。 在这项工作中,这称为uSDR损失。

4. Experiments

4.1. Dataset and neural network

我们使用WSJ0-2mix数据集[7,8]评估了两个扬声器语音分离问题的系统,该数据集包含30个小时的训练和10个小时的验证数据。 通过在《华尔街日报》(WSJ0)训练集目录中随机选择49位男性和51位女性说话者和话语,然后将它们以0 dB到5 dB之间的各种信噪比(SNR)均匀混合,来生成混合物。 使用WSJ0数据集中来自si dt 05和si et 05的16位看不见的说话者的讲话,以相同的方式生成5小时的评估集。

4.2. Results

我们使用[8、27、28、29、9]中使用的SDR改进(SDRi)[24、25]指标评估系统。 原始SDR,即原始目标语音x1(t)和x2(t)的混合语音y(t)的平均SDR为0.15。

应用于y(t)的STFT Y(t,f)以获得分离的语音,对其进行评估以显示基于STFT的方法的上限,其中Xs(t,f)是xs(t)的STFT。

在本实验中,作为基线,我们重新实现了几种经典方法,例如DPCL [7],TasNet [11]和ConvTasNet [12]。 表1列出了通过我们的方法获得的SDR,以及过去两年中几乎所有的结果,其中IRM表示理想的比率掩码。 与这些基准相比,平均可获得近2dB SDRi的增加。 与基准系统相比,FurcaPorta和FurcaPa取得了最显着的性能提升,并且大大突破了基于STFT的方法的上限(接近5dB)。

5. Conclusion

在本文中,我们研究了深度扩散的时间卷积网络建模对多说话者单声道语音分离的有效性。 得益于端到端处理的优势,新颖的门控逻辑和内部并行卷积组件,减少了方差,FurcaPorta和FurcaPa分别带来了9%和14%的相对改进,我们实现了最新的技术 在公共WSJ0-2mix数据语料库上。 对于进一步的工作,尽管SDR被广泛使用并且可能有用,但是它有一些缺点[33]。 将来,也许我们可以使用SNR来评估我们的模型。 看到SDR和SNR的一致性是很有趣的。

论文研究14:Deep Attention Gated Dilated Temporal Convolutional Networks with Intra-Parallel model相关推荐

  1. 【论文阅读】Learning Spatiotemporal Features with 3D Convolutional Networks

    [论文阅读]Learning Spatiotemporal Features with 3D Convolutional Networks 这是一篇15年ICCV的论文,本篇论文提出的C3D卷积网络是 ...

  2. 史上最详细 Lipreading using Temporal Convolutional Networks 环境配置

    唇语识别是目前人工智能领域比较热门的应用之一,本文将在之后的内容中介绍2020年英文词汇级唇语识别在LRW(Lir Reading in the Wild)数据集以及LRW-1000两个数据集上实现S ...

  3. 史上最详细Lipreading using Temporal Convolutional Networks(MS-TCN)代码层面详解

    本文将从代码层面详细介绍在LRW数据集实现SOTA效果的唇语识别模型MS-TCN.GitHub代码请看Lipreading using Temporal Convolutional Networks, ...

  4. 视频分类论文阅读笔记——Learning Spatiotemporal Features With 3D Convolutional Networks

    论文:Learning Spatiotemporal Features With 3D Convolutional Networks 作者:FaceBook AI研究院 来源:ICCV2015 代码: ...

  5. 论文阅读 R-FCN: Object Detection via Region-based Fully Convolutional Networks

    本文转载自: http://www.cnblogs.com/lillylin/p/6277094.html R-FCN论文阅读(R-FCN: Object Detection via Region-b ...

  6. 论文阅读笔记: Modeling Relational Data with Graph Convolutional Networks

    arXiv:1703.06103v4 文章目录 1.Introduction 2.神经关系建模(Neural relational modeling) 2.1 关系图卷积网络(Relational g ...

  7. 活体检测论文笔记2——Deep Spatial Gradient and Temporal Depth Learning for Face Anti-spoofing

    本文创新点: 设计了一种基于两种见解来检测来自多个框架的表示攻击的新方法: 1)详细的鉴别线索(例如,空间梯度大小)可以通过叠加的普通卷积被丢弃:2)三维运动人脸的动力学为检测假人脸提供了重要的线索 ...

  8. 交通预测论文笔记《Attention Based Spatial-Temporal Graph Convolutional Networks for Traffic Flow Forecasting》

    AAAI2019 0 摘要 交通流数据通常有很高的非线性和很复杂的特征.目前很多交通预测的方法缺乏对交通数据时空相关性的动态建模. 本文提出了一种基于注意力的时空图卷积神经网络(ASTGCN)来解决交 ...

  9. 图像隐写术分析论文笔记:Deep learning for steganalysis via convolutional neural networks

    好久没有写论文笔记了,这里开始一个新任务,即图像的steganalysis任务的深度网络模型.现在是论文阅读阶段,会陆续分享一些相关论文,以及基础知识,以及传统方法的思路,以资借鉴. 这一篇是Medi ...

  10. 【语音唤醒】MDTC:Multi-scale dilated temporal convolutional network

    本文描述了NPU团队为2020年个性化语音触发挑战赛开发的系统,该系统包含一个语音唤醒(KWS)系统和一个说话人验证(SV)系统,本文暂时重点讨论KWS系统.针对KWS系统,该团队提出了一种多尺度扩张 ...

最新文章

  1. python 多线程和协程结合_一文讲透 “进程、线程、协程”
  2. luvit 被忽视的lua 高性能框架(仿nodejs)
  3. MySQL 存储过程初研究
  4. 计算机应用研究投稿,计算机应用研究
  5. IE6/7兼容问题:巧用label去除submit按钮的黑框线
  6. golang的panic用法
  7. 指向函数的指针数组(C++)
  8. css实现两端对齐的3种方法
  9. 易生活评论功能android,易生活(二)-APP—安卓中评论功能的实现
  10. MySQL-第十二篇管理结果集
  11. 浪潮服务器raid虚拟驱动,浪潮服务器RAID 卡驱动
  12. 社交网络分析:中国与国际媒体互引的社会网络分析
  13. Busting Frame Busting
  14. 十年磨一剑,剑出荡魑魅
  15. JS--购物车二级联动
  16. 倍福--授权文件拷贝
  17. Pr速成3小时学会视频剪辑[副业学习会]
  18. Unity3d绑定键盘弹出UI
  19. 想再考一个教师资格证,相同的科目需要重考笔试吗?
  20. C1认证学习十三(数据结构常识)

热门文章

  1. Total Control的深入用法,如何使用脚本实现启动或重启指定App
  2. tsconfig.json详细配置
  3. 【剧透】2017云栖大会•北京峰会——企业云上业务优化专场
  4. 使用Python绘制二元函数图像
  5. blast2go mysql_从 Blast2GO 本地化聊一聊 Linux 下 MySQL 的源码安装
  6. html5 uc qq,(进阶版)手机浏览器用户体验报告:UC、QQ、360,到底哪个好?
  7. 以DMA方式开启DAC输出正弦波
  8. html制作动态3d图片,如何制作3D动态图片?
  9. login.defs文件基础
  10. shell脚本学习(二十八)——服务启动脚本的编写