5.MLP-SVNET : A MULTI-LAYER PERCEPTRONS BASED NETWORKFOR SPEAKER VERIFICATION

题目:MLP-SVNET:一种基于多层感知器的说话人确认网络

论文地址https://ieeexplore.ieee.org/document/9747172

摘要:基于卷积和自注意的神经网络在自动说话人验证方面都取得了优异的性能。然而,卷积模型由于感受野的限制,往往缺乏长期依赖建模的能力,而自注意力模型则不足以对局部信息进行建模。为了解决这个限制,我们提出了一种新的基于多层感知器的说话人验证网络(MLP-SVNet),它可以在时间和频率维度上应用 MLP,以同时捕获局部和全局信息。在 Voxceleb 上进行的实验结果表明,与其他基于卷积或自注意的系统相比,所提出的模型非常具有竞争力。此外,我们证明了基于多层感知器的 MLP-SVNet 可以产生互补的嵌入,可以与最先进的系统融合以进一步提高性能

1.介绍

        说话人验证 (SV) 是一项利用语音作为生物特征来验证说话人身份的任务。最近,端到端深度嵌入学习方法已广泛应用于 SV 任务并获得了优异的性能 [1, 2, 3, 4, 5]。通常,这些模型架构由三个深度神经网络组件组成,包括帧级特征提取器、话语级表示聚合器和说话人分类器。

        为了进一步提高 SV 性能,在最近的研究中提出了许多具有不同网络架构的模型。并且大部分研究都集中在卷积结构上,包括时延神经网络(TDNN)[1]、残差网络(resnet)[2]、双路径网络(dpn)[6]、ECAPA-TDNN[7]等上。卷积神经网络 (CNN) 被称为移位不变或空间不变人工神经网络,基于沿输入特征滑动的卷积核或滤波器的共享权重架构 [8]。这种来自先验知识的独立性假设导致了对局部特征进行建模的出色能力。受益于此,基于卷积的模型在 SV 任务中取得了优异的性能。然而,由于感受野的限制,卷积缺乏对长期依赖进行建模的能力。为了解决这个问题,[3] 提出了一种串联自注意力编码器和池化层来获得判别说话人嵌入,其灵感来自于 Transformer [9] 的高并行化能力以及在计算机视觉和自然语言处理方面的强大性能 [10]。尽管self-attention解决了长期信息建模的问题,但是对于捕捉局部信息还是不够的。

        在这项研究中,受 [11] 的启发,我们提出了一种新的基于多层感知器的说话人验证网络 (MLPSVNet),它不使用任何卷积或自注意机制,而是完全基于多层感知器。它在时间或频率上应用 MLP,同时对局部和全局信息进行建模。与 CNN 或基于注意力的模型相比,1)MLPSVNet 具有更少的归纳偏差和更多的可训练参数,这将带来更好的拟合能力。 2)跨时间和频率维度的 MLP-SVNet 可以同时平衡全局和局部信息。 3)作为一种完全不同的架构,MLP-SVNet 可以产生互补的说话人嵌入,这意味着与 MLP-SVNet 的融合可以带来比其他系统更多的改进。

        本文的其余部分组织如下:在第 2 节中,我们介绍了一些有关说话人验证的架构设计的相关工作。然后,我们介绍我们提出的 MLPSVNet。接下来,在第 4 节中介绍和分析了实验结果。最后,在第 5 节中给出了结论。

2.相关工作

2.1 X-vector and R-vector

        x-vector [1]系统的出现标志着基于神经网络的系统完全优于基于i-vector的系统[12]。 X-vector 有五个时间延迟层来处理帧级别的输入,然后是一个统计池层,用于计算输入序列的均值和标准差,它将帧级别的输入聚合为段级别的表示。

        R-vector 系统是另一种基于卷积的网络,在 [2] 中提出,并因其高效建模复杂数据结构而在 SV 中实现了卓越的性能。与仅利用一维卷积提取特征的 X 向量不同,R 向量在统计池化层之前将特征处理为二维信号。最后,全连接层将特征转换为固定向量来表示说话者。

2.2 S-vector

        S-vector [3] 是一种新架构,其中帧级特征提取器被基于 self-attention 的变压器 [9] 编码器取代。这种机制建立在帧之间的点积之上,并允许模型基于不受限制的上下文来捕捉长期说话人的特征。

2.3 ECAPA-TDNN

        ECAPA-TDNN 是在 [7] 中提出的,人们普遍认为它是当今最先进的 (SOTA) 系统。 ECAPA-TDNN 的架构是传统 X 向量系统的增强版本。它集成了一个 Res2Net [13] 模块来增强中心体积层,并构造一个分层的残差连接来处理多尺度特征。它还引入了 1 维 TDNN 特定的 SE 块 [14],这有助于架构更好地模拟通道相互依赖关系。

3.MLP-SVNET

        本文提出的 MLP-SVNet 主要分为四个部分,包括 pre-patch 层、MLP 块、统计池化层和密集分类器。在本节中,我们将详细描述 MLP-SVNet,架构的概述如图 1 所示。

 图1.提出的 MLP-SVNet 的架构。 MLP-SVNet 由 pre-patch 块、MLP 块、统计池化层和说话人分类器组成。每个 MLP 块包含一个时间混频器块和一个频率混频器块。每个 mixer 块由两个全连接层、层范数、残差连接和一个 GELU 非线性函数组成。

3.1 Pre-Patch

        D-vector [15] 已经证明,将每个训练帧与其左右上下文帧堆叠可以提供比单个帧更好的性能。受此启发,我们提出了Pre-Patch模块以对邻居信息进行编码。如图 1(左)所示,输入 X 是一个特征图,其维度由时间和频率组成。然后,类似于 [10] 中的修补方法,我们将特征图拆分为带有滑动窗口的重叠块。最后,所有的补丁都被展平为向量并编码成一个固定维度的嵌入序列,该序列被用作输入以馈送到下面的 MLP 块中。

        我们在本研究中提出了两种修补方法:patch 1D 和 patch 2D。patch 1D 意味着我们在时间维度上分割特征图并将帧与其相邻内容堆叠。后者将特征图视为图像,将其拆分为不仅在时间维度上而且在频率维度上的正方形补丁。

3.2  MLP Block

        MLP-SVNet 主要由多个相同大小的 MLP 块组成,每个 MLP 块由两个 mixer 块组成,用于对输入 X∈RT ×F 的时间和频率信息进行建模,其中 T 和 F 分别是时间和频率维度。 如图 1(中)所示,第一个 mixer 模块是时间 mixer 模块。它将密集变换应用于输入的时间维度。因为时间维度是特征图的列,为了方便实现,我们在时间mixer块前后添加转置操作。第二个是频率混合器块,它在频率维度上应用密集变换以混合频率特征。

        对于每个 mixer 块,它包含两个密集层、残差连接和一个元素级非线性激活函数 GELU [16],如图 1(右)所示。如上所述,MLP块可以写成如下:

        在这里T表示交换时间和频率维度的转置操作。并且,mixer定义如下:

         这里σ是GELU函数,LN是层归一化。 W1 和 W2 表示两个密集层的变换矩阵。此外,每个 MLP 块具有相同的输入大小。这种“各向同性”的设计与Transformers最为相似。我们尝试了金字塔结构,其较深的块具有较低的分辨率和较高的频率,但结果不太好。此外,MLP-SVNet 不使用任何位置嵌入,因为 MLP 块对输入标记的顺序很敏感。

3.3 损失函数

        为了明确地增强类内样本的相似性和类间样本的多样性,已经提出了几种基于 softmax 损失函数的变体,我们在之前的论文中对不同的损失函数进行了详细比较 [17 ]。在本文中,我们选择了它们中性能最好的,Additive Angular Margin softmax (AAM-softmax) [18] 将用于训练模型。

4.实验

4.1 数据集

        所提出的系统 MLP-SVNet 的性能由 VoxCeleb [19] 数据集进行评估。 VoxCeleb2 开发集用于训练。 它包括从 YouTube 视频中提取的 5,994 位说话者中的 1,092,009 条话语。 为了生成额外的训练样本并增加数据的多样性,我们使用 MUSAN [21] 和 RIR 数据集 [22] 执行在线数据增强 [20]。 MUSAN 中的噪声类型包括环境噪声、音乐、电视和背景加性噪声的杂音。 增强数据是通过将噪声与原始语音混合生成的。 对于混响,使用 RIR 数据集中的 40,000 个模拟房间脉冲响应执行卷积操作。 在训练过程中,我们决定以 0.6 的概率增加每个样本。

        我们使用具有 25ms 窗口和 10ms 移位的 40 维滤波器组作为声学特征。所有 MLP-SVNet 都在 300 帧的语音特征块上进行训练。在测试过程中,我们首先将每个话语分成多个 300 帧的块。然后,我们通过平均从这些块中提取的嵌入来获得每个话语的嵌入。

4.2 配置

        在训练期间,MLP-SVNets 由 SAM [23] 优化器优化,动量为 0.9,权重衰减为 1e-4。此外,我们采用 AAM-softmax [18] 作为损失函数以获得更好的性能。 AAM 的 scale 参数和 margin 分别设置为 32 和 0.2。整个训练过程将持续 165 个 epoch,而学习率从 0.1 指数下降到 1e-5。训练在 4 个 GPU 上并行进行,批量大小设置为 64。

4.3 不同补丁方法的研究

表 1. 不同补丁方法的结果。这些结果都是在 MLP 块的数量设置为 6 时获得的。没有补丁意味着不将帧与其相邻内容堆叠。

        首先,我们将对 MLP-SVNet 中的不同修补方法进行调查,结果如表 1 所示。从表中我们可以发现,在所有结果中,patch 1D 在这个与文本无关的说话人验证任务中获得了最佳性能.它表明将帧与其相邻内容堆叠可以更好地聚合本地信息并带来显着的性能提升。然而,这种现象在patch 2D方法中没有出现,这意味着沿频率维度进行分裂不利于提取好的说话人信息。

        如上所述,patch 1D 优于其他具有最低 EER 的修补方法。基于patch 1D方法,在表2中对patch size的影响进行了探索。根据结果,我们发现有必要通过patching方法引入一些局部信息,但是太大的patch size会影响性能.

表 2. 不同补丁大小的结果。这些结果是通过补丁一维方法获得的,MLP 块数设置为 6。补丁大小 = 1 相当于不将帧与其相邻内容堆叠,这意味着没有补丁。

4.4 不同 MLP 块数的调查

        在我们的实验中,我们还分析了 MLP 块数对 MLP-SVNet 的影响。不同块数的 EER 结果如表 3 所示。我们看到块数的增加只带来了一点点改进,即使只使用了几个块,MLP-SVNet 也可以达到相当的性能。这得益于 MLP-SVNet 对全局信息建模的出色能力。使用时间混合器块,可以很好地聚合和混合全局信息。

表 3. 不同 MLP 块数的结果。使用patch 1D方法获得结果,大小设置为3。

4.5 与其他系统比较

        表 4 中给出了其他说话人验证系统和我们提出的 MLP-SVNet 系统的性能概述。根据结果,我们提出的架构 MLP-SVNet 明显优于大多数传统系统,除了最先进的 ECAPA-TDNN 系统,该系统具有更专门的设计来利用多尺度信息。它表明,与其他基于卷积或自注意力的模型相比,具有较少归纳偏差和更多可训练参数的 MLP 在捕获远程依赖关系和局部特征方面更胜一筹。

表 4. 与其他说话人验证系统的比较。我们在实验中实现了所有这些系统。

        因为提出的 MLP-SVNet 完全基于 MLP,所以它的架构与基于卷积或自注意力的模型有很大不同。我们期望系统与最先进的系统融合可以进一步提高性能。表 5 展示了不同融合系统的结果。它表明 ECAPA-TDNN 和 MLP-SVNet 的融合提供了最显着的性能增益,这表明与 X-vector、R-vector 和 S-vector 相比,它可以产生最互补的说话人嵌入。

表 5. 不同系统与 ECAPATDNN 融合的结果。系统融合基于分数加权求和。 ECAPA-TDNN 是最先进的系统。

5.结论

        在这项工作中,我们提出了一种新的基于多层感知器的说话人验证网络 (MLP-SVNet),它不使用任何卷积或自注意机制。它在时间或频率上应用 MLP,同时对局部和全局信息进行建模。在实验中,结果表明 MLP-SVNet 可以显着优于 X-vector、R-vector 和 S-vector。它表明,与其他模型相比,MLP-SVNet 在捕获远程依赖关系和局部特征方面更胜一筹。此外,得益于 MLP-SVNet 完全不同的架构,它很好地补充了 SOTA 系统,可以进一步提高系统性能

相关文章

显卡天梯图2024最新版,显卡是电脑进行图形处理的重要设备,...
初始化电脑时出现问题怎么办,可以使用win系统的安装介质,连...
todesk远程开机怎么设置,两台电脑要在同一局域网内,然后需...
油猴谷歌插件怎么安装,可以通过谷歌应用商店进行安装,需要...
虚拟内存这个名词想必很多人都听说过,我们在使用电脑的时候...