Page 57 - 《软件学报》2021年第11期
P. 57
胡渊喆 等:响应时间约束的代码评审人推荐 3383
Fig.7 Top-k Accuracy & MRR in different objective, time window constrained ϕ=4h
图 7 时间窗约束ϕ为 4h,各目标 Top-k 准确率和 MRR
Fig.8 Top-k Accuracy & MRR in different objective, time window constrained ϕ=8h
图 8 时间窗约束ϕ为 8h,各目标 Top-k 准确率和 MRR
从图中可以看出,在时间窗约束为 2h 时,单个目标的 Top-1 准确率平均为 21%~40%,MRR 平均为 0.31~
0.49;使用两个目标的 Top-1 准确率平均为 44%~49%,MRR 平均为 0.48~0.57;而 MOC2R 方法的平均 Top-1 准确
率为 51%,MRR 为 0.61,高于单目标和双目标的情况.这说明,MOC2R 方法中运用的经验、响应概率、活跃性这
3 个目标缺一不可,共同对于评审人推荐发挥作用.
对于采用两个目标的情况,我们看到,去掉约定时间内的响应概率目标,评审人推荐效果最差,这说明该目
标对于考虑响应时间的评审人推荐的贡献最大;并且随着时间窗约束的增大,评审人推荐效果下降的幅度逐渐
缩小,表明对于评审人推荐的贡献变小.这很好理解:时间窗约束得越严格,越要求评审人的响应时间足够快,而
评审人约定时间内的响应概率,就是评审人该方面的度量.
对于采用单个目标,我们可以看到,只采用人员经验的评审人推荐效果最低.这意味着仅仅考虑评审人员经
验是不够的,有经验的人员如果不能及时响应评审任务,无疑会对项目和社区代码贡献者产生负面影响.这也说
明考虑响应时间的评审人推荐的重要性.基于响应概率或活跃性指标得到的推荐效果优于基于人员经验的推
荐效果,这说明在考虑响应时间的评审人推荐问题中,人员过去活动这方面的信息是需要纳入考虑的重要因素.
4.3 RQ3:方法的敏感性
活跃性指标中的时间范围 t thres 是 MOC2R 方法的参数,为了分析其对于算法的影响,我们对时间范围设定
了一系列实验值 t thres ={1d,3d,7d,15d,30d},并对 MOC2R 在不同参数的性能进行了分析.表 6 列出了时间窗约束
为 4h 的 Top-3 准确率,在其他时间窗下的准确率趋势相似.
Table 6 Top-3 accuracy of MOC2R in different time limits t thres (time window constrained ϕ=4h) (%)
表 6 时间窗约束ϕ为 4h,在不同时间范围 t thres 中,MOC2R Top-3 准确率 (%)
MOC2R Top-3 accuracy@ϕ=4h
Project
t thres=1d t thres=3d t thres=7d t thres=15d t thres=30d
Facebook/react 73.4 74 72.8 72.3 69.5
tensorflow/tensorflow 72.2 70.7 68.9 68.1 65.3
twbs/bootstrap 63.5 64.1 62.5 61.2 59.4
ohmyzsh/ohmyzsh 59.7 60.4 62 62.8 65.2
flutter/flutter 67.1 68.3 69.6 65,4 63.2
electron/electron 64 64.5 63.7 61.7 58.6
除 ohmyzsh/ohmyzsh 项目外,在 t thres 取值 1d 或 3d 时,MOC2R 的 Top-3 准确率能得到对比实验中的最大