Page 407 - 《软件学报》2025年第9期
P. 407

4318                                                       软件学报  2025  年第  36  卷第  9  期


                                                             /
                                                               N ∑
                                                    ′
                                                   S = exp(S i,j )  exp(S i,r )                       (8)
                                                    i,j
                                                              r=1
                    接着, 为了除去非邻居节点的影响, 避免引入冗余的信息, 本文基于历史社交网络快照序列内的历史邻居信息
                             ′
                 对注意力矩阵     S  进行掩码, 使其只能关注节点的历史邻居. 社交网络快照序列内的历史邻居矩阵计算如下式:

                                                             l ∑
                                                         M =   A 1                                    (9)
                                                                t
                                                            t=1
                                                   ′
                 其中,  M ∈ R N×N                   S  进行操作如下式:
                            . 然后使用   M  对注意力矩阵
                                                           
                                                            S , M i,j > 0
                                                              ′
                                                           
                                                        ′    i,j
                                                   mask(S ) =                                       (10)
                                                            0,  M i,j = 0
                                                           
                 其中,   mask(S ) 是掩码注意力矩阵, 简单表示为      ˜ S . ′
                           ′
                                             ˜ S  能够动态地学习到节点间的相互影响关系, 本文将其与               GCN  结合, 使只能
                                              ′
                    最后, 由于空间掩码注意力矩阵
                 学习静态拓扑结构的        GCN  能够自适应地获得动态的空间结构信息, 从而使模型更适应于真实的社交网络链路预
                                     ′          ˜ 1
                 测. 利用掩码注意力矩阵       ˜ S  和时间特征   X   进行图卷积的操作如下所示:
                                                 tatt
                                                  1         −1/2 ˆ S ˆ D −1/2 ˜ 1
                                                               ′
                                                X   = ReLU( ˆ D    X W)                              (11)
                                                  statt              tatt
                 其中,   ˆ S = ˜ S + I  是   ˆ S  的度矩阵,  W ∈ R h·d k ×D  是可学习的权重参数.   X statt  ∈ R N×D  表示学习到的短期分量社交网络序
                                                                     1
                                 ′
                          ′
                       ′
                                                                            2    N×D   3    N×D
                 列的时空特征, 类似地, 可以得到中期、长期分量社交网络序列的时空特征                       X statt  ∈ R   和  X statt  ∈ R  .

                 2.6   融合注意力网络
                    在得到不同粒度社交网络快照序列的时空特征后, 需要将这些特征进行融合, 并进行链路预测. 为此, 本文提
                 出了融合注意力网络来融合短期、中期和长期分量的时空特征. 具体地, 将短期分量的时空特征作为短期、中期
                 和长期分量注意力神经网络中的查询, 从而从短期、中期和长期分量中提取出有用的短期、中期和长期信息, 然
                 后将短期、中期和长期信息进行相加得到综合的时空特征, 最后将综合时空特征输入到多层全连接神经网络中完
                 成社交网络链路预测任务.
                    首先, 对粒度    1                  1                 Q ,K ,V , 计算如下所示:
                                                                        1
                                                                          1
                                                                     1
                                的社交网络时空特征        X statt   进行线性变化, 得到
                                                  1  1  1   1   Q 1  K 1  V 1
                                                [Q ,K ,V ] = X  [W ,W ,W ]                           (12)
                                                            statt
                                                                             K 1
                                                                         Q 1
                       1
                 其中,  Q ,K ,V ∈ R N×d   分别是粒度  1  注意力神经网络的查询、键和值,       W ,W ,W  V 1  ∈ R D×d  是可学习的权重参数.
                            1
                         1
                 对粒度   2  的社交网络时空特征       X statt  , 本文以粒度  1  的时空特征  X statt   作为粒度  2  注意力神经网络的查询, 计算
                                                                     1
                                           2
                 Q ,K ,V  如下所示:
                       2
                     2
                  2

                                                  
                                                     2
                                                   Q = Q 1
                                                  
                                                                                                    (13)
                                                                K 2  V 2
                                                     2  2   2
                                                             [W ,W ]
                                                    [K ,V ] = X statt
                                                                         K 2
                         2
                       2
                            2
                 其中,  Q ,K ,V ∈ R N×d  分别是粒度  2  注意力神经网络的查询、键和值,       W ,W  V 2  ∈ R D×d  是可学习的权重参数. 与粒
                 度  2  注意力神经网络类似, 粒度     3                     3     3   V  计算如下式:
                                                                           3
                                           注意力神经网络的查询        Q 、键  K  和值
                                                  
                                                     3
                                                   Q = Q 1
                                                  
                                                  
                                                                                                     (14)
                                                                K 3  V 3
                                                     3  3   3
                                                    [K ,V ] = X  [W ,W ]
                                                             statt
                                    K 3
                       3
                            3
                         3
                 其中,  Q ,K ,V ∈ R  N×d ,  W ,W V 3  ∈ R D×d  是可学习的权重参数.
                                 i
                              i
                                   i
                    接着, 基于   Q ,K ,V , i = 1,2,3 分别提取短期、中期和长期信息, 计算如下式:

                                                                     √
                                                                  i T
                                                   i
                                                                         i
                                                 i
                                                     i
                                                                i
                                        Attention(Q ,K ,V ) = Softmax(Q (K ) / d)V , i = 1,2,3       (15)
                                 i
                                   i
                 其中,  Attention(Q ,K ,V ) ∈ R N×d   是第  i  个注意力神经网络的输出, 为方便起见, 简单表示为    Attention i . Attention 1 、
                              i

                 Attention 2  和  Attention 3  分别表示注意力神经网络提取到社交网络序列的短期、中期和长期信息. 然后将它们进行
                 相加得到综合的社交网络时空特征, 如下所示:
   402   403   404   405   406   407   408   409   410   411   412