Pre-training Code Representation with Semantic Flow Graph for Effective Bug Localization
Yali Du, Zhongxing Yu

TL;DR
This paper introduces SemanticFlowGraph and SemanticCodeBERT to better capture code semantics and improve bug localization accuracy, addressing limitations of existing BERT-based methods.
Contribution
It proposes a novel code graph representation and a specialized pre-trained model, along with a contrastive learning technique, to enhance bug localization performance.
Findings
Achieves state-of-the-art bug localization results
Effectively captures deep code semantics with SFG
Improves contrastive learning with hierarchical momentum
Abstract
Enlightened by the big success of pre-training in natural language processing, pre-trained models for programming languages have been widely used to promote code intelligence in recent years. In particular, BERT has been used for bug localization tasks and impressive results have been obtained. However, these BERT-based bug localization techniques suffer from two issues. First, the pre-trained BERT model on source code does not adequately capture the deep semantics of program code. Second, the overall bug localization models neglect the necessity of large-scale negative samples in contrastive learning for representations of changesets and ignore the lexical similarity between bug reports and changesets during similarity estimation. We address these two issues by 1) proposing a novel directed, multiple-label code graph representation named Semantic Flow Graph (SFG), which compactly and…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsSoftware Engineering Research · Software Reliability and Analysis Research · Software System Performance and Reliability
