Page 57 - 《软件学报》2026年第4期
P. 57

1498                                                       软件学报  2026  年第  37  卷第  4  期



                                                                 2
                                                  s i = argmin∥a i −Ds i ∥ +α∥s i ∥ 1                (10)
                                                                 2
                                                        s i
                 其中,  α 是控制编码稀疏性的正则化参数. 该优化目标确保每个特征向量可以表示为字典原子的稀疏组合, 从而增
                 强模型对缺失数据的鲁棒性. 特征编码器的重构损失定义如下:

                                                            2        2
                                                   L f = ∥A− ˆ A∥ = ∥A−DS ∥ 2                        (11)
                                                            2
                    采用稀疏字典学习的优势在于它能够有效利用数据的固有冗余性, 使特征表示在数据不完整的情况下仍然保
                 持鲁棒性, 从而提升整体模型性能.
                  3.1.2    结构编码器
                              G = (X,A,E), 我们使用两个预训练图模型分别提取节点和边的初始表示. 预训练模型对输入图进
                    对于原始图
                 行处理, 并分别生成全面的节点和边表示             P n (X) 和  P e (X), 从而捕捉局部和全局的结构特征.
                                                                ˆ G 1 , ˆ G 2 ,..., ˆ G n , 其中每个视图通过随机掩码部分节点特
                    为了模拟图结构的动态特性, 我们构造了多个掩码视图
                 征和边来生成. 这些掩码视图有助于模型在动态和不完整环境下学习鲁棒的结构表示.
                    结构编码器     F s  处理来自掩码节点和掩码边视图的嵌入. 对于掩码节点, 预训练模型                  P n  生成节点嵌入:

                                                        E n = P n ( ˆ X n )                          (12)
                    对于掩码边, 预训练模型        P e  生成边嵌入:

                                                        E e = P e ( ˆ X e )                          (13)
                    参考公式    (4), 结构编码器基于邻接矩阵和节点特征, 通过 GNN 进一步生成节点嵌入:                   Z s = GNN(A,X). 最终,
                 结构编码器整合这些嵌入, 以生成潜在表示             Z s .
                  3.1.3    重构模块
                                         Z f , 并通过解码器  Φ f  重新构造为原始特征矩阵, 即:      ˆ A = Φ f (Z f ). 通过最小化重构误
                    特征编码器生成潜在表示
                 差, 特征编码器和解码器能够有效捕捉并恢复节点特征, 从而增强对缺失特征的鲁棒性.
                    结构编码器的潜在表示         Z s  被用于重构原始图结构, 包括邻接矩阵, 通过解码器            Φ s  进行恢复:   ˆ E = Φ s (Z s ). 通过
                 最小化重构误差, 结构编码器和解码器能够学习在节点和边动态缺失的情况下准确重构图结构.
                  3.2   强-弱互信息损失
                    为了确保特征编码器和结构编码器能够学习共享信息并生成一致的表示, 我们设计了强互信息损失和弱互信
                 息损失. 在实现中, 强互信息使用同一结构编码器生成的掩码节点与掩码边嵌入                         (同一表征空间, 耦合更紧密), 弱
                 互信息使用稀疏特征编码器生成的掩码特征嵌入与结构编码器生成的节点嵌入                            (跨表征空间, 需要投影对齐). 因
                 此前者为“强耦合”, 后者为“弱耦合”.
                    强互信息重构损失旨在最大化掩码节点嵌入              E n  (公式  (12)) 与掩码边嵌入  E e  (公式  (13)) 之间的互信息, 其定义如下:

                                           L strong = L D1 (Z s ,E n )+ L D2 (Z s ,E e )+ L D3 (Z s ,E n ,E e )  (14)
                    基于噪声对比估计       (noise contrastive estimation, NCE) [50] , 我们定义损失项  L D1  和  L D2  如下:

                                                                D(Z ,E )
                                                           N ∑     i  i
                                                L D1 (Z s ,E n ) =  log  s  n                        (15)
                                                                N ∑
                                                          i=1        i  j
                                                                  D(Z ,E )
                                                                       n
                                                                     s
                                                                j=1

                                                                D(Z ,E )
                                                           N ∑     i  i
                                                 L D2 (Z s ,E e ) =  log  s  e                       (16)
                                                                N ∑
                                                          i=1        i  j
                                                                  D(Z ,E )
                                                                     s
                                                                       e
                                                                j=1
                 其中, 判别函数    D 定义如下:

                                                            (         )
                                                              f proj (x)·y
                                                  D(x,y) = exp                                       (17)
                                                            |f proj (x)|·|y|·τ
   52   53   54   55   56   57   58   59   60   61   62