Page 52 - 2023年第54卷第7期
P. 52
(1)规模化的单点注意力。对于规模化的单点注意力,输入包括维度的查询和键值 d和维度值 d。
k v
通过查询键值得到每个点信息,然后除以 槡 d,使用 SoftMax函数获取值的权重。通过同时查询计算
k
注意力函数,一起打包到矩阵 Q。键和值也一起压缩到矩阵 K和 V。输出矩阵的计算如下:
T
QK
( )
Attention(Q,K,V) =softmax V (4)
d
槡 k
对于注意力改进的序列到序列算法,计算隐藏状态 h与解码时刻的相关性:
j
T
e = V tanh(W S t = 1 + Uh), t,j = 1 ,2,…,N i (5)
t,j
j
式中:tanh为激活函数;V、W、U为模型的训练参数。将 e 进行归一化后得到隐藏状态 h的权重
t,j
j
a 。动态语义向量的计算公式如下:
t,j
N i
t ∑
C= a h, t = 1 ,2,…N i (6)
t,j j
j =1
图 2 注意力机制算法示意图 图 3 规模化的单点注意力
(2)多头注意力。注意力机制算法示意图如图 2所示,规模化的单点注意力如图 3所示。与包含
键、值和查询的单注意力模型 d 不同,将查询、键和值进行线性投影 h次,分别到 d和 d、d维
model k k v
度。在每个查询、键、值版本上提出并行注意力,产出了 d维度的输出值。将这些值串联并再次投
v
影,产生最终的结果如图 1所示。相比于单头注意力的优势,多头注意力能够允许模型去引入不同位
置的表达信息。多头的注意力机制的计算如下 [34] :
MultiHead(Q,K,V) =Concat(head,…,head)W O (7)
1 h
V
Q
K
head= Attention(QW ,KW ,VW ) (8)
i
i
i
i
Transformer以三种不同的方式使用多头注意力:(1)在 “编码器 - 解码器注意” 层中,查询来自
前一个解码器层,存储键和值来自编码器的输出。这允许解码器中的位置覆盖输入序列中的所有位
置。这模仿了序列到序列模型中的典型编码器- 解码器注意力机制。(2)编码器包含自注意力层。在自
注意力层中,所有键、值查询来自同一位置,编码器中的每个位置都可以关注编码器前一层中的所有
位置。( 3)解码器中的自注意力层允许解码器中的每个位置关注解码器中与该位置交互的所有位置。
4 工程应用
4.1 数据说明 本研究选取中国西南地区的某混凝土双曲拱坝坝基作为试验地点,实时监控固结灌浆
区域的灌浆压力、流量和密度参数。以固结灌浆 5#坝段灌浆孔 GJB5 - 4 - 1为例,监控的灌浆流量如
图 4所示。灌浆流量为进浆流量和出浆流量的差值,实时 监控 参数 的采 集间 隔为 5s,测 点数目为
600个,前 500个测点作为训练集,后 100个测点作为测试集。数据窗口移动说明如图 5所示,训
练集数据每次整体移动的个数为输入序列加输出序列的数目,测试集每次移动的个数为输出序列的
数目。
0
— 8 1 —