論文の概要: CURE: Code-Aware Neural Machine Translation for Automatic Program Repair
- arxiv url: http://arxiv.org/abs/2103.00073v1
- Date: Fri, 26 Feb 2021 22:30:28 GMT
- ステータス: 処理完了
- システム内更新日: 2021-03-03 17:05:33.203156
- Title: CURE: Code-Aware Neural Machine Translation for Automatic Program Repair
- Title(参考訳): CURE: 自動プログラム修復のためのコード認識ニューラルマシン翻訳
- Authors: Nan Jiang, Thibaud Lutellier, Lin Tan
- Abstract要約: 提案するCUREは,3つの新奇性を持つ新しいNMTベースのAPR手法である。
CUREは、APRタスクの前に開発者ライクなソースコードを学ぶために、大きなソフトウェア上でプログラミング言語(PL)モデルを事前にトレーニングします。
第2に、curyは、バギーコードに近いコンパイル可能なパッチとパッチに注目して、より正確な修正を見つける新しいコードアウェア検索戦略をデザインする。
- 参考スコア(独自算出の注目度): 11.556110575946631
- License: http://arxiv.org/licenses/nonexclusive-distrib/1.0/
- Abstract: Automatic program repair (APR) is crucial to improve software reliability.
Recently, neural machine translation (NMT) techniques have been used to fix
software bugs automatically. While promising, these approaches have two major
limitations. Their search space often does not contain the correct fix, and
their search strategy ignores software knowledge such as strict code syntax.
Due to these limitations, existing NMT-based techniques underperform the best
template-based approaches.
We propose CURE, a new NMT-based APR technique with three major novelties.
First, CURE pre-trains a programming language (PL) model on a large software
codebase to learn developer-like source code before the APR task. Second, CURE
designs a new code-aware search strategy that finds more correct fixes by
focusing on compilable patches and patches that are close in length to the
buggy code. Finally, CURE uses a subword tokenization technique to generate a
smaller search space that contains more correct fixes.
Our evaluation on two widely-used benchmarks shows that CURE correctly fixes
57 Defects4J bugs and 26 QuixBugs bugs, outperforming all existing APR
techniques on both benchmarks.
- Abstract(参考訳): ソフトウェア信頼性を向上させるには自動プログラム修復(apr)が不可欠である。
近年,ソフトウェアバグの自動修正にニューラルネットワーク翻訳(NMT)技術が用いられている。
有望ながら、これらのアプローチには2つの大きな制限がある。
彼らの検索空間はしばしば正しい修正を含まず、その検索戦略は厳密なコード構文のようなソフトウェア知識を無視します。
これらの制限のために、既存のNMTベースの技術は、最高のテンプレートベースのアプローチを上回ります。
提案するCUREは,3つの新奇性を持つ新しいNMTベースのAPR手法である。
まず、curyは大きなソフトウェアコードベースでプログラミング言語(pl)モデルを事前トレーニングし、aprタスクの前に開発者のようなソースコードを学ぶ。
第2に、curyは、バギーコードに近いコンパイル可能なパッチとパッチに注目して、より正確な修正を見つける新しいコードアウェア検索戦略をデザインする。
最後に、CUREはサブワードトークン化技術を使用して、より正確な修正を含むより小さな検索スペースを生成します。
2つの広く使われているベンチマークの評価から、57の欠陥4jバグと26のquixbugsバグを正しく修正できることが分かりました。
関連論文リスト
- Investigating the Transferability of Code Repair for Low-Resource Programming Languages [57.62712191540067]
大規模言語モデル(LLM)は、コード生成タスクにおいて顕著なパフォーマンスを示している。
近年の作業は、連鎖推論や蒸留といった現代的な技術を統合することで、コード修復のプロセスを強化している。
高低資源言語と低低資源言語の両方でコード修復を蒸留する利点について検討する。
論文 参考訳(メタデータ) (2024-06-21T05:05:39Z) - A Novel Approach for Automatic Program Repair using Round-Trip
Translation with Large Language Models [50.86686630756207]
研究によると、ある文の文法的誤りは、それを他の言語に翻訳し、その語を返せば修正できる。
現在の自動プログラム修復(APR)生成モデルは、ソースコードで事前訓練され、修正のために微調整されている。
本稿では,あるプログラミング言語から別のプログラミング言語,あるいは自然言語へのコード変換,そして,その逆といった,微調整ステップをバイパスし,ラウンド・トリップ変換(RTT)を用いる手法を提案する。
論文 参考訳(メタデータ) (2024-01-15T22:36:31Z) - T5APR: Empowering Automated Program Repair across Languages through Checkpoint Ensemble [2.7036595757881323]
本稿では,T5APRを提案する。T5APRは,複数のプログラミング言語にまたがるバグ修正のための統一的なソリューションを提供するニューラルプログラム修復手法である。
T5APRは1,985のバグを正しく修正する。
論文 参考訳(メタデータ) (2023-09-27T15:54:08Z) - Guess & Sketch: Language Model Guided Transpilation [59.02147255276078]
学習されたトランスパイレーションは、手作業による書き直しやエンジニアリングの取り組みに代わるものだ。
確率的ニューラルネットワークモデル(LM)は、入力毎に可塑性出力を生成するが、正確性を保証するコストがかかる。
Guess & Sketch は LM の特徴からアライメントと信頼性情報を抽出し、意味的等価性を解決するためにシンボリック・ソルバに渡す。
論文 参考訳(メタデータ) (2023-09-25T15:42:18Z) - RAP-Gen: Retrieval-Augmented Patch Generation with CodeT5 for Automatic
Program Repair [75.40584530380589]
新たな検索型パッチ生成フレームワーク(RAP-Gen)を提案する。
RAP-Gen 以前のバグ修正ペアのリストから取得した関連する修正パターンを明示的に活用する。
RAP-GenをJavaScriptのTFixベンチマークとJavaのCode RefinementとDefects4Jベンチマークの2つのプログラミング言語で評価する。
論文 参考訳(メタデータ) (2023-09-12T08:52:56Z) - KNOD: Domain Knowledge Distilled Tree Decoder for Automated Program
Repair [33.04645845117822]
APR(Automated Program repair)は、バグ修正プログラム用のパッチを自動生成することで、ソフトウェアの信頼性を向上させる。
最近のAPR技術は、ディープラーニング(DL)を利用して、既存のパッチやコードコーパスからパッチを生成するためのモデルを構築する。
本稿では,パッチ生成を直接的かつ包括的にガイドするために,ドメイン知識を取り入れたDLベースのAPRアプローチを提案する。
論文 参考訳(メタデータ) (2023-02-03T17:02:56Z) - BigIssue: A Realistic Bug Localization Benchmark [89.8240118116093]
BigIssueは、現実的なバグローカライゼーションのためのベンチマークである。
実際のJavaバグと合成Javaバグの多様性を備えた一般的なベンチマークを提供する。
われわれは,バグローカライゼーションの最先端技術として,APRの性能向上と,現代の開発サイクルへの適用性の向上を期待している。
論文 参考訳(メタデータ) (2022-07-21T20:17:53Z) - Quality-Aware Decoding for Neural Machine Translation [64.24934199944875]
ニューラルネットワーク翻訳(NMT)のための品質認識復号法を提案する。
参照フリーおよび参照ベースMT評価における最近のブレークスルーを,様々な推論手法を用いて活用する。
品質認識復号化は、最先端の自動測定値と人的評価値の両方で、MAPベースの復号化を一貫して上回ります。
論文 参考訳(メタデータ) (2022-05-02T15:26:28Z) - ENCORE: Ensemble Learning using Convolution Neural Machine Translation for Automatic Program Repair [7.026028136636735]
本稿では,新しいG&Vプログラム修復技術であるENCOREを提案する。
畳み込みニューラルネットワーク翻訳(NMT)モデルでアンサンブル学習を使用して、複数のプログラミング言語のバグを自動的に修正する。
ENCOREは4つの人気のあるプログラミング言語に適用された最初のG&V修復技術である。
論文 参考訳(メタデータ) (2019-06-20T15:25:16Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。