面向跨项目缺陷严重程度分类的轻量级Transformer集成:软件工程中的应用型人工智能方法

《Applied Sciences》:Integrating Lightweight Transformers for Cross-Project Bug Severity Classification: An Applied AI Approach in Software Engineering

【字体: 大 中 小 】 时间:2026年06月15日 来源:Applied Sciences 2.5

编辑推荐:

  缺陷严重程度分类是软件维护中的一项重要任务,因为其能够支持缺陷分诊与资源分配。然而,新建或持续演化的项目通常缺乏充足的标注数据,导致由于领域偏移和类别不平衡,跨项目严重程度预测面临挑战。本文在实际部署约束下,研究使用轻量级Transformer模型进行跨项目缺

  
缺陷严重程度分类是软件维护中的一项重要任务,因为其能够支持缺陷分诊与资源分配。然而,新建或持续演化的项目通常缺乏充足的标注数据,导致由于领域偏移和类别不平衡,跨项目严重程度预测面临挑战。本文在实际部署约束下,研究使用轻量级Transformer模型进行跨项目缺陷严重程度分类。具体而言,在统一的跨项目学习框架下采用并评估了DistilBERT和TinyBERT。研究人员在大规模Mozilla缺陷仓库上,于单源迁移和多源迁移两种设定下开展实验。采用宏平均F1(Macro-F1)作为主要评价指标,以确保对各严重程度等级进行均衡评估。结果表明,跨项目性能受到源域—目标域配对关系的显著影响,反映出领域偏移的作用。多源训练通常能够在若干迁移场景中提升性能,尤其对少数类严重程度类别更为明显,但提升幅度整体仍属中等。DistilBERT取得了更高的总体性能,而TinyBERT仅以较小的Macro-F1下降表现出相近趋势,表明预测性能与模型效率之间存在较优权衡。上述发现表明,轻量级Transformer模型能够为实际缺陷分诊流程提供支持,在标注数据和计算资源有限的环境中,尤其能够跨项目提供相对稳定且计算高效的严重程度预测。
该文发表于《Applied Sciences》,围绕软件维护场景中的跨项目缺陷严重程度分类问题展开系统研究。研究背景在于,软件维护是软件生命周期中最关键且成本最高的阶段之一,尤其在持续演化的大规模软件系统中,大量缺陷报告会不断涌入Bugzilla、JIRA、GitHub Issues等缺陷跟踪平台。缺陷报告中既包含结构化元数据,也包含非结构化文本信息,而缺陷严重程度标签直接影响资源分配、任务调度与版本发布规划,因此严重程度分类是缺陷分诊中的核心任务之一。传统人工标注方式不仅耗时,而且在大规模仓库中容易出现一致性不足的问题。尽管已有研究广泛探索了基于机器学习与人工智能的方法,但多数工作仍局限于同项目内部训练与测试,难以真实反映标注稀缺的新项目或演化中项目所面临的实际需求。在跨项目场景下,项目之间在术语词汇、报告风格、软件结构及严重程度分布上的差异会引发明显的领域偏移(domain shift),从而降低模型迁移性能。与此同时,Transformer模型虽在软件工程任务中展现出优越的语义建模能力,但在跨项目严重程度分类中,关于轻量级模型、迁移稳定性、部署效率与表示级领域自适应(domain adaptation)的综合研究仍较有限。因此,开展本研究具有明确的问题导向与实践价值。

研究人员以Mozilla生态中的Core、Firefox、Thunderbird与Bugzilla四个项目为对象,构建了跨项目缺陷严重程度分类实验框架,重点分析轻量级Transformer在单源迁移、多源迁移以及表示级领域对齐条件下的表现。研究并未提出全新的Transformer结构,而是从经验研究角度,考察DistilBERT与TinyBERT在异构软件仓库间的泛化能力、迁移稳定性与实际可部署性。研究结论显示,跨项目分类性能高度依赖源项目与目标项目之间的匹配关系;较大且更具多样性的源项目通常能够提供更好的迁移效果;多源训练在大多数情境下优于单源训练,尤其能改善少数类严重程度类别的分类表现;表示级领域对齐可进一步带来一定程度的性能增益;在两种轻量级模型中,DistilBERT整体性能更优,而TinyBERT则以更小模型规模和更快推理速度展现出更高部署效率。该研究的重要意义在于,为资源受限的软件工程环境提供了可行的自动化缺陷分诊方案,也为跨项目文本分类中的“性能—效率”平衡提供了实证依据。

研究人员采用的关键技术方法主要包括以下几个方面。首先,样本来源于公开的Mozilla缺陷报告数据集,共49,354条报告,覆盖Core、Firefox、Thunderbird和Bugzilla四个项目。其次,研究仅使用缺陷报告的summary/title字段作为输入文本,以贴近早期缺陷分诊场景并降低序列长度与计算成本。再次,采用DistilBERT与TinyBERT进行上下文化表示学习,以[CLS]标记的最终隐层表示作为句子级特征,再通过线性层与Softmax完成五分类任务。最后,在跨项目迁移中引入最大均值差异(Maximum Mean Discrepancy,MMD)进行表示级领域对齐,并在单源与多源设定下比较其作用;评价指标以宏平均F1(Macro-F1)为主,并辅以Weighted-F1与Accuracy。

在研究结果部分,论文围绕多个小节展开了层层递进的分析。

5.3.1. Baseline Performance Under Single-Source Transfer
该部分首先给出了单源到单目标迁移设定下传统机器学习与深度学习基线模型的结果。研究表明,基于TF-IDF的分类器整体性能较低且稳定性不足,说明依赖表层词汇特征的方法对项目特异性术语、报告风格与标签分布变化较为敏感。基于预训练Word2Vec的卷积神经网络(CNN)优于TF-IDF方法,显示分布式词向量与局部上下文模式有助于捕捉更丰富的严重程度相关语义,但在跨项目迁移中仍出现明显性能下降,尤其在目标项目规模较小或异质性较强时更为突出。该部分结果说明,在缺乏领域适配的前提下,跨项目缺陷严重程度分类本身是一项困难任务。

5.3.2. Baseline Performance Under Multi-Source Transfer
在多源到单目标设定下,研究将多个源项目数据联合用于训练。结果显示,多源训练总体提升了传统方法与CNN基线的性能,说明多样化训练数据能够扩展报告风格、缺陷模式和严重程度分布的覆盖面。然而,TF-IDF模型提升有限,表明仅增加词汇覆盖并不足以建立深层跨项目表示。CNN在多源场景中的改善更明显,提示共享语义模式可以从多项目中受益,但其固定卷积窗口仍限制了对更广泛上下文的建模能力。该部分进一步表明,仅靠数据聚合无法完全克服软件项目之间的结构性差异。

5.3.3. Analysis of Single-Source Transfer Performance
该部分系统分析了轻量级Transformer在单源迁移下的表现。结果显示,源项目与目标项目之间存在显著的方向性差异,不同源—目标配对会产生明显不同的Macro-F1。总体而言,来自Firefox和Core等规模较大、样本更丰富的源项目更容易学习到可迁移的严重程度模式,因此在迁移时表现更好。相较于传统基线与CNN,DistilBERT和TinyBERT在多数迁移设置中均取得更优结果,说明上下文化表示(contextualized representations)更擅长处理项目间的术语差异与语义变化。两种Transformer在不同随机种子下标准差较低,表现出较稳定的训练行为。该部分还指出,Bugzilla作为源域时更具挑战性,这与其数据量较小、严重程度类别更不平衡以及报告特征更具项目特殊性有关。研究还通过定性样例发现,当标题中包含显式严重性线索,如系统崩溃、安全失败或重大功能中断时,Transformer更容易正确识别critical或blocker类别;而对简短、含混或高度项目特异的标题,模型更易将其误分到相邻等级,如major与critical之间。由此可见,跨项目预测仍然受到词汇差异与上下文歧义的制约。

5.3.4. Analysis of Multi-Source Transfer Performance
该部分讨论多源训练下Transformer模型的迁移表现。结果显示,多源训练在多数目标项目上均提升了Macro-F1,且对少数类的改善更为明显。这意味着将多个项目联合建模,有助于模型接触更广泛的术语模式、报告风格和缺陷表述,从而减轻对单一源项目特性的依赖。相较于单源设定,多源训练下模型在随机种子之间的方差更低,提示优化过程更加稳定,模型对源域特异模式的过拟合程度有所下降。研究还发现,DistilBERT从多源训练中获益通常大于TinyBERT,说明较强的表示容量更有利于吸收多项目中的多样化训练信号。不过,TinyBERT依然保持了有竞争力且稳定的表现,显示紧凑型Transformer在资源受限条件下同样具有实用潜力。

5.3.5. Ablation Study: Impact of Domain Alignment and Multi-Source Training
该部分通过消融实验检验多源训练与MMD领域对齐的独立及协同作用。实验比较了三种配置:单源Transformer、多源Transformer(无领域对齐)以及带MMD表示级领域自适应的多源Transformer。结果表明,多源训练本身能够通过增加数据多样性提升性能,而在此基础上引入MMD后,两种模型的Macro-F1进一步上升。具体而言,DistilBERT由0.52提高至0.56,TinyBERT由0.49提高至0.53,提升幅度虽属中等,但趋势一致。研究据此认为,性能增益并非单纯来自训练样本增加,而是多源学习与表示级对齐共同作用的结果:前者扩展项目覆盖范围,后者则减少源域与目标域潜在特征分布之间的差异。配对t检验进一步表明,部分提升达到统计显著,但实际意义仍需结合效应大小综合理解。

5.3.6. Deployment Efficiency Analysis
该部分从部署角度评估模型效率。研究在统一实验环境下比较了模型大小与近似推理时间,指出DistilBERT相较标准BERT显著减少参数量,而TinyBERT进一步压缩至约1400万参数,并取得最快推理速度。这表明两种轻量级Transformer都更适合自动化缺陷分诊系统中的资源受限场景。尽管TinyBERT的Macro-F1略低于DistilBERT,但其更小的存储开销与更快的推理速度使其在工程部署中具有吸引力。因此,模型选择应依据实际应用对预测精度与部署效率的权衡需求而定。该部分结论强化了论文“应用型人工智能”定位,即不仅关注模型效果,也强调在真实软件维护流程中的可落地性。

5.3.7. Limitations of the Study
该部分总结了研究局限。首先,全部实验均基于Mozilla生态项目,尽管项目间存在一定异质性,但仍属于同一Bugzilla体系,因此结论对其他软件生态的泛化能力尚需进一步验证。其次,研究仅使用标题字段,虽然符合早期分诊场景,但未纳入复现步骤、堆栈跟踪、环境配置及开发者讨论等更丰富上下文。再次,实验只覆盖四个项目,迁移行为仍可能受到项目特定分布的影响。最后,严重程度标签源于人工标注,主观性与标注不一致性可能给性能评估带来额外波动。

在讨论部分,研究人员综合指出,跨项目缺陷严重程度分类的效果同时受到表示质量与数据多样性的影响。传统依赖表层词汇匹配的模型在迁移时性能下降明显,表明项目差异不仅仅体现为词汇不一致,还包括报告风格和严重程度标注实践的变化。多源训练在一定程度上能够缓解这一问题,但单靠扩大训练数据覆盖面并不足以完全解决跨项目差异。Transformer模型通过上下文化语义表示,在多数源—目标配对中优于基线方法,说明其更能捕捉跨项目共享的严重程度线索。然而,不同项目之间的领域差异仍是关键障碍,特别是在报告特征或严重程度分布差异显著时,即使在多源设置下仍然难以完全克服。总体而言,提高跨项目分类性能需要“数据多样性”与“强语义表示”两方面共同支撑,而多源训练与轻量级Transformer恰好形成互补关系。

研究结论部分可译为:本研究在迁移学习设定下,考察了轻量级Transformer模型在不同软件项目之间进行缺陷严重程度分类的能力,重点关注目标项目标注数据有限且项目间差异影响迁移效果的情形。基于Mozilla缺陷仓库的实验结果表明,迁移性能显著受到源项目与目标项目特征的影响。总体而言,规模更大且更具多样性的源项目通常能够提供更好的迁移效果,而报告风格和严重程度分布上的显著差异仍然会给迁移学习带来挑战。在大多数实验设置中,多源训练相较单源迁移能够提升性能,尤其对少数类严重程度类别更为明显。这些结果表明,整合多个相关项目的数据有助于提高跨软件仓库迁移的稳定性。对DistilBERT与TinyBERT的比较还显示,轻量级Transformer模型在迁移场景下能够取得有竞争力的性能。DistilBERT通常获得更高的Macro-F1,而TinyBERT则以更低的计算成本和更快的推理速度提供相近表现。总体来看,轻量级Transformer为自动化缺陷分诊系统提供了一种实用方案,特别适用于计算资源有限的环境。研究结果同时表明,将上下文化表示学习与多源训练结合,能够改善软件项目间的迁移性能。未来工作将扩展到更多软件生态系统,并进一步考察完整缺陷描述以及标题与描述联合表示在迁移式严重程度分类中的作用。
相关新闻
生物通微信公众号
微信
新浪微博

热点排行

    今日动态 | 人才市场 | 新技术专栏 | 中国科学人 | 云展台 | BioHot | 云讲堂直播 | 会展中心 | 特价专栏 | 技术快讯 | 免费试用

    版权所有 生物通

    Copyright© eBiotrade.com, All Rights Reserved

    联系信箱:

    粤ICP备09063491号