论文研究13:AN EMPIRICAL STUDY OF CONV-TASNET

论文研究13:AN EMPIRICAL STUDY OF CONV-TASNET

abstract

Conv-TasNet是最近提出的基于波形的深度神经网络,可在语音源分离中实现最先进的性能。它的体系结构由可学习的编码器/解码器组成和一个在此学习空间之上运行的分离块。已建议对Conv-TasNet进行各种改进。但是,它们主要关注分隔符,而将其编码器/解码器保留为(浅)线性运算符。在本文中,我们对Conv-TasNet进行了实证研究,并提出了基于编码器/解码器(深度)非线性变体的增强功能。此外,我们使用更大,更多样化的LibriTTS数据集进行实验,并研究了在更大的数据集上进行训练时所研究模型的泛化能力。我们提出了跨数据集评估,包括评估与WSJ0-2mix,LibriTTS和VCTK数据库的分离。我们的结果表明,对编码器/解码器的增强可以使平均SI-SNR性能提高1 dB以上。此外,我们提供有关Conv-TasNet的泛化功能以及对编码器/解码器进行改进的潜在价值的见解。

1. INTRODUCTION

随着深度学习的最新出现,语音分离方法已经在困难的场景中取得了稳固的成功,这些场景例如没有关于说话者的先验信息。 根据模型的输入/输出,可以将这些方法大致分为基于频谱图和波形的模型。 基于频谱图的模型尽管在过去[1-3]中取得了成功,但仍存在局限性:(i)它们仅通过简单估计在幅度或功率频谱图上运行的掩码来丢弃相位信息; (ii)他们倾向于利用混合物的嘈杂相来重建清洁源; (iii)他们采用了通用转换(如STFT),这对于手头的任务而言可能不是最佳选择。 尽管有几篇著作研究了如何解决上述局限性[4-7],但最近的出版物报道了通过直接在波形域中处理源分离[8-14]取得了令人鼓舞的结果。

Conv-TasNet [8]体系结构是本文构建的基础,它是一种这样的端到端神经网络,可在语音源分离中实现最先进的性能。它的体系结构由两部分组成:编码器/解码器和分隔符。最近,已经对该体系结构提出了一些改进。但是,大多数焦点都集中在其分离块上。例如,在[10,11]中提出了一种并行和多尺度的分离器,在[15]中提出了一种聚类机制。有趣的是,Conv-TasNet的编码器/解码器仅涉及少量作品。在多通道设置[16,17]中,第二个编码器用于学习通道之间的相位差,在[15]中,将幅度STFT附加到学习的编码器变换中。可以看出,大多数以前的作品都使用(浅)线性编码器/解码器。据我们所知,只有[18]为Conv-TasNet启发模型使用深层编码器/解码器来增强语音,但尚未扩展到语音源分离或对其进行全面测试。

在这项工作中,我们对Conv-TasNet进行了实证研究,该研究将在第2节中正式介绍。我们的贡献集中在两个领域:对编码器/解码器的体系结构改进,以及对已开发模型的泛化能力的研究。 在第3节中,我们介绍了我们提出的深度编码器/解码器,并讨论了该结构的几种变体。 在第4.1节中,我们根据WSJ0-2mix数据库评估研究的模型,以深入了解每种变体的性能。 在第4.2节中,我们探讨了使用更大,更多样化的训练集的影响,并通过采用跨数据集评估研究了训练模型的泛化能力。 在第4.3节中,我们将建议的深度编码器/解码器的性能与几种最新的分隔符进行了比较。 我们在第5节中进行讨论。

2. REVIEW OF CONV-TASNET

单通道多扬声器语音分离旨在分离C个单个语音源sc∈RT,其中c∈{1,2,… ,C},来自语音x∈RT的单通道混合,其中T是波形的长度,x = (sigma)Cc=1 sc。 Conv-TasNet [8]是为此目的提出的端到端全卷积网络。 图1说明了Conv-TasNet中的两个主要模块:一个编码/解码器对和一个分离模块。
论文研究13:AN EMPIRICAL STUDY OF CONV-TASNET
编码器将混合波形线性映射到学习的隐含空间。 具体地,混合波形被分割成K个重叠帧xk∈RL,k = 1、2,…。 。 。 ,K,L为每个长度,S为步长。然后,线性变换定义为:
论文研究13:AN EMPIRICAL STUDY OF CONV-TASNET
其中X∈RL×K将所有帧存储在列中,U∈RN×L的行中包含N个可学习的基本滤波器,而E∈RN×K是混合波形的潜在空间表示。 实际上,该编码器被实现为具有N个内核的一维卷积。在这项工作中,N = 512,L = 16和S = 8,对应于2 ms的基本滤波器和1 ms的步幅,采样率为8千赫。

分隔符通过学习此隐含空间中的掩码来预测每个源的表示形式。 时间卷积网络(TCN)[19]体系结构是分离模块的核心。 在Conv-TasNet中,TCN由8个堆叠的膨胀卷积块组成,它们的膨胀因子呈指数增加,每个堆叠重复3次。 大量的扩展卷积堆栈使分离块可以在较大的时间范围内使用紧凑的模型大小。

解码器对每个估计的干净源c = 1、2,… ,C进行线性变换到时域:
论文研究13:AN EMPIRICAL STUDY OF CONV-TASNET
其中V∈RN×L包含N个解码器基础滤波器(与编码器U无关),D∈RN×K是由分离器预测的第c个估计源的表示,而Sˆc∈RK×L包含重建的K帧 信号。 整个时域波形sˆc是通过对Sˆc行进行重叠和相加而获得的。 与编码器类似,解码器实现为一维(转置)卷积。 Conv-TasNet的所有构建块均经过联合优化。

3. DEEP ENCODER / DECODER

在本节中,我们描述了深度编码器/解码器体系结构,用于探索提高Conv-TasNet编码器/解码器代表更复杂信号转换能力的影响。 我们采用的核心体系结构是受最近音频分类研究的推动而来的,其中基于波形的体系结构建立在大量的小型滤波器之上,可提供非常有竞争力的结果[20-22]。 这项研究强调了这些体系结构通过分层组合小上下文表示来学习通用模式的潜力[20]。 因此,我们研究了基于具有非线性激活函数的小型滤波器堆栈的深度编码器/解码器的可能性。

3.1. Deep Encoder/Decoder Architecture

图2描绘了所提出的深度编码器/解码器的图。 我们利用具有I层的非线性深度编码器。 第一层等效于等式1中的原始Conv-TasNet编码器:线性变换应用于长度L和步幅S的帧。它是通过具有N个内核的一维卷积层实现的。 第二部分由I-1个1-D卷积层组成,每个层具有N个大小为3的内核和一个PReLU:
论文研究13:AN EMPIRICAL STUDY OF CONV-TASNET
其中*表示卷积算符,i = 2、3,… ,I表示层索引,Ui∈RN×N×3是内核,Ei∈RN×K是层输出。 编码层的这种深层堆栈将波形分层转换为非线性潜在空间。
论文研究13:AN EMPIRICAL STUDY OF CONV-TASNET
深度解码器直接反映了编码器架构。 来自分离模块的掩码编码首先由具有PReLU激活的保留I-1维维数的1-D转置卷积层处理。 最后,线性等式滤波器通过等式中的转置卷积应用。 如图2所示,具有核大小L和步幅S,以产生时域估计的源信号。

3.2. Deep Encoder/Decoder Variants

除了上述标准的深度编码器/解码器体系结构之外,我们还研究了两种变体。 第一种在编码器/解码器的深层卷积层中使用膨胀来增加其时间接收场。 正如[8]所指出的,膨胀对于分隔符建模长上下文至关重要。 因此,我们还要检查其在编码器/解码器中的作用。 在此变体中,我们实验了多达4个膨胀非线性层(I = 5),它们的膨胀因子呈指数增长(如在分隔符中一样),即:编码器分别为1,2,4,8,8,4,2, 1为解码器。

第二种变型使用门控线性单元(GLU)代替基本深度编码器/解码器中的PReLU。 与注意类似,GLU(图3)依靠学习的门来对内核的相对重要性进行建模。 在GLU中的S形非线性之前插入全局层归一化[8],以加快训练速度。 门控单元已被证明对音频事件检测[23],音频生成[24]和语音增强[25]有效。
论文研究13:AN EMPIRICAL STUDY OF CONV-TASNET

3.3. Objective Functions

默认情况下,我们将尺度不变信噪比(SI-SNR)[26]与排序不变训练[1]用作目标函数。 SI-SNR是端到端语音源分离[8、10、11、15]广泛使用的目标函数。 在某些实验中(请参阅第4.2节),为了限制深度编码器/解码器的预测源的规模,我们使用幂律项扩展了目标函数,该幂律项鼓励模型预测相似幅度的光谱 真实的事实。 此外,众所周知,幂律与人类的知觉相关[27,28]。 我们使用的增强目标是:
论文研究13:AN EMPIRICAL STUDY OF CONV-TASNET
对于我们使用P-law增强目标的实验,我们将β设置为0.01,将α设置为0.5。

4. EXPERIMENTS

在本节中,我们评估深度编码器/解码器体系结构及其变体,并评估使用不同体系结构训练集和目标函数对泛化的影响。

对于我们所有的实验,我们训练4秒钟的混合话语-混合音由来自不同说话者的两个清晰的语音源组成。 与[8]中一样,我们使用ADAM优化程序,其学习速率为1e-3,并且计划在连续3个时期后将学习速率减半,并且验证损失不会减少。 我们将批量大小设置为16。将梯度范数裁剪为7。除非另有说明,否则在WSJ0-2mix上训练100个时期,在LibriTTS上训练60个时期,目标函数是SI-SNR。

4.1. Evaluation on the WSJ0-2mix Dataset

在本节中,我们在常用的WSJ0 2-speaker(WSJ0-2mix)数据库[29]上评估各种模型。 通过随机混合来自100个说话者的话音,并在-5至5 dB之间随机选择的SNR,来创建训练(30小时)和验证集(10小时)。 所有波形均以8000 Hz采样。 我们在表1中报告了测试集(5小时,16位看不见的讲话者)进行语音分离之前和之后的SI-SNR改善(SI-SNRi)。

首先,我们以其结果为基础成功复制了原始的Conv-TasNet(表1,第1行)。 其次,请注意BigConv-TasNet(第2行,表1)是一个改进的Conv-TasNet,其内核过滤器数量加倍,分隔符中有四个TCN(而不是三个),不能胜过原始的Conv-TasNet。 第三,深度编码器/解码器(表1,第3行)比基线提高了0.7 dB。 这个结果表明了架构本身的重要性,因为客观指标并不能通过简单地增加模型的容量来提高。
论文研究13:AN EMPIRICAL STUDY OF CONV-TASNET
使用我们的深度编码器/解码器的第一个变体,我们研究了通过使用扩展卷积来增加深度层的时间范围的潜在影响。 有趣的是,深度编码器/解码器中的扩张卷积(表1,第4行)并未进一步改善结果,而[8]发现扩张对于分隔符至关重要。 考虑到这一观察结果,以及Conv-TasNet中最优编码器/解码器内核长度短至2 ms的事实[8],我们假设编码器倾向于针对具有高时间分辨率的局部模式建模而进行优化,而 分隔符可能专注于学习更长的时间模式。

在我们的深度编码器/解码器的第二种变体中,我们研究了使用GLU进一步增加其容量的影响。我们的结果(第5行,表1)表明,GLU与基本的深度编码器/解码器相比,仅有很小的改进。为了进一步探讨这个结果,我们分析了第一选通层的选通输出(见图4)。请注意,这些门输出指示该层中每个通道(图3中的上部分支)的相对重要性。在早期的培训阶段,所有大门都是均匀打开的。随着训练的进行,模型逐渐“关闭”了几个门。收敛之后,某些通道明显被省略了-在其余通道中,某些通道比其他通道要占主导地位。在整个测试集中始终观察到这种演变,这表明门学会了筛选出不太有用的通道。我们假设这种行为可能是由当前的学习策略引起的,迫使该模型从大量候选对象开始,逐步学习哪些渠道运作良好,哪些渠道可以省略。更为有效的学习策略可能会导致模型尺寸减小和训练时间缩短。

4.2. Cross-dataset Evaluation

在这里,我们探讨了训练Conv-TasNet和深度编码器/解码器对更大,更多样化的训练集的影响:LibriTTS [30]。 我们的目标是在使用WSJ和LibriTTS数据集进行训练时,以及WSJ,LibriTTS和VCTK [31]数据集进行评估时,比较这两种体系结构的SI-SNRi性能。 通过这种跨数据集评估策略,我们旨在研究研究模型的泛化能力。

我们通过在-5 dB和5 dB之间随机选择的SNR处随机混合发声与8000 Hz采样的波形来组装LibriTTS和VCTK数据集。 这两个额外的数据集具有以下特点:

*为了构建LibriTTS培训套件,我们将Trainclean-100和Train-clean-360套件重新混合。 它们共同构成了245个小时的培训数据和1151位演讲者(553位女性,598位男性)。 粗略地说,它是WSJ0-2mix的8倍的训练数据和10倍的说话者数量。 验证和评估集是通过分别重新混合dev-clean和test-clean来构建的。 结果验证集为9小时(40个发言者),评估集为8.5小时(39个发言者)。 该数据集用于训练和评估目的。

*对于VCTK,我们从完整数据集中随机选择4000对发声。 该数据集仅用于评估目的。

图5显示了几个实验的SI-SNRi评估结果。 对于每个实验,我们都对WSJ,LibriTTS和VCTK进行评估。 总共有四个实验使用WSJ进行训练,三个实验使用LibriTTS。 其中三个基于原始的Conv-TasNet,其余使用深度编码器/解码器。 最后,我们还尝试了两个不同的目标函数:标准SI-SNR目标和增强的SI-SNR +频谱功率损耗目标(在公式4中定义)。 从图5中可以看出一些明显的趋势:
论文研究13:AN EMPIRICAL STUDY OF CONV-TASNET
1.在LibriTTS(平均6.2 dB)和VCTK(平均6.3 dB)上进行测试时,在WSJ上训练的模型在性能上有明显的跨数据集下降,而在LibriTTS上训练的模型在WSJ上的性能下降相对较小(在1.7 dB上), 但VCTK仍显着下降(平均7.3 dB)。

2.相对于原始ConvTasNet,经过SI-SNR训练的深度编码器/解码器提供了一致的性能改进-数据集内评估平均为0.65 dB SI-SNRi; WSJ训练模型和LibriTTS训练模型的cro分别为0.35 dB和0.95 dB

3.power-law项在数据集内(平均0.25 dB)和跨数据集(平均0.65 dB)性能方面不断提高深度编码器/解码器的性能。 与使用SI-SNR训练的Conv-TasNet相比,所有测试结果的平均改善为1.2 dB。 有趣的是,幂律项对原始Conv-TasNet的SI-SNRi具有负面影响(数据集中为-0.9 dB,a为-0.7 dB

尽管较大的LibriTTS数据集平均可以改善跨数据集的性能,但VCTK上的结果表明,仅增加训练集的规模和多样性可能不足以确保改进的概括性。 通过幂律损耗来增强深度编码器/解码器的目标可能会产生正则化效果,这可以解释为什么它似乎有助于推广。 我们还注意到,在仅使用SI-SNR进行优化的深层编码器/解码器针对大型数据集进行训练时,存在一些稳定性问题。 在我们所有的实验中,添加幂律损耗项(似乎可以充当正则化函数)足以解决这些稳定性问题。 根据这种解释,Conv-TasNet可能需要更多的调整(例如降低β参数),因为该模型较小并且可能需要。

4.3. Deep Encoder/Decoder vs Enhanced Seperator

由于其他Conv-TasNet变体都专注于改进分离模块[10、11、15],并且我们主要关注于深度编码器/解码器,因此,我们还将拟议的深度编码器/解码器与几个增强分离块的贡献进行了比较。表2.我们比较了FurcaPy [11]和Yang等人的信号失真比改善(SDRi)[26]结果。 [15],既建立在Conv-TasNet上,又具有增强的分离块。 FurcaPy [11]最近通过采用平行门控分隔器获得了最新技术成果。另一方面,Yang等 [15]是另一项最新的工作,它通过利用嵌入网络和聚类来增强分隔符。他们的分隔符还利用了STFT功能,而我们的模型仅从波形中学习。当将它们的结果与我们的结果进行比较时,我们注意到,仅通过增加编码器/解码器的深度,就可以实现与Yang等人类似的改进。 [15]。该结果表示编码器/解码器的研究价值和潜力。但是,我们还注意到,仅通过改进编码器/解码器就无法达到最新的性能。这些结果似乎表明,基于改进的编码器/解码器和改进的分离块的联合解决方案是有希望的
论文研究13:AN EMPIRICAL STUDY OF CONV-TASNET

5.conclusion

在这项工作中,我们提供了一项实证研究,其中我们评估了对原始Conv-TasNet的几次修改的影响。 我们提出了一个深(非线性)编码器/解码器变体,该变体始终优于Conv-TasNet的原始(线性)编码器/解码器。 该结果表明改进编码器/解码器的潜力,但常常被忽视。 我们还研究了在设计用于评估研究模型的泛化能力的跨数据集评估设置中使用更大,更多样化的训练集的相对影响。 尽管这些实验证实了深度编码器/解码器提供的改进的一致性,但这些也凸显了推广到看不见的数据集的挑战。 我们希望这项实证研究将导致对Conv-TasNet的更深入了解,并激发对端到端语音源分离模型的泛化能力的持续研究。

上一篇:使用NumPy简单实现卷积神经网络


下一篇:Linux下打开Android调试器DDMS的方法