Practical Program Repair via Preference-based Ensemble Strategy
- URL: http://arxiv.org/abs/2309.08211v1
- Date: Fri, 15 Sep 2023 07:23:04 GMT
- Title: Practical Program Repair via Preference-based Ensemble Strategy
- Authors: Wenkang Zhong, Chuanyi Li, Kui Liu, Tongtong Xu, Tegawend\'e F.
Bissyand\'e, Jidong Ge, Bin Luo, Vincent Ng
- Abstract summary: We propose a Preference-based Ensemble Program Repair framework (P-EPR) to rank APR tools for repairing different bugs.
P-EPR is the first non-learning-based APR ensemble method that is novel in its exploitation of repair patterns.
Experimental results show that P-EPR outperforms existing strategies significantly both in flexibility and effectiveness.
- Score: 28.176710503313895
- License: http://arxiv.org/licenses/nonexclusive-distrib/1.0/
- Abstract: To date, over 40 Automated Program Repair (APR) tools have been designed with
varying bug-fixing strategies, which have been demonstrated to have
complementary performance in terms of being effective for different bug
classes. Intuitively, it should be feasible to improve the overall bug-fixing
performance of APR via assembling existing tools. Unfortunately, simply
invoking all available APR tools for a given bug can result in unacceptable
costs on APR execution as well as on patch validation (via expensive testing).
Therefore, while assembling existing tools is appealing, it requires an
efficient strategy to reconcile the need to fix more bugs and the requirements
for practicality. In light of this problem, we propose a Preference-based
Ensemble Program Repair framework (P-EPR), which seeks to effectively rank APR
tools for repairing different bugs. P-EPR is the first non-learning-based APR
ensemble method that is novel in its exploitation of repair patterns as a major
source of knowledge for ranking APR tools and its reliance on a dynamic update
strategy that enables it to immediately exploit and benefit from newly derived
repair results. Experimental results show that P-EPR outperforms existing
strategies significantly both in flexibility and effectiveness.
Related papers
- BIPEFT: Budget-Guided Iterative Search for Parameter Efficient Fine-Tuning of Large Pretrained Language Models [63.52035708182815]
We introduce a novel Budget-guided Iterative search strategy for automatic PEFT (BIPEFT)
BIPEFT employs a new iterative search strategy to disentangle the binary module and rank dimension search spaces.
Extensive experiments on public benchmarks demonstrate the superior performance of BIPEFT for downstream tasks with a low parameter budget.
arXiv Detail & Related papers (2024-10-04T18:50:46Z) - The Impact of Program Reduction on Automated Program Repair [0.3277163122167433]
We describe a program repair approach that aims to improve the scalability of modern APR tools.
We investigate slicing's impact on all three phases of the repair process: fault localization, patch generation, and patch validation.
We conclude that program reduction can improve the performance of APR without degrading repair quality, but this improvement is not universal.
arXiv Detail & Related papers (2024-08-02T09:23:45Z) - Towards Practical and Useful Automated Program Repair for Debugging [4.216808129651161]
PracAPR is an interactive repair system that works in an Integrated Development Environment (IDE)
PracAPR does not require a test suite or program re-execution.
arXiv Detail & Related papers (2024-07-12T03:19:54Z) - On The Effectiveness of Dynamic Reduction Techniques in Automated Program Repair [1.7767466724342067]
We describe a program repair framework that effectively handles large-scale buggy programs of industrial complexity.
The framework exploits program reduction in the form of program slicing to eliminate parts of the code irrelevant to the bug being repaired.
Our empirical results on the widely used Defects4J dataset reveal that a substantial improvement in performance can be obtained without any degradation in repair quality.
arXiv Detail & Related papers (2024-06-23T21:35:07Z) - Hybrid Automated Program Repair by Combining Large Language Models and Program Analysis [12.7034916462208]
Automated Program Repair (APR) has garnered significant attention due to its potential to streamline the bug repair process for human developers.
This paper introduces an innovative APR approach called GIANTREPAIR.
Based on this insight, GIANTREPAIR first constructs patch skeletons from LLM-generated patches to confine the patch space, and then generates high-quality patches tailored to specific programs.
arXiv Detail & Related papers (2024-06-03T05:05:12Z) - DeCoOp: Robust Prompt Tuning with Out-of-Distribution Detection [52.100335904875614]
We present a novel prompt tuning approach, namely, Decomposed Context Optimization (DeCoOp), which introduces new-class detectors and sub-classifiers to further enhance the base-class and new-class discriminability.
Experimental results on 11 benchmark datasets validate the effectiveness of DePT and demonstrate that DeCoOp outperforms current state-of-the-art methods, providing a significant 2% average accuracy improvement.
arXiv Detail & Related papers (2024-06-01T07:46:42Z) - REBEL: Reinforcement Learning via Regressing Relative Rewards [59.68420022466047]
We propose REBEL, a minimalist RL algorithm for the era of generative models.
In theory, we prove that fundamental RL algorithms like Natural Policy Gradient can be seen as variants of REBEL.
We find that REBEL provides a unified approach to language modeling and image generation with stronger or similar performance as PPO and DPO.
arXiv Detail & Related papers (2024-04-25T17:20:45Z) - PYRA: Parallel Yielding Re-Activation for Training-Inference Efficient Task Adaptation [61.57833648734164]
We propose a novel Parallel Yielding Re-Activation (PYRA) method for training-inference efficient task adaptation.
PYRA outperforms all competing methods under both low compression rate and high compression rate.
arXiv Detail & Related papers (2024-03-14T09:06:49Z) - Invariant-based Program Repair [1.7767466724342067]
This paper describes a formal general-purpose automated program repair (APR) framework based on the concept of program invariants.
We demonstrate the usefulness of leveraging invariants in APR by developing an invariant-based repair system for performance bugs.
arXiv Detail & Related papers (2023-12-27T17:46:19Z) - RAP-Gen: Retrieval-Augmented Patch Generation with CodeT5 for Automatic
Program Repair [75.40584530380589]
We propose a novel Retrieval-Augmented Patch Generation framework (RAP-Gen)
RAP-Gen explicitly leveraging relevant fix patterns retrieved from a list of previous bug-fix pairs.
We evaluate RAP-Gen on three benchmarks in two programming languages, including the TFix benchmark in JavaScript, and Code Refinement and Defects4J benchmarks in Java.
arXiv Detail & Related papers (2023-09-12T08:52:56Z) - Optimizing Two-way Partial AUC with an End-to-end Framework [154.47590401735323]
Area Under the ROC Curve (AUC) is a crucial metric for machine learning.
Recent work shows that the TPAUC is essentially inconsistent with the existing Partial AUC metrics.
We present the first trial in this paper to optimize this new metric.
arXiv Detail & Related papers (2022-06-23T12:21:30Z)
This list is automatically generated from the titles and abstracts of the papers in this site.
This site does not guarantee the quality of this site (including all information) and is not responsible for any consequences.