一句话:提出 Ciallo 持续学习框架,通过语义提取与聚类样例回放缓解故障定位模型在系统测试迭代中的灾难性遗忘。
基于学习的故障定位已取得良好效果,但软件与测试不断演化,使旧数据训练的模型在新数据上失效。在大规模软件系统测试中,每轮迭代都会产生大量新数据:从头重训时间开销不可接受,仅在新数据上微调又会导致灾难性遗忘。现有持续学习方法并非为故障定位或大规模系统测试场景设计,直接应用效果次优。为此,作者提出 Ciallo,一个面向大规模软件故障定位的持续学习框架。Ciallo 先从日志中抽取细粒度程序语义,再利用故障特征增强某些语义的权重;随后用无监督算法获得对应嵌入,并基于聚类选取代表性样例。训练时,Ciallo 将代表性样例与新样本混合,并根据模型对样本的掌握程度调整损失权重,使模型更关注尚未掌握的样本,从而在学习新故障的同时缓解对旧故障的遗忘。在大量评估中,Ciallo 相比 6 个持续学习基线整体有效性提升 17.30% 至 45.23%。
Learning-based fault localization has achieved promising results. However, as software and tests are constantly evolving, models trained on old data become ineffective on new data. Particularly, in the context of system testing for large-scale software, each iteration generates a large volume of new data. This makes retraining the model from scratch incur an unacceptable time overhead, while merely fine-tuning on new data leads to catastrophic forgetting. Continual learning offers an effective method for models to avoid catastrophic forgetting during this iterative process. However, existing continual learning methods are not specifically designed for fault localization or for large-scale software system testing scenarios, which leads to their direct application yielding sub-optimal effectiveness. In response, we propose Ciallo, a novel continual learning framework specifically designed for large-scale software fault localization. Ciallo first extracts fine-grained program semantics from logs, then utilizes fault characteristics to enhance the weights of certain semantics. Finally, Ciallo uses an unsupervised algorithm to obtain corresponding embeddings and selects representative exemplars based on clustering. Subsequently, Ciallo mixes the representative exemplars with new samples for training and adjusts the loss weight according to the model’s degree of mastery over the sample. This allows the model to focus more on samples that are not yet well-mastered during the training process, thereby enabling it to learn new faults while mitigating the forgetting of old ones. In extensive evaluations against 6 continual learning baselines, Ciallo demonstrates superior performance, improving overall effectiveness by 17.30% to 45.23%.
@inproceedings{paperbot11617,
title = {Learning without Forgetting: Towards Continual learning of Fault Localization Models in Industrial Software Systems},
author = {Chun Li and Hui Li and Zhong Li and Minxue Pan and Xuandong Li},
booktitle = {ICSE},
year = {2026},
doi = {10.1145/3744916.3787809}
}