CodeFlowLM: Incremental Just-In-Time Defect Prediction with Pretrained Language Models and Exploratory Insights into Defect Localization

📄 arXiv: 2512.00231v1 📥 PDF

作者: Monique Louise Monteiro, George G. Cabral, Adriano L. I. OLiveira

分类: cs.SE, cs.AI

发布日期: 2025-11-28


💡 一句话要点

CodeFlowLM:利用预训练语言模型进行增量式即时缺陷预测

🎯 匹配领域: 支柱九:具身大模型 (Embodied Foundation Models)

关键词: 即时缺陷预测 预训练语言模型 增量学习 概念漂移 软件质量 缺陷定位 代码变更分析

📋 核心要点

  1. 现有即时软件缺陷预测方法难以适应软件开发过程中的概念漂移和类别不平衡问题,导致预测精度下降。
  2. CodeFlowLM通过持续微调预训练语言模型,实现增量学习,从而有效应对概念漂移和类别不平衡,无需从头训练。
  3. 实验结果表明,CodeFlowLM在即时软件缺陷预测任务中,G-Mean指标最高提升68%,展现出更强的适应性和鲁棒性。

📝 摘要(中文)

本研究提出CodeFlowLM,一个利用预训练语言模型(PLM)的即时软件缺陷预测(JIT-SDP)增量学习框架。与传统的在线学习器不同,CodeFlowLM采用持续微调来解决概念漂移、类别不平衡和验证延迟问题,无需从头开始重新训练。我们在项目内和项目间的JIT-SDP场景中评估了仅编码器和编码器-解码器PLM(特别是CodeT5+和UniXCoder),并将它们与增量基线BORB进行了比较。结果表明,CodeFlowLM实现了高达68%的G-Mean增益,证实了其在不断发展的软件环境中的卓越适应性和鲁棒性。我们进一步将分析扩展到即时缺陷定位(JIT-DL),将大型语言模型(LLM),如GPT-5、Claude Sonnet 4.5和Gemini 2.5 Pro,与基于注意力的模型进行基准测试。GPT-5在Recall@20%和Effort@20%方面表现出相当的性能和更高的稳定性,尽管基于注意力的模型在细粒度排序指标(Top-k,IFA)方面仍具有优势。定性误差分析表明,大多数假阳性源于(1)类人保守偏差,(2)基于diff的提示中上下文信息不足,以及(3)JIT-Defects4J中潜在的数据集错误标记。这些发现突出了LLM在缺陷定位中推理的希望和当前局限性。假阴性发生的比例较小。总体而言,CodeFlowLM显著提高了增量JIT-SDP的水平,展示了在不断发展的软件环境中的卓越适应性和鲁棒性。此外,我们对LLM在JIT-DL中的探索性分析不仅将它们的性能与已建立的基于注意力的模型进行了基准测试,而且还提供了对基于提示的缺陷推理的当前局限性的关键见解。

🔬 方法详解

问题定义:论文旨在解决即时软件缺陷预测(JIT-SDP)中,由于软件项目演化导致的概念漂移和类别不平衡问题。传统方法,如离线训练或在线学习,难以有效应对这些挑战,导致预测性能下降。此外,验证延迟也是一个实际问题,需要快速适应新数据。

核心思路:论文的核心思路是利用预训练语言模型(PLM)的强大表示能力,并通过增量学习的方式,持续微调PLM以适应新的软件版本和缺陷数据。这种方法避免了从头开始训练的开销,并能有效捕捉软件演化过程中的变化。

技术框架:CodeFlowLM框架主要包含以下几个阶段:1) 数据预处理:提取代码变更信息,构建训练数据集。2) 模型初始化:加载预训练语言模型(如CodeT5+或UniXCoder)。3) 增量微调:使用新的代码变更数据对PLM进行持续微调,优化模型参数。4) 缺陷预测:使用微调后的PLM对新的代码变更进行缺陷预测。框架采用增量学习策略,每次只使用少量新数据进行微调,降低计算成本。

关键创新:该论文的关键创新在于将预训练语言模型与增量学习相结合,用于解决即时软件缺陷预测问题。与传统的在线学习方法相比,CodeFlowLM能够更好地利用PLM的知识,并在概念漂移发生时快速适应。此外,该方法无需从头开始训练,大大降低了计算成本。

关键设计:CodeFlowLM的关键设计包括:1) 选择合适的预训练语言模型:论文评估了多种PLM,包括CodeT5+和UniXCoder。2) 设计合适的微调策略:采用持续微调的方式,每次使用少量新数据进行微调。3) 优化损失函数:针对类别不平衡问题,可能需要采用加权损失函数或重采样技术。4) 提示工程:在即时缺陷定位任务中,设计有效的提示(prompts)来引导大型语言模型进行推理。

🖼️ 关键图片

img_0

📊 实验亮点

实验结果表明,CodeFlowLM在即时软件缺陷预测任务中,相较于基线方法BORB,G-Mean指标最高提升68%。在即时缺陷定位任务中,GPT-5在Recall@20%和Effort@20%方面表现出与基于注意力的模型相当的性能,并具有更高的稳定性。

🎯 应用场景

该研究成果可应用于软件开发过程中的缺陷预测和定位,帮助开发人员及时发现和修复潜在的缺陷,提高软件质量和开发效率。通过集成到CI/CD流程中,可以实现自动化缺陷检测,降低人工成本,并为软件质量保障提供有力支持。

📄 摘要(原文)

This work introduces CodeFlowLM, an incremental learning framework for Just-In-Time Software Defect Prediction (JIT-SDP) that leverages pre-trained language models (PLMs). Unlike traditional online learners, CodeFlowLM employs continual fine-tuning to address concept drift, class imbalance, and verification latency without retraining from scratch. We evaluated encoder-only and encoder-decoder PLMs (notably CodeT5+ and UniXCoder) in JIT-SDP scenarios within and between projects, comparing them with the incremental baseline BORB. The results show that CodeFlowLM achieves up to 68% G-Mean gains, confirming its superior adaptability and robustness in evolving software environments. We further extend the analysis to Just-in-Time Defect Localization (JIT-DL), benchmarking Large Language Models (LLMs) such as GPT-5, Claude Sonnet 4.5, and Gemini 2.5 Pro against attention-based models. GPT-5 delivers comparable performance for Recall@20% and Effort@20% with higher stability, although attention-based methods retain an advantage in fine-grained ranking metrics (Top-k, IFA). A qualitative error analysis reveals that most false positives arise from (1) human-like conservative bias, (2) insufficient contextual information in diff-based prompts, and (3) potential dataset mislabeling in JIT-Defects4J. These findings highlight both the promise and the current limitations of LLM reasoning in defect localization. False negatives occur in smaller proportions. Overall, CodeFlowLM significantly advances the state of the art in incremental JIT-SDP, demonstrating superior adaptability and robustness in evolving software environments. Furthermore, our exploratory analysis of LLMs in JIT-DL not only benchmarks their performance against established attention-based models but also provides critical insights into the current limitations of prompt-based defect reasoning.