Page 57 - 《软件学报》2025年第5期
P. 57
胡强 等: 融合潜在联合词与异质关联兼容的 Web API 推荐 1957
Nm(mr) 中的 Mashup 服务的服务描述. 因此, 推荐潜在联合词的首要任务是构建 Nm(mr) 和 Cw(mr) 集合.
构建 Nm(mr) 和 Cw(mr) 集合时, 需要进行相似度的判定. 服务相似度的判定通常需要借助主题模型或神经网
络模型将服务功能描述转化为服务功能向量, 然后利用服务功能向量的相似度计算服务之间相似度. 服务功能多
采用短文本自然语言进行描述. 相比主题模型, 以 BERT 为代表的预训练神经网络模型更适合服务功能描述的特
征提取. 然而, BERT 所生成向量空间的各向异性影响了服务功能向量的相似度计算精确度. Gao 等人提出的
SimCSE 可以有效缓解 BERT 生成向量空间的各向异性, 提升服务功能向量的生成质量 [29] . 在 SimCSE 中, 采用
BERT 模型为服务描述文本生成功能向量. 设 d 为一段服务描述文本, 令 h = f θ (d), f θ 为调参的 BERT 模型, h 为 d
对应的文本向量.
在为 mr 及 Cw(mr) 中的服务生成潜在联合词时, 需确定 Nm(mr) 和 Cw(mr) 中的具体服务. 在此, 利用 SimCSE
框架分别为 Mashup 服务需求 mr、已有 Mashup 服务和 Web API 分别生成功能向量. 通过计算 mr 与已有 Mashup
服务之间的功能相似度, 为 mr 寻找相似度最高的 Top-X 个 Mashup 服务, 构建如公式 (4) 所示的集合 Nm(mr), 其
中 MS 为已有 Mashup 服务集合.
Nm(mr) = {m|Top-X(sim(h mr ,h m ))∧m ∈ MS } (4)
获取 Nm(mr) 中每一个 Mashup 服务的组件 Web API, 构建如公式 (5) 所示 mr 的一阶候选组件服务集合 Cw-1(mr):
∪
Cw-1(mr) = m.S (5)
m∈Nm(mr)
为提高候选组件 Web API 推荐的合理性, 在一阶候选组件集合 Cw-1(mr) 的基础上构建二阶候选组件服务集
合 Cw-2(mr), 见公式 (6):
∪
Cw-2(mr) = {Top-Y(sim(h s ,h s ′))∧ s ∈ WS } (6)
′
s∈Cw-1(mr)
在 Web API 集合 WS 中, 选择与 Cw-1(mr) 中每一个组件 Web API 功能相似度最高的 Top-Y 个邻居 Web API
加入二阶候选组件服务集合 Cw-2(mr). 最后, 将 Cw-1(mr) 与 Cw-2(mr) 中的 Web API 合并, 形成 Mashup 服务需
求 mr 的候选组件集合 Cw(mr).
接下来, 使用 SYAKE 提取 Nm(mr) 与 Cw(mr) 中服务描述的功能特征词, 并通过标签适配度为 mr 和候选组
件服务生成潜在联合词. 见公式 (7)–公式 (9):
∑
sim(h w ,h l ′)
l ′ ∈s.L−l
−
F(w,l) = sim(h w ,h l )· log (7)
|s.L−l|
∪ ∪
Law(mr) = Top-n(F(l,w))∧w ∈ SYAKE(s.d) (8)
l∈mr.L s∈Cw(mr)
∪ ∪
Law(s) = Top-n(F(l,w))∧w ∈ SYAKE(m.d) (9)
l∈s.L m∈Nm(mr)
服务 s 的功能描述 d 中词语 w 与其标签 l 的适配度 F(w, l) 参见公式 (7). 标签适配度由两部分组成: 词语 w
与标签 l 的相似度, 以及 w 与标签组除 l 外的标签相似度的倒数. F(w, l) 值越大, 说明词语 w 与标签 l 所表示的当
前服务的功能场景越匹配.
采用公式 (8) 为 mr 生成潜在联合词, 首先为 Cw(mr) 中每个 Web API 采用 SYAKE 模型提取特征词, 形成一
个特征词集合. 在该特征词集合中, 利用标签适配度, 为 mr 的每个标签筛选 Top-n 适配度最高的词语, 构成 mr 的
潜在联合特征词 Law(mr). 类似地, 采用公式 (9) 为 Cw(mr) 中的每个服务 s 推荐潜在联合词 Law(s).
3.1.3 融合潜在联合词的服务功能向量
Mashup 服务需求的潜在联合词提取自相似功能 Mashup 服务的组件服务描述中, 而候选组件 Web API 的潜
在联合词提取至其可能参与的 Mashup 服务, 因此, 潜在联合词从需求-供给互换的角度为 Mashup 服务需求和候
选组件 Web API 分别增加功能场景特征描述词. 将潜在联合词向量融入到 Mashup 服务需求与候选组件 Web