論文の概要: Enhancing Automated Program Repair through Fine-tuning and Prompt
Engineering
- arxiv url: http://arxiv.org/abs/2304.07840v2
- Date: Fri, 21 Jul 2023 20:56:41 GMT
- ステータス: 処理完了
- システム内更新日: 2023-07-25 23:12:08.987047
- Title: Enhancing Automated Program Repair through Fine-tuning and Prompt
Engineering
- Title(参考訳): ファインチューニングとプロンプトエンジニアリングによるプログラム修復の自動化
- Authors: Rishov Paul, Md. Mohib Hossain, Mohammed Latif Siddiq, Masum Hasan,
Anindya Iqbal, and Joanna C. S. Santos
- Abstract要約: シーケンス・ツー・シーケンスのモデルは、十分に大規模なデータセットでトレーニングされた時に、誤ったプログラムを正しいプログラムに変換するために使われてきた。
いくつかの最近の研究は、コードレビューがプログラムの修復をさらに改善できるという強い実証的な証拠を示した。
PLとNLの本質的な知識が,プログラムの自動修復の改善に有効かどうかを検討する。
- 参考スコア(独自算出の注目度): 2.3826139428423576
- License: http://creativecommons.org/licenses/by/4.0/
- Abstract: Sequence-to-sequence models have been used to transform erroneous programs
into correct ones when trained with a large enough dataset. Some recent studies
also demonstrated strong empirical evidence that code review could improve the
program repair further. Large language models, trained with Natural Language
(NL) and Programming Language (PL), can contain inherent knowledge of both. In
this study, we investigate if this inherent knowledge of PL and NL can be
utilized to improve automated program repair. We applied PLBART and CodeT5, two
state-of-the-art language models that are pre-trained with both PL and NL, on
two such natural language-based program repair datasets and found that the
pre-trained language models fine-tuned with datasets containing both code
review and subsequent code changes notably outperformed each of the previous
models. With the advent of code generative models like Codex and GPT-3.5-Turbo,
we also performed zero-shot and few-shots learning-based prompt engineering to
assess their performance on these datasets. However, the practical application
of using LLMs in the context of automated program repair is still a long way
off based on our manual analysis of the generated repaired codes by the
learning models.
- Abstract(参考訳): sequence-to-sequenceモデルは、十分な量のデータセットでトレーニングされた場合、誤ったプログラムを正しいプログラムに変換するために使用されます。
最近の研究でも、コードレビューがプログラムの修復をさらに改善できるという強い実証的証拠が示されている。
自然言語(nl)とプログラミング言語(pl)で訓練された大規模言語モデルは、両方の固有の知識を含むことができる。
本研究では,PLとNLの本質的な知識が,プログラムの自動修復に有効かどうかを検討する。
plとnlの両方で事前学習された2つの最先端言語モデルであるplbartとcodet5を、このような自然言語ベースのプログラム修復データセットに適用し、事前学習された言語モデルは、コードレビューとその後のコード変更の両方を含むデータセットで微調整され、前モデルよりも著しく優れていたことを突き止めた。
CodexやGPT-3.5-Turboといったコード生成モデルの出現とともに、ゼロショットと数ショットの学習ベースのプロンプトエンジニアリングも実施して、これらのデータセットのパフォーマンスを評価しました。
しかし、自動プログラム修復の文脈でLLMを使うことの実践的応用は、学習モデルによる生成した修復コードの手動解析に基づいて、まだ長い道のりをたどっている。
関連論文リスト
- Large Language Models in Computer Science Education: A Systematic Literature Review [7.240148550817106]
大規模言語モデル(LLM)は、幅広い自然言語処理タスク(NLP)において、ますます良くなっている。
最近、これらのモデルは、自然言語(NL)とプログラミング言語(PL)のギャップを埋めて、その能力をコーディングタスクに拡張した。
論文 参考訳(メタデータ) (2024-10-21T17:49:50Z) - Synthetic Programming Elicitation for Text-to-Code in Very Low-Resource Programming and Formal Languages [21.18996339478024]
SPEAC(emphsynthetic programming elicitation and compilation)を紹介する。
SPEACは、より頻繁に、意味的正しさを犠牲にすることなく、構文的に正しいプログラムを生成する。
UCLID5形式検証言語のケーススタディにおいて,SPEACの性能を実証的に評価した。
論文 参考訳(メタデータ) (2024-06-05T22:16:19Z) - CodeGRAG: Bridging the Gap between Natural Language and Programming Language via Graphical Retrieval Augmented Generation [58.84212778960507]
我々は,LLMの性能を高めるため,グラフィカル検索拡張コード生成フレームワークであるCodeGRAGを提案する。
CodeGRAGは、制御フローとデータフローに基づいて、コードブロックのグラフィカルなビューを構築し、プログラミング言語と自然言語のギャップを埋める。
ハードメタグラフプロンプト、ソフトプロンプト技術、事前訓練されたGNN専門家の目的の有効性を検証するために、C++言語とピソン言語の両方を含む4つのデータセットで様々な実験と改善が行われた。
論文 参考訳(メタデータ) (2024-05-03T02:48:55Z) - A Novel Approach for Automatic Program Repair using Round-Trip
Translation with Large Language Models [50.86686630756207]
研究によると、ある文の文法的誤りは、それを他の言語に翻訳し、その語を返せば修正できる。
現在の自動プログラム修復(APR)生成モデルは、ソースコードで事前訓練され、修正のために微調整されている。
本稿では,あるプログラミング言語から別のプログラミング言語,あるいは自然言語へのコード変換,そして,その逆といった,微調整ステップをバイパスし,ラウンド・トリップ変換(RTT)を用いる手法を提案する。
論文 参考訳(メタデータ) (2024-01-15T22:36:31Z) - LLM-Assisted Code Cleaning For Training Accurate Code Generators [53.087019724256606]
コードの品質を調査した結果,より構造化され,読みやすくなれば,コード生成性能が向上することがわかった。
私たちは、これらの原則を使って既存のプログラムを変換する、新しいデータクリーニングパイプラインを構築します。
提案手法を2つのアルゴリズムコード生成ベンチマークで評価した結果,微調整のCodeLLaMa-7Bでは,元のデータセットの微調整に比べて最大30%性能が向上していることがわかった。
論文 参考訳(メタデータ) (2023-11-25T02:45:50Z) - Unifying the Perspectives of NLP and Software Engineering: A Survey on Language Models for Code [24.936022005837415]
我々は、70以上のモデル、40以上の評価タスク、180以上のデータセット、900以上の関連する作業を含む、言語モデルによるソフトウェア工学の最近の進歩についてレビューする。
私たちは、コード処理モデルを、GPTファミリで表される一般的な言語モデルと、特にコードで事前訓練された特殊なモデルに分解します。
また、要件エンジニアリング、テスト、デプロイメント、オペレーションを含む他のソフトウェアエンジニアリング活動において、LCMのアプリケーションをプログラミングし、レビューする余地もあります。
論文 参考訳(メタデータ) (2023-11-14T08:34:26Z) - L2CEval: Evaluating Language-to-Code Generation Capabilities of Large
Language Models [102.00201523306986]
大規模言語モデル(LLM)の言語間コード生成能力を体系的に評価するL2CEvalを提案する。
モデルのサイズ、事前学習データ、命令チューニング、異なるプロンプトメソッドなど、それらのパフォーマンスに影響を与える可能性のある要因を分析する。
モデル性能の評価に加えて、モデルに対する信頼性校正を計測し、出力プログラムの人間による評価を行う。
論文 参考訳(メタデータ) (2023-09-29T17:57:00Z) - CodeRL: Mastering Code Generation through Pretrained Models and Deep
Reinforcement Learning [92.36705236706678]
CodeRLは、事前訓練されたLMと深層強化学習によるプログラム合成タスクのための新しいフレームワークである。
推論中、我々は重要なサンプリング戦略を持つ新しい生成手順を導入する。
モデルバックボーンについては,CodeT5のエンコーダデコーダアーキテクチャを拡張し,学習目標を拡張した。
論文 参考訳(メタデータ) (2022-07-05T02:42:15Z) - CodeBERT: A Pre-Trained Model for Programming and Natural Languages [117.34242908773061]
CodeBERTは、プログラミング言語(PL)とナット言語(NL)のための事前訓練されたモデルである。
我々はTransformerベースのニューラルアーキテクチャを用いたCodeBERTを開発した。
モデルパラメータの微調整による2つのNL-PLアプリケーション上でのCodeBERTの評価を行った。
論文 参考訳(メタデータ) (2020-02-19T13:09:07Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。