Page 140 - 《软件学报》2025年第9期
P. 140

谢生龙 等: 基于多模态融合的软件缺陷协同分派方法                                                       4051


                 MF_Ln  的性能. 图  6  中显示了在不同卷积神经网络层数          (1, 2, 3) 下, 使用  CBT-MF  方法在表  1  的  3  个不同数据集
                 的测试集上获得的所有        Recall@K  和  Hit@K  评估结果.

                                GC                GC               GC                GC                GC
                                MC  0.012         MC  0.016        MC   0.020        MC   0.025        MC
                   0.012
                                                                                                       MF
                                MF
                                                  MF
                                                                                     MF
                                                                   MF
                  Recall@5  0.009   Recall@10  0.008  Recall@15  0.012  Recall@20  0.016  Recall@25  0.020
                                                                        0.012
                                                                                          0.015
                   0.006
                                                      0.008
                                                                        0.008
                                                                                          0.010
                                    0.004
                   0.003
                     0                 0              0.004 0           0.004 0           0.005 0
                    CBT-MF_L1 CBT-MF_L2 CBT-MF_L3  CBT-MF_L1 CBT-MF_L2 CBT-MF_L3  CBT-MF_L1 CBT-MF_L2 CBT-MF_L3  CBT-MF_L1 CBT-MF_L2 CBT-MF_L3  CBT-MF_L1 CBT-MF_L2 CBT-MF_L3
                           (a)               (b)               (c)              (d)               (e)
                    0.4         GC    0.4         GC   0.5         GC    0.5         GC    0.5         GC
                                                                                     MC
                                                                                                       MC
                                                  MC
                                MC
                                                                   MC
                                                       0.4
                                                                         0.4
                   Hit@5  0.3   MF   Hit@10  0.3  MF   Hit@15  0.3  MF  Hit@20  0.3  MF   Hit@25  0.4  MF
                                                                                           0.3
                    0.2
                                      0.2
                                                                         0.2
                                                       0.2
                                                                                           0.2
                    0.1
                     0                0.1 0            0.1 0             0.1 0             0.1 0
                    CBT-MF_L1 CBT-MF_L2 CBT-MF_L3  CBT-MF_L1 CBT-MF_L2 CBT-MF_L3  CBT-MF_L1 CBT-MF_L2 CBT-MF_L3  CBT-MF_L1 CBT-MF_L2 CBT-MF_L3  CBT-MF_L1 CBT-MF_L2 CBT-MF_L3
                           (f)               (g)               (h)           (i)                  (j)
                                 图 6 不同图卷积层数对       Recall@5–Recall@25  和  Hit@5–Hit@25  的影响

                    从图  6(a)–(e) 显示的  Recall@K  实验结果可以看出, 随着卷积神经网络层数的增加, Recall@5–Recall@25           的
                 值也会增加. 然而, 对于同一       Recall@K  指标随着层数增加, 并没有出现持续上升的趋势. 例如, 在             MF  数据集上, 当
                 卷积神经网络层数从        1  增加到  3  时, Recall@5  从  1  层时的  0.005 4  增加到  2  层时的  0.012 3, 而当在  3  层时又降至
                 0.008 3; 同时可以看出, 不同数据集之间的结果也有所不同. 例如, 在              Recall@20  指标上, MF  数据集的结果明显优
                 于  GC  和  MC  数据集, 但  GC  和  MC  个别指标之间的差异不太明显. 这些结果的形成可能与多种因素有关, 尤其是
                 不同数据集的特征和分布. 例如, GC         数据集中的     bug  与开发者数不均衡性较强, 对模型捕获二者的关系产生了消
                 极的影响.
                    从图  6(f)–(j) 显示的  Hit@K  实验结果可以看出, 随着卷积神经网络层数的增加, Hit@5–Hit@25             的值也会增
                 加, 而且, 对于同一    Hit@K  指标随着层数    1–3  的增加, 也出现了先增大后减小的变化趋势. 例如, 在             GC  数据集上,
                 当卷积层数从      1  增加到  3  时, Hit@20  从  0.040 2  增加到  0.063 1  后又降至  0.045 4; Hit@25  从  0.050 7  增加到
                 0.121 6 时又降至  0.070 1. 此外, 与  Recall@K  类似, 不同数据集之间的结果也呈现出了一定的差异. 例如, 在           Hit@25
                 指标上, MF  数据集的结果明显优于         GC  和  MC  数据集, 但在其他指标上, 基本保持了       MF  最好, MC  较好, GC  最差
                 的态势. 这是因为对每个       Recall@K  来讲, 卷积神经网络层数的增加可以增加            CBT-MF  的  bug-开发者相关性的表
                 达能力, 从而提高     CBT-MF  的分派性能, 但过大的卷积神经网络层数可能受到不同数据集的特征和分布影响, 存
                 在过拟合的风险, 不能够保证其一直对评价指标的提升产生积极作用.
                    综上分析, 关键的超参数对         CBT-MF  方法的拟合与泛化能力有一定的影响, 但通过将参数调整到一定的范围
                 可以缓解该问题. 也就是说, 如果为          CBT-MF  选择合理的参数配置, 就能够保证          CBT-MF  方法取得一个较好的分
                 派结果. 因此, 在实践中如何设置          CBT-MF  关键超参数来提高       CBT-MF  的分派性能, 如     Recall 和  Hit 评估指
                 标, 需要综合考虑不同数据集的特征和分布, 以及模型复杂度和计算效率之间的权衡, 来确定最合适的超参数配置
                 方案.

                 5   总结与展望
                    基于  bug  报告文本分类的     bug  分派方法受到帕累托分布特征影响, 导致           bug  数据存在修复记录不均衡性. 目
                 前的文本分类技术主要将开发者信息作为简单的标签, 忽视了对开发者更多信息的表征, 从而未充分利用                                  bug  与
                 开发者之间的相关性. 因此, 本文提出了一种基于多模态融合的软件缺陷协同分派方法                           (CBT-MF). 该方法受到文
                 本数据和图结构数据融合训练模型启发, 将              bug  报告文本模态数据和      bug-开发者二部图模态数据融合在一起, 作
                 为  bug  分派的分析依据. 通过引入数据增强方案重构了             bug-开发者二部图, 缓解了      bug  修复记录不均衡性的影响.
   135   136   137   138   139   140   141   142   143   144   145