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  指标
   214   215   216   217   218   219   220   221   222   223   224