Page 61 - 《软件学报》2025年第5期
P. 61

胡强 等: 融合潜在联合词与异质关联兼容的             Web API 推荐                                    1961


                 节点  v j 进行游走.
                    依据此随机游走模式, 假设         v k 为节点  v i 的上一跳节点, v i 的下一跳节点集合     v J ={v j1 , v j2 ,…, v jm }, 在选取下一
                 跳节点时采取如下规则.
                    1) 若  v i ↔v k , ∃v Jf  ⊆ v J 且∀v ∈ v J 满足  v~v i , 则  v i 下一跳节点  v j  = {v | v ∈ v Jf  ∧ max(p(v | v i , T)).
                                             f
                    2) 若  v i ~v k , ∃v Jc  ⊆ v J 且∀v ∈ v J 满足  v↔v i , 则  v i 下一跳节点  v j  = {v | v ∈ v Jc  ∧ max(p(v | v i , T)).
                                             c
                    该游走策略综合协作关联与功能关联计算关联强度, 不但能够高效的捕获                          Web API 节点在不同关联类型中
                 产生的语义关联强度, 而且可以最大化节点序列中                 Web API 兼容性, 提升了训练语料采样质量, 可以有效提高关
                 联向量的生成质量.
                    对于长度为     l 的随机游走路径     P = (v p1 ,…, v pl ), v p 的上下文为  C = {v pk  | v pk  ∈ P, |k–t|≤c, t ≠ k}, 其中  c 为窗口大
                                                         t
                 小的半径. 基于上述采用策略获得给定节点              v i 与其路径上下文   C, 最小化如下的负对数似然:

                                                   ({    } )          (  )
                                                               ∑

                                             −logP θ v jv j ∈ C v i =  −logP θ v jv i             (21)



                                                               v j ∈C
                    接下来, 使用异质     Softmax 函数, 对节点  v j 的上下文出现概率进行归一化, 即给定节点           v i 条件下, v j 的概率:

                                                               (    )
                                                                 T
                                                    (  )    exp C ·v i,r
                                                  P θ v j |v i = ∑  (  )                             (22)
                                                                   T
                                                               exp c ·v i,r
                                                                   k
                                                            k∈V t
                 其中, v j ∈V t , c k 为节点  v k 的上下文嵌入, v i, 为节点  v i 对边类型  r 的整体嵌入. 最后, 通过负采样函数为每一对节点
                                                 r
                 构建目标函数:

                                                            L
                                                   (    ) ∑        [         ]
                                                     T                   T
                                           E = −logσ c ·v i,r −  E v k ∼P t (v) logσ(−c ·v i,r )     (23)
                                                     j
                                                                         k
                                                           l=1
                 其中,   σ (x) 为  Sigmoid  激活函数, L  是针对每个正样本进行负采样得到的负样本数, v k 从节点          v j 对应节点集   V t 上
                 的噪声分布    Pt(v) 中随机抽取. 当目标函数收敛时, 为        Web API 异质关联图中的节点生成最终的关联向量, 将              v 所
                 对应的服务    s 的关联向量记作     vc(s).
                    在关联向量生成过程中, 将协作关联和功能关联分别作为                    Web API 组合兼容性判定过程中的正向因素和负
                 向因素融入到服务关联向量中. 因此, 相比单一通过协作关联辅助                    Web API 的推荐, 采用   Web API 关联向量进行
                 兼容性判定将能进一步提高组件            Web API 推荐的多样性. 本文将在异质关联图中利用              WGATNE  模型和改进的
                 Metapath2vec++模型生成  Web API 关联向量的方法命名为       WGAT-HAG. 算法   2 为  Web API 关联向量的生成算法.
                 算法  2. 融合异质关联的     Web API 关联向量生成.
                 输入: Mashup  服务集合  MS, Web API 集合  S;
                 输出: Web API 的关联向量集合{vc(s)}.
                 1. HAG ←v:s ∈ S
                 2. for each s i , s j  ∈ S
                 3.   if s i ∼s j  then
                 4.    HAG.Ef = HAG.Ef∪(v i , v j )
                 5.    w ij  = w ij  + 1
                 6.   endif
                 7. endfor
                 8. for ∀m ∈ MS
                 9.   if s i ↔s j  ∈ m.S then
                 10.    HAG.Ec = HAG.Ec∪(v i , v j )
                 11.    w ij  = w ij  + 1
   56   57   58   59   60   61   62   63   64   65   66