paperbot · PL 论文追踪

全部论文 待读 收藏

P2 DLFix

DLFix
ICSE Proceedings of the ACM/IEEE 42nd International Conference on Software Engineering2020匹配度 2/10 · 该论文属于基于深度学习的自动程序修复(APR),与用户关注的 LLM/Agent 驱动的静态分析、浮点程序分析或贝叶斯程序分析几乎没有直接交集。虽然涉及程序语言与机器学习的交叉,但使用的是传统树状 RNN,而非当前强 LLM/Agent 工具,也未讨论静态分析、形式化验证或相关 benchmark。引用 208 inbox
Yi Li, Shaohua Wang, Tien N. Nguyen
crossref: 2026-09-12

AI 速览

一句话:提出双层深度学习模型 DLFix,从历史修复及上下文学得代码变换,用于自动程序修复。

自动程序修复(APR)能帮助开发者进行软件开发与维护。尽管深度学习(DL)取得进展,现有基于 DL 的 APR 方法在学习缺陷修复代码变更以及这些变更周围源代码上下文方面仍存在局限,从而产生错误的修复位置或修复。本文提出 DLFix,将 APR 视为从历史缺陷修复及其周围代码上下文中学习代码变换。该模型分为两层:第一层是基于树的 RNN,用于学习缺陷修复的上下文,其输出作为额外的加权输入传给第二层;第二层则专门学习缺陷修复的代码变换。摘要未报告具体的评估结果。

问题
现有基于深度学习的自动程序修复方法难以充分学习修复代码变更及其周围源代码上下文,导致修复位置或修复不正确。
方法
提出 DLFix 双层深度学习模型,将 APR 视为代码变换学习:第一层用基于树的 RNN 学习修复上下文并输出额外加权输入,第二层据此学习缺陷修复的代码变换。
评估
摘要未具体说明评估设置与结果,仅介绍了模型架构与学习目标。
原文摘要(Abstract)

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.

链接与引用

DOI 原文 ·

BibTeX
@inproceedings{paperbot5663,
  title = {DLFix},
  author = {Yi Li and Shaohua Wang and Tien N. Nguyen},
  booktitle = {ICSE},
  year = {2020},
  doi = {10.1145/3377811.3380345}
}