Skip to content

Commit 3d7765d

Browse files
daleylimallamanis
andcommitted
Update _publications/li2020dlfix.markdown
Co-Authored-By: Miltos <[email protected]>
1 parent 7850b2c commit 3d7765d

File tree

1 file changed

+1
-1
lines changed

1 file changed

+1
-1
lines changed

_publications/li2020dlfix.markdown

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ authors: Y. Li, S. Wang, T. N. Nguyen
55
conference: ICSE 2020
66
year: 2020
77
bibkey: li2020dlfix
8-
tags: ["Deep Learning", "Automated Program Repair", "Context-based Code Transformation Learning"]
8+
tags: ["edit", "repair", "AST"]
99
---
1010
Automated Program Repair (APR) is very useful in helping developers in the process of software development and maintenance. Despite recent advances in deep learning (DL), the DL-based APR approaches still have limitations in learning bug-fixing code changes and the context of the surrounding source code of the bug-fixing code changes. These limitations lead to incorrect fixing locations or fixes. In this paper, we introduce DLFix, a two-tier DL model that treats APR as code transformation learning from the prior bug fixes and the surrounding code contexts of the fixes. The first layer is a tree-based RNN model that learns the contexts of bug fixes and its result is used as an additional weighting input for the second layer designed to learn the bug-fixing code transformations.
1111
We conducted several experiments to evaluate DLFix in two benchmarks: Defect4J and Bugs.jar, and a newly built bug datasets with a total of +20K real-world bugs in eight projects. We compared DLFix against a total of 13 state-of-the-art pattern-based APR tools. Our results show that DLFix can auto-fix more bugs than 11 of them, and is comparable and complementary to the top two pattern-based APR tools in which there are 7 and 11 unique bugs that they cannot detect, respectively, but we can. Importantly, DLFix is fully automated and data-driven, and does not require hard-coding of bug-fixing patterns as in those tools. We compared DLFix against 4 state-of-the-art deep learning based APR models. DLFix is able to fix 2.5 times more bugs than the best performing~baseline.

0 commit comments

Comments
 (0)