基于并行分支结构的捕捉局部和全局特征说话人确认方法

未命名 07-27 阅读:206 评论:0


1.本发明属于模式识别技术领域,具体涉及一种说话人确认方法。


背景技术:

2.自动说话人确认(automatic speaker verification,asv)是一项用于判断一段语音是否由特定说话人发出的任务。近年来,asv得到了显著发展,广泛应用于智能住宅系统、基于语音的身份验证、银行交易和远程支付等真实世界的应用场景中。一般来说,该领域的研究主要集中在两个方面。第一个方面是说话人嵌入(speaker embedding)提取器,其目的是从可变长度的话语中提取具有固定维度的说话人向量,以表示说话人的声学特征,目前基于深度学习的嵌入提取器已经成为主流技术。另一个方面是后端评分模型,其目的是计算说话人嵌入向量之间的相似度,其中简单的余弦距离度量通常用于评分判断,此外还可以训练更为复杂的后端评分模型,如概率线性判别分析(probabilistic linear discriminant analysis,plda)。
3.目前,基于卷积神经网络的模型已经在asv上取得了非凡成就。基于一维卷积的x-vector是asv中最流行的说话人嵌入提取框架,在此基础上,不同的网络结构已经被提出用于提取说话人嵌入,包括时延神经网络(time-delay neural network,tdnn)、resnet及其变形。值得关注的是,ecapa-tdnn系统将res2block与squeeze-and-excitation(se)模块集成在se-res2block中,并结合tdnn网络,在asv上取得了显著的性能。
4.尽管ecapa-tdnn取得了显著的成功,但其仍存在局限性。它主要关注局部特征建模,缺乏全局特征建模与融合。同时,卷积操作的机制是使用固定大小的卷积核来捕捉语音中局部的时域和频域说话人模式,但是,固定的卷积核大小限制了语音特征的感受野。因此,在缺乏全局上下文信息的情况下,说话人特征表征的提取受到限制。为了克服这个问题,许多基于transformer的模型已经被引入。多头自注意机制具有捕捉长范围依赖关系的优点,使得transformer具有强大的全局建模能力。然而,基于transformer的结构在asv任务性能方面仍有很大的提升空间。


技术实现要素:

5.为了克服现有技术的不足,本发明提供了一种基于并行分支结构的捕捉局部和全局特征说话人确认方法,采用branch模块来构建两个并行分支结构,分别捕获asv任务中说话人的局部和全局特征信息;其中,一个分支采用多头自注意力机制来捕捉长范围依赖关系,另一个分支利用se-res2block模块提取局部特征,此外采用了不同的融合机制来增强branch-ecapa-tdnn的性能。最终在voxceleb和cn-celeb数据集上进行了大量实验,结果表明了提出的方法的有效性。
6.本发明解决其技术问题所采用的技术方案包括如下步骤:
7.步骤1:构建branch-ecapa-tdnn框架:
8.所述branch-ecapa-tdnn框架中,首先输入特征经过一维卷积层、relu非线性层和
批归一化bn层;其次经过三个branch模块,将每个branch模块的输出通过残差连接合并为该阶段的输出,该输出通过一个一维卷积层和relu非线性层得到帧级别的说话人特征,再经过一个基于自注意力机制的统计池化层得到句子级别的说话人特征,最终通过一个全连接层fc和批归一化bn层得到说话人嵌入,并采用aam-softmax损失函数进行训练;
9.步骤2:构建branch模块;
10.所述branch模块包括两个分支:全局特征建模分支和局部特征建模分支,从这两个分支中分别提取全局和局部特征信息;
11.步骤2-1:全局特征建模分支:
12.所述全局特征建模分支是多头自注意力模块,用于提取全局说话人特征,具体计算过程如下:
13.在多头自注意力中,表示输入,其中t和d分别表示特征的时间帧数和声学特征维度;假设自注意力的注意头数是h,对于每个注意头,输入特征x被投影到维度为e的查询q、键k和值v子空间中,具体如下:
[0014][0015]
在上述公式中,qi、ki和vi均在空间上,分别表示第i个注意力头的查询、键和值的嵌入;k,v是线性投影参数,且其中dk=e/h;
[0016]
计算查询和所有键的点积,将结果除以并应用softmax函数以获得注意力矩阵
[0017][0018]
最后,将所有的自注意力头的输出在子空间中进行拼接,然后通过以下变换重新变回原始大小:
[0019]
ya=concat[z1,z2,...,zh]wo.(3)
[0020]
其中是投影层的一个参数矩阵;
[0021]
步骤2-2:局部特征建模分支:
[0022]
局部特征建模分支是一个se-res2block模块,它集成了res2net模块和squeeze-and-excitation块,用于进一步表示具有各种细粒度的多尺度局部特征;
[0023]
首先,对于res2net模块,将由1
×
1卷积生成的特征映射分成s个子集其中所有通道具有相同的空间大小,每个通道都是输入特征映射通道的1/s,其中s被称为尺度;res2net模块的输出{m1,m2,...,ms}表示如下:
[0024][0025]
res2net模块的输出{m1,m2,...,ms}被拼接起来,经过后续的1
×
1卷积层,生成m,即多尺度特征融合向量;
[0026]
接下来,输出通过squeeze-and-excitation模块进行特征响应的重新校准;压缩操作通过对时间域上的帧级特征映射层进行全局平均池化来获取特征映射的压缩向量u:
[0027][0028]
其中m
t
是m的第t帧;
[0029]
激励操作通过以下方式获得特征映射的每个通道的权重:
[0030]
q=σ(w2(relu(w1u))).(6)
[0031]
其中,σ(
·
)表示sigmoid函数,b是瓶颈层中所减少的维度数量;
[0032]
最后,m的每个维度,表示为mi,被重新调整为:
[0033][0034]
其中qi是q的第i个元素。进一步将所有y
ri
拼接成一个矩阵yr=[y
r1
,y
r2
,...,y
rd
];
[0035]
步骤3:选择以下三种融合机制中的一种对局部和全局的说话人特征进行融合;
[0036]
步骤3-1:并列:
[0037]
将ya和yr并列拼接起来,然后将该特征投影回原始维度:
[0038]ymerge
=concat(ya,yr)w
con
,(8)
[0039]
其中是线性投影的可学习参数矩阵;
[0040]
步骤3-2:深度卷积:
[0041]
将深度卷积应用到融合模块中;首先,将两个分支的输出ya和yr进行并列拼接,然后使用深度卷积来集成空间信息交换过程,最后使用残差连接从不同的角度聚合信息以增强融合过程;详细过程如下:
[0042][0043]
其中,dwconv表示深度卷积,是线性投影的可学习参数矩阵;
[0044]
步骤3-3:squeeze-and-excitation操作:
[0045]
在步骤3-2的基础上添加一个se模块,实现过程如下:
[0046]
将深度卷积应用到融合模块中,首先,将两个分支的输出ya和yr进行并列拼接,然后使用深度卷积来集成空间信息交换过程,之后通过squeeze-and-excitation模块进行输出特征的重新校准,最后使用残差连接从不同的角度聚合信息以增强融合过程;详细过程如下:
[0047]
[0048]
本发明的有益效果如下:
[0049]
1.本发明提出了一种对现有先进的ecapa-tdnn进行扩展的架构,称为branch-ecapa-tdnn。通过设计branch模块中的自注意力分支和se-res2block分支,并从每个分支中提取局部和全局特征信息,实现比ecapa-tdnn更好的性能。
[0050]
2.本发明采用不同的融合机制来充分利用局部和全局特征,以实现卓越的性能。
附图说明
[0051]
图1为本发明提出的branch-ecapa-tdnn的网络结构框架图。
[0052]
图2为本发明构建的branch模块的网络结构。
[0053]
图3为本发明构建的三种融合机制示意框图,其中图3(a)为本发明构建的融合模块框架;图3(b)为并列融合机制;图3(c)为深度卷积融合机制;图3(d)为se融合机制。
具体实施方式
[0054]
下面结合附图和实施例对本发明进一步说明。
[0055]
尽管ecapa-tdnn取得了显著的成功,但仍存在局限性。它主要关注局部特征建模,缺乏全局特征融合。同时,卷积操作中固定的卷积核大小限制了语音特征的感受野。因此,在缺乏全局上下文信息的情况下,说话人特征表示的提取受到限制。为了克服现有技术的不足,本发明提出一种基于并行分支结构的捕捉局部和全局特征的说话人确认系统branch-ecapa-tdnn,采用两个并行的分支来捕获asv中说话人的局部和全局特征信息,进一步提升asv系统中说话人的特征建模能力。包括如下步骤:1)为了捕捉局部和全局说话人特征,提出branch模块来构建两个并行分支结构,其中一个分支采用多头自注意力机制来捕捉长范围依赖关系,另一个分支利用se-res2block模块提取局部特征;2)采用基于并列,基于深度卷积和基于squeeze-and-excitation的三种不同的特征融合机制来进一步增强branch-ecapa-tdnn系统的性能。在voxceleb数据集上的结果表明,branch-ecapa-tdnn系统实现了低于ecapa-tdnn基线24.10%的等错误率(equal error rate,eer);在cn-celeb数据集上的结果表明,branch-ecapa-tdnn系统实现了低于ecapa-tdnn基线7.92%的等错误率,实现了优越的性能。
[0056]
一种基于并行分支结构的捕捉局部和全局特征说话人确认方法,包括如下步骤:
[0057]
步骤1:构建branch-ecapa-tdnn框架:
[0058]
所述branch-ecapa-tdnn框架中,首先输入特征经过一维卷积层,relu非线性层和批归一化(batch normalization,bn)层;其次经过三个branch模块,为了充分利用多层特征信息,将每个branch模块的输出通过残差连接合并为该阶段的输出,该输出通过一个一维卷积层和relu非线性层得到帧级别的说话人特征,再经过一个基于自注意力机制的统计池化层得到句子级别的说话人特征,最终通过一个全连接层(fully connected layer,fc)和bn层得到说话人嵌入,并采用aam-softmax损失函数进行训练。
[0059]
步骤2:构建branch模块;
[0060]
所述branch模块包括两个分支:全局特征建模分支和局部特征建模分支,从这两个分支中分别提取全局和局部特征信息;
[0061]
步骤2-1:全局特征建模分支:
[0062]
所述全局特征建模分支是多头自注意力模块,用于提取全局说话人特征,具体计算过程如下:
[0063]
在多头自注意力中,表示输入,其中t和d分别表示特征的时间帧数和声学特征维度;假设自注意力的注意头数是h,对于每个注意头,输入特征x被投影到维度为e的查询q、键k和值v子空间中,具体如下:
[0064][0065]
在上述公式中,qi、ki和vi均在空间上,分别表示第i个注意力头的查询、键和值的嵌入;k,v是线性投影参数,且其中dk=e/h;
[0066]
计算查询和所有键的点积,将结果除以并应用softmax函数以获得注意力矩阵
[0067][0068]
最后,将所有的自注意力头的输出在子空间中进行拼接,然后通过以下变换重新变回原始大小:
[0069]
ya=concat[z1,z2,...,zh]wo.(12)
[0070]
其中是投影层的一个参数矩阵;
[0071]
步骤2-2:局部特征建模分支:
[0072]
局部特征建模分支是一个se-res2block模块,它集成了res2net模块和squeeze-and-excitation块,用于进一步表示具有各种细粒度的多尺度局部特征;
[0073]
首先,对于res2net模块,将由1
×
1卷积生成的特征映射分成s个子集其中所有通道具有相同的空间大小,每个通道都是输入特征映射通道的1/s,其中s被称为尺度;res2net模块的输出{m1,m2,...,ms}表示如下:
[0074][0075]
res2net模块的输出{m1,m2,...,ms}被拼接起来,经过后续的1
×
1卷积层,生成m,即多尺度特征融合向量;
[0076]
接下来,输出通过squeeze-and-excitation模块进行特征响应的重新校准;压缩操作通过对时间域上的帧级特征映射层进行全局平均池化来获取特征映射的压缩向量u:
[0077][0078]
其中m
t
是m的第t帧;
[0079]
激励操作通过以下方式获得特征映射的每个通道的权重:
[0080]
q=σ(w2(relu(w1u))).(15)
[0081]
其中,σ(
·
)表示sigmoid函数,b是瓶颈层中所减少的维度
数量;
[0082]
最后,m的每个维度,表示为mi,被重新调整为:
[0083][0084]
其中qi是q的第i个元素。进一步将所有y
ri
拼接成一个矩阵yr=[y
r1
,y
r2
,...,y
rd
];
[0085]
步骤3:选择以下三种融合机制中的一种对局部和全局的说话人特征进行融合;
[0086]
步骤3-1:并列:
[0087]
将ya和yr并列拼接起来,然后将该特征投影回原始维度:
[0088]ymerge
=concat(ya,yr)w
con
,(17)
[0089]
其中是线性投影的可学习参数矩阵;
[0090]
步骤3-2:深度卷积:
[0091]
将深度卷积应用到融合模块中;首先,将两个分支的输出ya和yr进行并列拼接,然后使用深度卷积来集成空间信息交换过程,最后使用残差连接从不同的角度聚合信息以增强融合过程;详细过程如下:
[0092][0093]
其中,dwconv表示深度卷积,是线性投影的可学习参数矩阵;
[0094]
步骤3-3:squeeze-and-excitation操作:
[0095]
在步骤3-2的基础上添加一个se模块,完整的实现过程如下:
[0096]
将深度卷积应用到融合模块中,首先,将两个分支的输出ya和yr进行并列拼接,然后使用深度卷积来集成空间信息交换过程,之后通过squeeze-and-excitation模块进行输出特征的重新校准,最后使用残差连接从不同的角度聚合信息以增强融合过程,在融合过程中,引入se操作可以广泛利用全局信息并增强深度卷积的输出。详细过程如下:
[0097][0098]
具体实施例:
[0099]
(1)数据准备
[0100]
本次实验中,在voxceleb和cn-celeb数据集上证明了所提方法的有效性。
[0101]
在voxceleb2的开发集上训练说话人确认模型,该数据集包含来自5,994个说话人的1,092,009个语音片段。使用voxceleb1的开发集和测试集进行评估。评估包含三种类型的试验,分别是voxcelebl-o、voxceleb1-e和voxceleb1-h。
[0102]
将来自cn-celeb2的1,966个说话人和cn-celeb1开发集中的797个说话人组合在一起作为训练集,并在cn-celeb1测试集上进行评估。
[0103]
在本实验中,使用数据增强来进行训练。数据增强中的噪声数据集来自musan和rirs。此外,在训练期间,应用了速度扰动,随机改变话语的速度比例为0.9或1.1,速度比例
为0.9、1.0和1.1的比例设置为1:1:1。
[0104]
(2)模型结构与训练细节
[0105]
在搭建模型时,使用wespeaker工具包来实现所提出的branch-ecapa-tdnn和ecapa-tdnn基线系统。输入特征为80维的对数梅尔特征(fbank),使用25ms长度的汉明窗口和10ms窗移。所有训练数据都被分成200帧,并进行倒谱平均归一化。所有模型都使用aam-softmax损失进行训练,其中缩放因子为32,初始边缘为0,最终边缘为0.2。使用一种边缘策略来更新边缘。学习率使用warm-up和指数衰减策略来更新,其中初始学习率为0.1,最终学习率为5e-5。将se-block中的瓶颈维度b设置为128,res2net模块中的尺度s设置为8,并将全连接层的节点数设置为192。
[0106]
除了ecapa-tdnn结构之外,还使用了tdnn、extended-tdnn(e-tdnn)和resnet作为基线系统。
[0107]
(3)评估指标
[0108]
在测试阶段,采用余弦相似度作为评分标准。采用自适应分数归一化(as-norm)对得分进行归一化处理。使用前n
top
个同组段进行得分归一化。采用标准的等错误率(eer)和最小检测代价函数(mindcf)作为评估指标。对于mindcf,设置p
target
=0.01,c
miss
=c
fa
=1。
[0109]
(4)实验结果
[0110]
表1为voxceleb和cn-celeb数据集上的eer(%)和mindcf对比,其中参数c表示se-res2block的卷积层中滤波器的数量。"(b)"、"(c)"和"(d)"分别表示三种特征融合机制,"as-norm300"指的是n
top
=300
[0111]
表1 voxceleb和cn-celeb数据集上的eer(%)和mindcf对比
[0112][0113][0114]
表1列出了所提出的branch-ecapa-tdnn与基准系统的性能比较。从表中可以看
出,首先,所提出的方法均优于基准系统,这表明通过引入多头自注意力机制来提取全局说话人特征,全局建模能力得到了极大的提升。其次,两个分支共享相同的输入,但关注不同范围的空间关系,从而实现了彼此的优势互补。特别地,与ecapa-tdnn架构相比,在不使用as-norm的情况下,所提出的架构在voxceleb数据集上实现了高达24.10%的相对eer降低,在cn-celeb数据集上实现了高达7.92%的相对eer降低。第三,随着c值的增加,网络的复杂度也会增加,从而提高性能,但也会带来更大的参数计算和信息冗余。最后,使用as-norm的结果表明,通过对得分进行标准化,可以进一步提高性能并改善校准。
[0115]
如表1所示,进行了融合方法的比较实验。首先,基于并列的合并方法是一种简单而有效的方法,它将局部和全局提取器的输出信息并列拼接起来,并沿着特征维度进行投影,而不交换相邻信息。因此,在较小的参数规模c=512下,并列拼接方法的性能改进受到限制,然而在更大的参数规模c=1024下,它显示出更具竞争力的效果。其次,实验结果表明,当将深度卷积添加到融合模块中时,所提出的模型在两个数据集上的性能显著提高,这也表明深度卷积可以有效地深度集成两个分支的输出特征。最后,可以看出,在并列和深度卷积中添加se块可以带来显著的性能提升,分别在voxceleb-e和cn-celeb数据集上实现0.899%和6.922%的eer,达到了先进的性能。这也表明,se操作能够有效地关注深度卷积后的特征,从而提高特征融合的效率。

技术特征:
1.一种基于并行分支结构的捕捉局部和全局特征说话人确认方法,其特征在于,包括如下步骤:步骤1:构建branch-ecapa-tdnn框架:所述branch-ecapa-tdnn框架中,首先输入特征经过一维卷积层、relu非线性层和批归一化bn层;其次经过三个branch模块,将每个branch模块的输出通过残差连接合并为该阶段的输出,该输出通过一个一维卷积层和relu非线性层得到帧级别的说话人特征,再经过一个基于自注意力机制的统计池化层得到句子级别的说话人特征,最终通过一个全连接层fc和批归一化bn层得到说话人嵌入,并采用aam-softmax损失函数进行训练;步骤2:构建branch模块;所述branch模块包括两个分支:全局特征建模分支和局部特征建模分支,从这两个分支中分别提取全局和局部特征信息;步骤2-1:全局特征建模分支:所述全局特征建模分支是多头自注意力模块,用于提取全局说话人特征,具体计算过程如下:在多头自注意力中,表示输入,其中t和d分别表示特征的时间帧数和声学特征维度;假设自注意力的注意头数是h,对于每个注意头,输入特征x被投影到维度为e的查询q、键k和值v子空间中,具体如下:在上述公式中,q
i
、k
i
和v
i
均在空间上,分别表示第i个注意力头的查询、键和值的嵌入;k,v是线性投影参数,且其中d
k
=e/h;计算查询和所有键的点积,将结果除以并应用softmax函数以获得注意力矩阵并应用softmax函数以获得注意力矩阵最后,将所有的自注意力头的输出在子空间中进行拼接,然后通过以下变换重新变回原始大小:y
a
=concat[z1,z2,...,z
h
]w
o
.(3)其中是投影层的一个参数矩阵;步骤2-2:局部特征建模分支:局部特征建模分支是一个se-res2block模块,它集成了res2net模块和squeeze-and-excitation块,用于进一步表示具有各种细粒度的多尺度局部特征;首先,对于res2net模块,将由1
×
1卷积生成的特征映射分成s个子集其中所有通道具有相同的空间大小,每个通道都是输入特征映射通道的1/s,其中s被称为尺度;res2net模块的输出{m1,m2,...,m
s
}表示如下:
res2net模块的输出{m1,m2,...,m
s
}被拼接起来,经过后续的1
×
1卷积层,生成m,即多尺度特征融合向量;接下来,输出通过squeeze-and-excitation模块进行特征响应的重新校准;压缩操作通过对时间域上的帧级特征映射层进行全局平均池化来获取特征映射的压缩向量u:其中m
t
是m的第t帧;激励操作通过以下方式获得特征映射的每个通道的权重:q=σ(w2(relu(w1u))).(6)其中,σ(
·
)表示sigmoid函数,b是瓶颈层中所减少的维度数量;最后,m的每个维度,表示为m
i
,被重新调整为:其中q
i
是q的第i个元素。进一步将所有y
ri
拼接成一个矩阵y
r
=[y
r1
,y
r2
,...,y
rd
];步骤3:选择以下三种融合机制中的一种对局部和全局的说话人特征进行融合;步骤3-1:并列:将y
a
和y
r
并列拼接起来,然后将该特征投影回原始维度:y
merge
=concat(y
a
,y
r
)w
con
,(8)其中是线性投影的可学习参数矩阵;步骤3-2:深度卷积:将深度卷积应用到融合模块中;首先,将两个分支的输出y
a
和y
r
进行并列拼接,然后使用深度卷积来集成空间信息交换过程,最后使用残差连接从不同的角度聚合信息以增强融合过程;详细过程如下:其中,dwconv表示深度卷积,是线性投影的可学习参数矩阵;步骤3-3:squeeze-and-excitation操作:在步骤3-2的基础上添加一个se模块,实现过程如下:将深度卷积应用到融合模块中,首先,将两个分支的输出y
a
和y
r
进行并列拼接,然后使用深度卷积来集成空间信息交换过程,之后通过squeeze-and-excitation模块进行输出特征的重新校准,最后使用残差连接从不同的角度聚合信息以增强融合过程;详细过程如下:

技术总结
本发明公开了一种基于并行分支结构的捕捉局部和全局特征说话人确认方法,采用Branch模块来构建两个并行分支结构,分别捕获ASV任务中说话人的局部和全局特征信息;其中,一个分支采用多头自注意力机制来捕捉长范围依赖关系,另一个分支利用SE-Res2Block模块提取局部特征,此外采用了不同的融合机制来增强Branch-ECAPA-TDNN的性能。最终在VoxCeleb和CN-Celeb数据集上进行了大量实验,结果表明了提出的方法的有效性。提出的方法的有效性。提出的方法的有效性。


技术研发人员:张晓雷 姚嘉迪 景瑞昊
受保护的技术使用者:西北工业大学
技术研发日:2023.04.06
技术公布日:2023/7/25
版权声明

本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

飞行汽车 https://www.autovtol.com/

分享:

扫一扫在手机阅读、分享本文

相关推荐