Page 219 - 《软件学报》2026年第5期
P. 219
2098 软件学报 2026 年第 37 卷第 5 期
表 3 消融实验分析 (续)
数据集 消融实验 P@1 P@3 P@5 Top@1 Top@5 Top@10 MAP MRR
0.223 0.160 0.090 0.223 0.386 0.440 0.110 0.221
w/o AST change
w/o Global 0.265 0.190 0.110 0.265 0.458 0.522 0.130 0.269
ZXing
w/o Local 0.354 0.250 0.140 0.354 0.612 0.698 0.180 0.346
GTCL 0.407 0.291 0.169 0.407 0.705 0.805 0.221 0.407
0.254 0.167 0.090 0.254 0.516 0.542 0.086 0.277
w/o AST change
w/o Global 0.319 0.209 0.113 0.319 0.647 0.681 0.108 0.348
Tomcat
w/o Local 0.376 0.247 0.133 0.376 0.763 0.802 0.127 0.409
GTCL 0.447 0.293 0.158 0.447 0.907 0.954 0.151 0.487
实验结果显示, 在 GTCL 模型的实验中, 未使用变更语法树对模型性能的影响最为显著. 具体而言, 去除变更
语法树后, 6 个数据集的平均 MAP (表 3 中 w/o AST chang 的 e MAP 均值) 为 0.084; GTCL 的平均 MAP (表 3 中 GTCL
的 MAP 均值) 为 0.161. 相较于 GTCL, 未使用变更语法树的平均 MAP 下降 47.8%. 同理, MRR 指标下降 52.4%.
P@K 与 Top@N 指标也有明显下降. 这一结果验证了变更语法树在捕捉代码变更信息方面的重要性, 以及其在提
升模型性能方面的关键作用. 相比之下, 仅使用局部相似度表示或全局相似度表示时, 模型性能的衰退幅度相对较
小. 具体而言, 相较于局部相似度表示, 全局相似度表示更能在性能上为模型带来显著的提升, 使得 MAP 平均值提
升了 16.0%, 而 MRR 指标也提升了 36%. 与局部相似度表示相比, 全局相似度表示不仅包含了变更节点的详细信
息, 还囊括了整个变更的语义特性, 因此能够更好地保留代码和错误报告的上下文信息. 这种全面的信息表示方式
有助于模型更准确地捕捉代码变更与错误报告之间的语义匹配关系, 从而提升定位的准确性. 实验结果还表明, 全
局相似度表示在预测过程中发挥了更为关键的作用. 通过增加对变更代码和错误报告间最终相似度得分的权重,
全局相似度表示能够更有效地指导模型的预测过程, 提高定位的准确性. 同样地, 局部相似度表示也在模型中发挥
了积极作用. 它通过对局部变更节点微妙变化地捕捉, 增强了模型在识别变化细节上的敏感性和准确性. 这种局部
与全局信息的结合, 使得 GTCL 模型在软件错误定位任务中表现出卓越的性能.
综上所述, GTCL 模型中全局相似度表示和局部相似度表示的联合运用是至关重要的. 两者相辅相成, 共同促
进了模型在软件错误定位任务中的表现. 全局相似度表示提供了全面的上下文信息, 有助于模型更准确地捕捉代
码变更与错误报告之间的语义匹配关系; 而局部相似度表示则增强了模型在识别变化细节上的能力, 提高了定位
的准确性和鲁棒性. 这一发现不仅为 GTCL 模型的设计提供了有力支持, 也为未来的软件错误定位研究提供了新
的思路和方法.
RQ4: GTCL 的主要参数会对定位结果产生怎样的影响?
本实验旨在优化深度学习模型的超参数设置, 以提高错误定位任务中的平均精确率. 我们评估不同的模型层
数 L、隐藏状态维度 d 和相关性判断阈值 k 在 AspectJ 数据集上对 MRR 和 MAP 指标的影响. 实验结果如图 7 所示.
0.45 L=6, d=256
L=6, d=512
0.30 0.40 L=12, d=256
L=12, d=512
L=12, d=768
0.35
0.25
MAP MRR 0.30
0.20 0.25
L=6, d=256 0.20
L=6, d=512
0.15 L=12, d=256
L=12, d=512 0.15
L=12, d=768
0.20 0.25 0.30 0.35 0.40 0.45 0.50 0.20 0.25 0.30 0.35 0.40 0.45 0.50
k k
(a) 不同参数下的MAP 指标 (b) 不同参数下的MRR 指标
图 7 AspectJ 数据集上不同超参数设置下的 MAP 和 MRR 指标

