Page 269 - 《软件学报》2021年第8期
P. 269

琚生根  等:基于关联记忆网络的中文细粒度命名实体识别                                                     2551





























                                              Fig.4   Multi-head self-attention layer
                                                   图 4   多头自注意力层

                    如式(8)所示,多头自注意力机制通过不同的线性映射将输入向量映射成 query,key 和 value 的形式,并映射
                 到不同的子空间中,每个子空间反映不同的隐藏特征:
                                             score i () e =  attention (eW i Q ,eW i K  ,eW i V  )    (8)
                                                     Q
                                                            V
                                                      ,
                 其中,score i (e)表示第 i 个自注意力头的输出,WW       i K  ,W 表示映射到第 i 个子空间对应的参数.各参数的维度大
                                                     i
                                                            i
                 小为W ∈  i Q  dd×  Q  ,W i K  =\  dd×  v  ,W ∈ \  i V  \  dd×  v  ,其中,d 表示多头自注意力层输入向量的维度,d Q ,d V ,d K 分别表示 query,
                 key 和 value 的映射维度.
                    然后,如式(9)所示,计算输入序列中某个位置的 query 和所有位置的 key 的相似度,得到注意力矩阵:
                                                                  ⎛  QK ⎞  T
                                             attention Q K V =         ⎟  V                           (9)
                                                    (, , ) softmax ⎜
                                                                  ⎝  d ⎠
                    这个注意力矩阵表示了句子中两两位置之间的关注度.将注意力矩阵和该位置 value 相乘,捕获句子中任意
                 位置之间的关系.
                    最后,如式(10)所示,将各个子空间的计算结果进行拼接,经过线性映射,得到最终的输出:
                                         m(e)=concat(score 1 (e),score 2 (e),…,score n (e))W O       (10)
                       O
                 其中,W ∈\   nd v d×  ,n 是子空间的数量.
                    这样,最后得到的输入序列就包含了每个自注意力头学习到的语义和语法特征.
                 2.5   条件随机场层和输出层
                    条件随机场的作用是约束标签序列的预测,通过式(11),计算预测标签序列 y=l 1 ,l 2 ,…,l s 的概率 P(y|s)为
                                                     exp(∑  (W  i l  h + b ( i l − 1 , )l i  ))
                                               (| )s =
                                              Py          i  CRF i  CRF                              (11)
                                                      ∑ y′ exp(W CRF i  b CRF 1 , ) ′  i l  )
                                                                   ( i l − ′
                                                              i l′
                                                               h +
                 其中,W CRF 和 b CRF 是条件随机场层的权重和偏置,反映的是各标签之间的转换分数,通过训练对参数进行更新.
                    给定带标签的训练集{( , )}|ss     N  ,训练的损失函数为句子级别的对数似然损失,如式(12)所示.
                                       i  j  i− 1
                                                   L =−∑ N  log( (Py  | ))s                          (12)
                                                        i− 1    i  i
   264   265   266   267   268   269   270   271   272   273   274