English
Related papers

Related papers: Break-It-Fix-It: Unsupervised Learning for Program…

200 papers

Machine learning models commonly exhibit unexpected failures post-deployment due to either data shifts or uncommon situations in the training environment. Domain experts typically go through the tedious process of inspecting the failure…

An essential part of software maintenance and evolution, refactoring is performed by developers, regardless of technology or domain, to improve the internal quality of the system, and reduce its technical debt. However, choosing the…

Software Engineering · Computer Science 2021-10-26 Anthony Peruma , Steven Simmons , Eman Abdullah AlOmar , Christian D. Newman , Mohamed Wiem Mkaouer , Ali Ouni

Pretrained language models are promising particularly for low-resource languages as they only require unlabelled data. However, training existing models requires huge amounts of compute, while pretrained cross-lingual models often…

Computation and Language · Computer Science 2020-06-05 Julian Martin Eisenschlos , Sebastian Ruder , Piotr Czapla , Marcin Kardas , Sylvain Gugger , Jeremy Howard

Making a slight mistake during live music performance can easily be spotted by an astute listener, even if the performance is an improvisation or an unfamiliar piece. An example might be a highly dissonant chord played by mistake in a…

Sound · Computer Science 2020-12-01 Georgi Marinov

Software is constantly changing, requiring developers to perform several derived tasks in a timely manner, such as writing a description for the intention of the code change, or identifying the defect-prone code changes. Considering that…

Software Engineering · Computer Science 2023-05-19 Bo Lin , Shangwen Wang , Zhongxin Liu , Yepang Liu , Xin Xia , Xiaoguang Mao

Reliable handling of code diffs is central to agents that edit and refactor repositories at scale. We introduce Diff-XYZ, a compact benchmark for code-diff understanding with three supervised tasks: apply (old code $+$ diff $\rightarrow$…

Software Engineering · Computer Science 2025-11-18 Evgeniy Glukhov , Michele Conti , Egor Bogomolov , Yaroslav Golubev , Alexander Bezzubov

Assisted by the availability of data and high performance computing, deep learning techniques have achieved breakthroughs and surpassed human performance empirically in difficult tasks, including object recognition, speech recognition, and…

Machine Learning · Computer Science 2019-01-23 Shaeke Salman , Xiuwen Liu

Due to increasingly complex software design and rapid iterative development, code defects and security vulnerabilities are prevalent in modern software. In response, programmers rely on static analysis tools to regularly scan their…

Software Engineering · Computer Science 2022-03-21 Anant Kharkar , Roshanak Zilouchian Moghaddam , Matthew Jin , Xiaoyu Liu , Xin Shi , Colin Clement , Neel Sundaresan

Locating bugs is an important, but effort-intensive and time-consuming task, when dealing with large-scale systems. To address this, Information Retrieval (IR) techniques are increasingly being used to suggest potential buggy source code…

Software Engineering · Computer Science 2021-08-31 Abdul Razzaq , Jim Buckley , James Vincent Patten , Muslim Chochlov , Ashish Rajendra Sai

Humans constantly restructure knowledge to use it more efficiently. Our goal is to give a machine learning system similar abilities so that it can learn more efficiently. We introduce the \textit{knowledge refactoring} problem, where the…

Artificial Intelligence · Computer Science 2020-11-25 Sebastijan Dumancic , Tias Guns , Andrew Cropper

Plagiarism detection in programming education faces growing challenges due to increasingly sophisticated obfuscation techniques, particularly automated refactoring-based attacks. While code plagiarism detection systems used in education…

Software Engineering · Computer Science 2025-10-30 Robin Maisch , Larissa Schmid , Timur Sağlam , Nils Niehues

Program repair techniques offer cost-saving benefits for debugging within software development and programming education scenarios. With the proven effectiveness of Large Language Models (LLMs) in code-related tasks, researchers have…

Software Engineering · Computer Science 2024-07-09 Boyang Yang , Haoye Tian , Weiguo Pian , Haoran Yu , Haitao Wang , Jacques Klein , Tegawendé F. Bissyandé , Shunfu Jin

We propose a method combining machine learning with a static analysis tool (i.e. Infer) to automatically repair source code. Machine Learning methods perform well for producing idiomatic source code. However, their output is sometimes…

Software Engineering · Computer Science 2023-04-24 Ruba Mutasim , Gabriel Synnaeve , David Pichardie , Baptiste Rozière

Software quality assurance remains a major challenge in industrial environments, where large-scale and long-lived systems inevitably accumulate defects. Identifying the location of a fault is often time-consuming and costly, particularly…

Software Engineering · Computer Science 2026-05-14 Pernilla Hall , Anton Ununger , Riccardo Rubei , Alessio Bucaioni

We introduce Learn2fix, the first human-in-the-loop, semi-automatic repair technique when no bug oracle--except for the user who is reporting the bug--is available. Our approach negotiates with the user the condition under which the bug is…

Software Engineering · Computer Science 2019-12-18 Marcel Böhme , Charaka Geethal , Van-Thuan Pham

Recent research has shown that aligning fine-grained text descriptions with localized image patches can significantly improve the zero-shot performance of pre-trained vision-language models (e.g., CLIP). However, we find that both…

Computer Vision and Pattern Recognition · Computer Science 2026-01-29 Yuhao Sun , Chengyi Cai , Jiacheng Zhang , Zesheng Ye , Xingliang Yuan , Feng Liu

Code review is a key development practice that contributes to improve software quality and to foster knowledge sharing among developers. However, code review usually takes time and demands detailed and time-consuming analysis of textual…

Software Engineering · Computer Science 2021-03-23 Rodrigo Brito , Marco Tulio Valente

This paper presents a novel end-to-end approach to program repair based on sequence-to-sequence learning. We devise, implement, and evaluate a system, called SequenceR, for fixing bugs based on sequence-to-sequence learning on source code.…

Software Engineering · Computer Science 2019-09-12 Zimin Chen , Steve Kommrusch , Michele Tufano , Louis-Noël Pouchet , Denys Poshyvanyk , Martin Monperrus

With software system complexity leading to the rise of software defects, research efforts have been done on techniques towards predicting software defects and Just-in-time (JIT) defect prediction which predicts whether a code change is…

Software Engineering · Computer Science 2021-10-05 Giuseppe Ng , Charibeth Cheng

Synthetic data has been proposed as a solution to address the issue of high-quality data scarcity in the training of large language models (LLMs). Studies have shown that synthetic data can effectively improve the performance of LLMs on…

Computation and Language · Computer Science 2024-06-19 Jie Chen , Yupeng Zhang , Bingning Wang , Wayne Xin Zhao , Ji-Rong Wen , Weipeng Chen