Saved in:
Bibliographic Details
Main Authors: Yang, Aidan Z. H., Kolak, Sophia, Hellendoorn, Vincent J., Martins, Ruben, Goues, Claire Le
Format: Preprint
Published: 2024
Subjects:
Online Access:https://arxiv.org/abs/2404.15236
Tags: Add Tag
No Tags, Be the first to tag this record!
_version_ 1866910419524780032
author Yang, Aidan Z. H.
Kolak, Sophia
Hellendoorn, Vincent J.
Martins, Ruben
Goues, Claire Le
author_facet Yang, Aidan Z. H.
Kolak, Sophia
Hellendoorn, Vincent J.
Martins, Ruben
Goues, Claire Le
contents Language models have improved by orders of magnitude with the recent emergence of Transformer-based Large Language Models (LLMs). LLMs have demonstrated their ability to generate natural code that is highly similar to code written by professional developers. One intermediate value an LLM can emit is entropy, which measures the naturalness of a token of code. We hypothesize that entropy can be used to improve the performance of Automated Program Repair (APR) tasks. While much progress has been made in Automated Program Repair (APR), fault localization techniques suffer from a lack of diversity in ranking scores, patch generation tools tend to be inefficient as all tests need to run before determining if a patch is likely to be correct, and patch ranking often suffers from the test-suite over-fitting problem. However, using an LLM directly for APR introduces concerns for training data leakage. In this work, we introduce a novel way of using the entropy of LLMs in combination with prior APR tools to improve all stages of APR. We show that entropy is highly complementary with prior fault localization tools. Our proposed re-ranking method achieves a 50% Top-5 score improvement over SBFL. We propose a patch-naturalness measurement, entropy-delta, to improve the efficiency of template-based repair techniques by ranking plausible patches before undergoing testing. When using entropy-delta for patch ranking and classification, our proposed method can rank correct patches more effectively than state-of-the-art machine learning tools with an 49% improvement in Top-1. Our work suggests that LLMs can be an effective addition to compliment prior APR tasks while minimizing both the test-suite overfitting problem and the LLM data leakage problem.
format Preprint
id arxiv_https___arxiv_org_abs_2404_15236
institution arXiv
publishDate 2024
record_format arxiv
spellingShingle Revisiting Unnaturalness for Automated Program Repair in the Era of Large Language Models
Yang, Aidan Z. H.
Kolak, Sophia
Hellendoorn, Vincent J.
Martins, Ruben
Goues, Claire Le
Software Engineering
Language models have improved by orders of magnitude with the recent emergence of Transformer-based Large Language Models (LLMs). LLMs have demonstrated their ability to generate natural code that is highly similar to code written by professional developers. One intermediate value an LLM can emit is entropy, which measures the naturalness of a token of code. We hypothesize that entropy can be used to improve the performance of Automated Program Repair (APR) tasks. While much progress has been made in Automated Program Repair (APR), fault localization techniques suffer from a lack of diversity in ranking scores, patch generation tools tend to be inefficient as all tests need to run before determining if a patch is likely to be correct, and patch ranking often suffers from the test-suite over-fitting problem. However, using an LLM directly for APR introduces concerns for training data leakage. In this work, we introduce a novel way of using the entropy of LLMs in combination with prior APR tools to improve all stages of APR. We show that entropy is highly complementary with prior fault localization tools. Our proposed re-ranking method achieves a 50% Top-5 score improvement over SBFL. We propose a patch-naturalness measurement, entropy-delta, to improve the efficiency of template-based repair techniques by ranking plausible patches before undergoing testing. When using entropy-delta for patch ranking and classification, our proposed method can rank correct patches more effectively than state-of-the-art machine learning tools with an 49% improvement in Top-1. Our work suggests that LLMs can be an effective addition to compliment prior APR tasks while minimizing both the test-suite overfitting problem and the LLM data leakage problem.
title Revisiting Unnaturalness for Automated Program Repair in the Era of Large Language Models
topic Software Engineering
url https://arxiv.org/abs/2404.15236