Page 197 - 《软件学报》2026年第6期
P. 197

2516                                                       软件学报  2026  年第  37  卷第  6  期


                 构建的异质图匹配网络, 是在对单个函数调用图构建的异质图基础上, 仅对两个函数调用图中同类型的函数节点
                 建立跨图边, 降低计算开销同时避免跨图间不同类型函数之间的相互影响, 如图                        3(b) 所示.
                  3.2   相似性度量
                    本节先详细阐述基于局部点图匹配的异质图嵌入方法, 然后介绍相似性计算和模型训练流程.
                  3.2.1    基于局部点图匹配的异质图嵌入方法
                    该方法包括初始化、信息传递和异质图嵌入这                 3  个步骤.
                    (1) 初始化

                    首先计算异质图匹配网络          ⟨HG 1 ,E cross ,HG 2 ⟩ 中的跨图边权重, 在计算  HG 1  到  HG 2  的跨图边权重时,  HG 1  为本
                 图,  HG 2  为对比图, 计算公式如下所示:

                                                       (   )
                                                                  c
                                               ω v,i = sim µ v ,µ i,c , ∀i ∈ V , r = R(v)             (1)
                                                                  r
                                                                e ω v,i
                                                        (  )
                                              α v,i = Softmax ω v,i = ∑  , r = R(v)                   (2)
                                                                 e ω v, j
                                                              j∈V c r
                                 v
                                             c
                 其中,  R(v) 表示节点   的函数类型,    V  表示对比图中类型为   的节点集,        µ v  表示本图节点   的特征向量,    µ i,c  表示对
                                                                                     v
                                                               r
                                             r
                 比图中节点    i 的特征向量,   sim 为相似性度量函数      (使用  cosine 相似性度量函数),   ω v,i  表示对比图节点  i 与本图节点
                 v 的相似程度,   α v,i  表示经过  Softmax 归一化后的本图节点   和对比图节点   之间边的权重. 计算           HG 2  到  HG 1  的跨
                                                                          i
                                                              v
                 图边权重同理.
                    然后初始化     CG  中图节点的嵌入向量, 初始化公式如下:

                                                       (0)
                                                      µ = W 0 x v , ∀v ∈ V                            (3)
                                                       v
                 其中,  W 0  是一个  d×p  的矩阵, d  为函数特征向量维度   (8  维), p  为嵌入向量维度,   x v  为图节点  v 特征向量  (第  3.1.2  节
                 中提取的特征),    V  为异质图匹配网络中的节点集.
                    (2) 信息传递
                    模型信息传递过程如图         5  所示, 具体过程如下.

                                                          T 轮迭代过程
                                                         ···
                                                                          (1)      (T)
                                          (0)                            μ 1       μ 1
                                        E  μ 1
                    E        B           μ 2 (0)  +   δ r     Sigmoid    μ 2 (1)   μ 2 (T)
                        C               D                                 (1)      (T)
                     D                  C  μ 3 (0)   W 1  ×  +           μ 3       μ 3  +   W 2 ×
                          A                                               (1)      (T)               μ g 1
                                        B  μ 4 (0)  +  δ c               μ 4       μ 4
                                                                          (1)      μ 5 (T)
                                                                         μ 5
                                        A  μ 5 (0)
                                                         ···                  ···                 嵌入向量
                                                                          (1)      (T)
                                          (0)                            μ 1,c     μ 1,c
                                        N  μ 1,c
                                                                          (1)      (T)
                      L                 M  μ 2,c (0)  +  δ c             μ 2,c     μ 2,c
                              G
                  N      I                (0)                            μ 3,c (1)  μ 3,c (T)
                                        L  μ 3,c    W 1 ×  +                            +   W 2 ×
                    M      F            F  μ 4,c (0)                     μ 4,c (1)  μ 4,c (T)        μ g 2
                                          (0)    +   δ r      Sigmoid    μ 5,c (1)  μ 5,c (T)
                                        I
                    异质图匹配网络                                               (1)      (T)
                                         μ 5,c
                                          (0)                            μ 6,c     μ 6,c
                                        G  μ 6,c         ···
                                        初始值                           第 1 次迭代   第 n 次迭代
                                                            基于局部点图匹配的异质图嵌入方法
                                            图 5 基于局部点图匹配的异质图嵌入方法

                    本图异质邻居聚合: 为了使该模型能更好地应用于恶意软件相似性度量场景, 充分挖掘恶意软件函数调用图
                                                                                                      t
                                                                                                v
                 语义, HGMSim  在信息传递的过程中将不同类型的入边邻居节点区别对待. 使用                      F local (v,t) 表示对节点   的第   次
   192   193   194   195   196   197   198   199   200   201   202