Page 156 - 《应用声学》2023年第4期
P. 156
818 2023 年 7 月
连接部分加入了 Attention 模块,具体操作是在执 Attention的计算过程如下:
行跳跃连接时不再将编码层状态直接拼接到解码
X = [Value 1 , Value 2 , · · · , Value N ] , (2)
层中,而是通过编码层状态与上采样后的解码层状
态共同计算出注意力权重系数,编码层状态与权重 其中,X 表示输入数据。
系数相乘后再与解码层状态拼接后进行解码重构。 α i = sigmoid (s (X i , Q)) . (3)
Att-U-Net的网络结构如图2所示。
由Q 和X 计算得到注意力系数 α,其中 α i 表示
Att-U-Net 共有 4 层编码和 4 层解码,对应 4 组
第i 个输入数据 X i 的重要性度量,即权重系数;s 表
跳跃连接和注意力模块。在上采样和下采样的过程
示注意力度量机制,即计算重要性程度的函数,常用
中,由于语声信号长度不统一,输入数据的大小无法
的度量机制有加性模型、点积模型等。
固定使其恰好适合上下采样操作,可能会导致特征
N
∑
维度不统一。训练中在解码层中为了确保上采样后 Att(Q, X) = α i X i . (4)
的特征与对应编码层特征维度保持一致,需要进行 i=1
填充对齐操作。同时,最后一层解码器采用了一个 最后,由注意力系数 α 和输入数据 X 相乘得到
1 ∗ 1 卷积进行降维,最终保证重构得到与输入数据 加权后数据编码。
尺寸相同的输出。 图 3 中介绍的是经典的序列问题中的 Atten-
tion 机制,而文中所用数据是二维的语谱图特征。
1.3 Attention机制
针对二维特征,Attention机制的计算步骤和原理不
Attention 机制类似于人类的视觉,能够将有 变,只需将序列中的先后位置理解为二维平面中的
限的注意力集中在重点信息上。从数学角度来看, 坐标位置,而最后得到的注意力系数 α 类似于一张
Attention是一组注意力分配系数,提高重要信息的 二维的热力图,图中被激活的区域就是权重系数大,
权重同时降低那些不重要信息的权重。如图3所示, 重要程度高的数据区域。
Attention函数的本质是一个从查询Q(Query)到一 本文针对二维语谱图特征数据设计的注意力
系列键-值对(Key-Value,K-V)的映射,得到注意力 模块,如图 4 所示。以一层编解码层为例,说明
系数α,通过α 来控制输入信息的权重。 Attention机制与 U-Net网络结合的方法。图4 上半
部分为 U-Net 对应的一层编解码层,下半部分为
...
Key Key Key N Attention模块设计。u 为上一解码层输出通过上采
Query Attention
样得到的结果,x 为对应编码层的输出,此处 u 可以
...
Value Value Value N 理解为上述 Attention 机制中的查询 Q,x 为键 -值
对 K-V,通过跳跃连接中设计的注意力模块,依据
图 3 Attention 机制 计算得到的注意力系数α 将编码层特征 x有选择性
Fig. 3 Attention mechanism 地输入解码层。因为卷积操作会产生不同通道数的
x m u
u
W u. Ψ↼×↽
α m
ReLU↼↽ W u. Ψ↼×↽ Sigmoid↼ ↽
x
W x . Ψ↼×↽
图 4 U-Net 中的 Attention 机制
Fig. 4 Attention mechanism in U-Net