! ?1 t: G. u5 d7 x6 x 【声纹识别】attention在声纹识别中的应用 ) s" S0 x7 o+ C8 ?& a( @8 ^/ G. M9 d4 y% Q+ G
【声纹识别】attention在声纹识别中的应用 T" a" d7 j1 J: y) w: t$ r
! V3 ?9 Z0 A/ y0 ]1 y& xPaper1:Attentive Statistics Pooling for Deep Speaker Embedding. Y; f) H9 m8 b9 W
Abstract 7 Y) B) F/ T/ oIntroduction9 ]3 W: ^) _% i+ Z
Evaluation + y4 @7 f. m5 u$ U. C" cConclusion9 r. T- b0 E9 s! S l* `* E) N- z
Paper2:Self-Attentive Speaker Embeddings for Text-Independent Speaker Verification 0 I8 U2 l8 t3 H# oAbstract 2 v" _# [: |- N+ }& X5 |Introduction. r% ?5 e7 q6 Q6 ~$ [7 G
Speaker verification system) }8 P- V6 }9 a" `6 @" I. `$ C
Experiment 4 ]0 J9 c* \3 n补充知识. R1 g g7 ]1 h' W5 H- i3 [& b
什么是x-vector的baseline系统?The x-vector baseline system 8 Z. m7 q, {; M! @2 E+ y& e9 N最小检测代价(Minimum Detection Cost Function, minDCF): : _7 B' n. G! G8 k. k- \5 X0 {Evaluation 7 a: b; e! R0 k$ YConclusion ! w q5 D1 v6 h* B- iReference% A: e. X, j0 k" y/ b3 [
Paper1:Attentive Statistics Pooling for Deep Speaker Embedding( O) A" k J& Z9 L+ d$ ]$ O; P
0 G! Y$ [4 O/ Z& A
Abstract$ B3 J9 B, }) h, x0 o9 r& g
+ z; h7 A7 C. E6 t; a这篇paper提出了对于深度说话人嵌入(deep speaker embedding)的注意力统计池。在传统的说话人嵌入中,帧级特征(frame-level features)是在单个话语的所有帧上平均以形成话语水平特征(utterance-level feature)。文章的方法是使用注意力机制给不同的帧不同的权重,并且同时生成加权平均数、加权标准差。在这种方式下,它可以有效地捕获到更长期的说话人特征变化。最终在NIST SRE 2012评测和VoxCeleb数据集上的表现证明了模型的对于speaker recognition有效性。& q! h- O. W* X8 G5 G5 T; k
9 k! d; j- B$ v6 \Introduction . {! A- }8 z3 f# P 3 N9 ^6 |( M6 x这一部分列了一些说话人识别的发展历史、背景的介绍! m D/ t/ L) h v6 G" X
7 [& y ~' m: U1 q R0 S* ~; O
说话人识别结合i-vector发展的非常快,i-vector主要是把说话人表征在固定低维度的特征向量。 * u0 C& c m1 W3 m% w% S深度学习用于speech中的特征提取。但是这和GMM-UBM模型对比的差别还是依赖于大量的语音数据。才能提出比较鲁棒、好的特征,但是语音的数据标注很麻烦、非常贵。( a4 I3 {0 C/ @$ `- }# f" o, P2 O
近年来,DNNs可以独立于i-vector框架,单独提取说话人识别特征向量。这种方法取得更好的效果,特别是在短时间的话语条件下。如果文本相关(text-dependent)6 g2 H, q+ F5 n6 _& A* J
文本无关说话人认证中,加入了一个平均池化层使得输入不定长语音的帧级特征可以被整合为语句级别特征/ p% p" H$ w0 O* {: Z# C
注意力机制从一开始用于NLP,目前也在逐渐被应用到这个领域。) n3 f/ \7 W D0 \; F& d' B; n
提出了一种新的池化方式,叫做注意力统计池化能够输出权重标准差、帧级特征的权重平均值,规避了上面3说到的DNN提特征方法往往对于短时语音效果的缺点,即也可以应用于长时语音。 + y3 T4 K% c$ ]" y6 b6 s8 O* l" W. x6 h" p; j
上图中首先是我们的音频会分成很多帧,由帧级特征提取器提出不同的帧,帧级特征进入池化层,池化层的作用就是把这些帧级特征平均,得到言语级的特征。再根据言语级的特征辨识出说话人的特征。- z7 @. t: S! D2 [! L4 B1 P
5 i5 c" r" E" F2 f那么,是如何进行统计池化的呢?首先统计帧级特征的平均值如(1)式所示;计算基于帧级特征ht的标准差。 * n6 o1 L1 Z( J% I; N0 w7 s( }( \6 \1 V2 j
注意力模型在原始的DNN,并且为帧级特征计算了大量分数et,其中v转置不知道?f(Wht+b)+k是一个激活函数。就像tanh或者ReLU等函数。 2 g/ W i4 P6 ?- | o) L! k x) ~- A0 O3 j! z" a+ f; a
接下来这个et通过softmax激活函数后,可以得到at。 0 g& o! j7 Q# h% O% x 8 x6 m) b' [* A! O Y9 s/ p经过at ht的激活函数结果是平均值u- x6 `6 v, v( Z! u0 U7 e, E
0 b. H; L1 j, Z! i: z由此得到加权后的平均值和标准差$ I. S( E0 L8 Y/ M
! `" S. x8 \; z: W' V' p; B
' R) b6 l/ f2 o" I& X9 l0 f* s' ]9 S
Evaluation + h9 j0 m/ ` ~% Y3 b* Z : u9 g+ r1 K0 k6 h4 W- O下面采用了5种embedding的方法,测试NIST SRE2012 通用场景2; NIST SRE2012 说话时长; VoxCeleb共三种情况。 5 d8 T0 R# H$ e' v& d3 K' U& e比较神奇的是i-vector经常作为一种baseline方案,居然有如此低的EER,文中给出的解释是NIST 2012数据集中的数据语音本身就比较长。- K, X1 |! V3 L! U
9 M2 g7 t; Z2 ?8 H8 q( c
2 T5 W0 O: V, T% h" b7 X$ X6 Y" I: G" n- k
, T$ Y0 f% L( V6 @( `, g1 cConclusion8 L' Y* g0 X$ X- V
- t8 ^3 N9 k g' V我们已经提出了注意力统计池化方式来提取deep speaker embedding,**池化层计算的是经过注意力机制作用的加权特征平均值、加权特征标准差。**这使得说话人其纳入能够focus重要的帧。不仅如此,长时间的偏差能够被说话人统计在标准差中。比如结合了注意力机制和标准差提供了协同效应。4 s# ]0 c! T8 A
& Y9 g7 V6 t T) ~: T+ a3 X, u2 S
Paper2:Self-Attentive Speaker Embeddings for Text-Independent Speaker Verification& S. B$ U1 k- X2 ?' V