Page 182 - 《软件学报》2025年第10期
P. 182
李志强 等: SZZ 误标变更对移动 APP 即时缺陷预测性能和解释的影响 4579
在局部解释方面, 本文使用 SHAP 对 AntennaPod 项目中 1 个变更 (eeeff6203) 的预测结果进行解释, 如图 9
所示, SHAP 解释了该变更中的所有度量元对 B-SZZ、AG-SZZ、MA-SZZ 和 RA-SZZ 模型预测结果的影响. 与
RQ3 相同, 本文重点关注对预测为正类的贡献程度较高的度量元. 基于以上观察, 可以得出以下结论.
1% 2% 1%
2%
4% 4%
5% 5%
la, 20% la, 20%
5% 5%
5% 5%
6% 6% sexp, 11%
sexp, 11%
7% 7%
ld, 9% lt, 9%
8% 8%
8% 9% 8% 9%
la sexp ld entropy nuc lt ndev la sexp lt entropy ld nuc ndev
age nf ns rexp exp fix nd age nf rexp ns exp fix nd
(a) B-SZZ (b) AG-SZZ
2% 3% 1%
1%
2%
4% 4%
5% 4%
la, 20% nuc, 18%
5% 4%
5% 5%
6% sexp, 11% 6% la, 16%
7% 7%
lt, 9%
sexp, 11%
8% 9%
8% 9% 10%
la sexp lt entropy nuc ld ndev nuc la sexp age lt ld entropy
age nf ns rexp exp fix nd ndev rexp nf exp ns fix nd
(c) MA-SZZ (d) RA-SZZ
图 7 类不平衡情况下所有项目中所有变更的 4 种 SZZ 模型的局部解释
(1) 从图 9 可以看出, RA-SZZ 模型的 f(x)=0.93>0, 说明将该变更预测为有缺陷, 且 f(x) 大小接近 1, 说明预测
为有缺陷的程度更高. 此外, nuc、lt、la 等度量元对模型的预测结果有正向贡献, 而 ld 度量元对模型的预测结果
有负向贡献. 对于 B-SZZ、AG-SZZ 和 MA-SZZ, 它们将该变更都预测为有缺陷, 且概率较大, 说明这 3 种 SZZ 与
RA-SZZ 相比在预测结果上并无显著差异.
(2) 对于 RA-SZZ, 对预测结果产生最显著正向贡献的前 3 名度量元分别是 nuc、lt 和 la. 对于 B-SZZ, 贡献最
显著的前 3 名度量元分别是 la、rexp 和 fix. 对于 AG-SZZ 和 MA-SZZ 模型, 贡献最显著的前 3 名度量元分别为 la、
rexp 和 nuc. 可以看出, B-SZZ、AG-SZZ 和 MA-SZZ 贡献最高的前两名度量元相一致, 与 RA-SZZ 并不一致, 但都
包含了 la 度量元.

