論文の概要: ACECode: A Reinforcement Learning Framework for Aligning Code Efficiency and Correctness in Code Language Models
- arxiv url: http://arxiv.org/abs/2412.17264v1
- Date: Mon, 23 Dec 2024 04:19:45 GMT
- ステータス: 翻訳完了
- システム内更新日: 2024-12-24 15:53:26.829289
- Title: ACECode: A Reinforcement Learning Framework for Aligning Code Efficiency and Correctness in Code Language Models
- Title(参考訳): ACECode: コード言語モデルにおけるコードの効率性と正確性を調整するための強化学習フレームワーク
- Authors: Chengran Yang, Hong Jin Kang, Jieke Shi, David Lo,
- Abstract要約: SOAP や PIE のような CodeLLM のコード効率を最適化するための既存のアプローチには、いくつかの制限がある。
ACECodeは、強化学習に基づく微調整フレームワークで、CodeLLMを効率と正確性の2つの目的に合わせる。
ACECodeは4つのSOTA (state-of-the-art) CodeLLMを微調整し、それらのコードをオリジナル、命令調整、PIE調整の3つのベースラインと比較することで評価する。
- 参考スコア(独自算出の注目度): 9.4219427550154
- License:
- Abstract: CodeLLMs have demonstrated remarkable advancements in software engineering tasks. However, while these models can generate functionally correct code, they often produce code that is inefficient in terms of runtime. This inefficiency is particularly problematic in resource-constrained environments, impacting software performance and sustainability. Existing approaches for optimizing code efficiency for CodeLLMs like SOAP and PIE exhibit certain limitations. SOAP requires a compatible execution environment and predefined test cases for iterative code modification, while PIE focuses on instruction tuning, improving efficiency but compromising correctness. These shortcomings highlight the need for a fine-tuning framework that optimizes both efficiency and correctness without relying on predefined test cases or specific execution environments. To bridge this gap, we introduce ACECode, a reinforcement learning-based fine-tuning framework that aligns CodeLLMs with dual objectives of efficiency and correctness. ACECode combines three key steps: (1) generating code with an actor CodeLLM, (2) calculating a training-free reward signal derived from code execution feedback for each generated code, and (3) optimizing the CodeLLM via Proximal Policy Optimization (PPO) algorithm. This reward signal enables joint assessment of efficiency and correctness without manual labeling. We evaluate ACECode by fine-tuning four SOTA (state-of-the-art) CodeLLMs and comparing their code with three baselines: original, instruction-tuned, and PIE-tuned CodeLLMs. Extensive experiment results suggest that \tool{} significantly improves the efficiency and correctness of generated code against all baselines for all CodeLLMs. Specifically, CodeLLMs fine-tuned with ACECode improve pass@1 by 1.84% to 14.51% and reduce runtime in 65% to 72% of cases compared to original CodeLLMs.
- Abstract(参考訳): CodeLLMは、ソフトウェア工学のタスクにおいて顕著な進歩を見せている。
しかし、これらのモデルは機能的に正しいコードを生成することができるが、実行時に非効率なコードを生成することが多い。
この非効率性は、特にリソース制約のある環境において問題であり、ソフトウェアの性能と持続可能性に影響を与える。
SOAP や PIE のような CodeLLM のコード効率を最適化するための既存のアプローチには、いくつかの制限がある。
SOAPは、反復的なコード修正のために互換性のある実行環境と事前定義されたテストケースを必要とします。
これらの欠点は、事前に定義されたテストケースや特定の実行環境に頼ることなく、効率性と正確性の両方を最適化する微調整フレームワークの必要性を強調している。
このギャップを埋めるために、私たちはACECodeを紹介します。これは強化学習に基づく微調整フレームワークで、CodeLLMと効率と正確性の2つの目的を一致させます。
ACECodeは、(1)アクターのCodeLLMとコードを生成すること、(2)生成されたコードに対するコード実行フィードバックから得られるトレーニング不要の報酬信号を計算すること、(3)プロキシポリシー最適化(PPO)アルゴリズムを介してCodeLLMを最適化すること、の3つの重要なステップを組み合わせる。
この報奨信号は、手動ラベリングを使わずに効率と正確性を共同で評価することができる。
ACECodeは4つのSOTA (state-of-the-art) CodeLLMを微調整し、それらのコードをオリジナル、命令調整、PIE調整の3つのベースラインと比較することで評価する。
大規模な実験結果から,生成したコードに対して,すべてのCodeLLMに対して,‘tool{}’により効率と正確性が大幅に向上することが示唆された。
具体的には、ACECodeで微調整されたCodeLLMsは、pass@1を1.84%から14.51%改善し、オリジナルのCodeLLMと比べて65%から72%のケースでランタイムを削減した。
関連論文リスト
- DSTC: Direct Preference Learning with Only Self-Generated Tests and Code to Improve Code LMs [56.4979142807426]
UnderlinetextbfDirect Preference Learning with only underlinetextbfSelf-Generated underlinetextbfTests and underlinetextbfCode (DSTC)を紹介する。
DSTCは自己生成コードスニペットとテストのみを使用して信頼性の高い選好ペアを構築する。
論文 参考訳(メタデータ) (2024-11-20T02:03:16Z) - Effi-Code: Unleashing Code Efficiency in Language Models [17.355845751737423]
Effi-Codeは、大規模言語モデルにおけるコード生成を強化するアプローチである。
Effi-Codeは、AIシステムのコード生成を改善するためのスケーラブルで汎用的なアプローチを提供する。
論文 参考訳(メタデータ) (2024-10-14T07:05:51Z) - CodeDPO: Aligning Code Models with Self Generated and Verified Source Code [52.70310361822519]
我々は、コード生成に好み学習を統合するフレームワークであるCodeDPOを提案し、コードの正確性と効率性という2つの重要なコード優先要因を改善した。
CodeDPOは、コードとテストケースを同時に生成、評価するセルフジェネレーション・アンド・バリデーションメカニズムを利用して、新しいデータセット構築方法を採用している。
論文 参考訳(メタデータ) (2024-10-08T01:36:15Z) - Measuring Code Efficiency Optimization Capabilities with ACEOB [7.4056083791645495]
モデルトレーニングデータセットの「コードパターン」を詳細に分析し、人間の手書きコードを慎重に探索する。
95,359組の効率非効率コードからなる自動コード効率最適化ベンチマーク(ACEOB)を導入する。
私たちの知る限り、ACEOBはPythonコードの効率最適化に特化した最初のデータセットです。
論文 参考訳(メタデータ) (2024-08-23T10:10:37Z) - ECCO: Can We Improve Model-Generated Code Efficiency Without Sacrificing Functional Correctness? [12.862825053595934]
ECCOは、自然言語(NL)ベースのコード生成と履歴ベースのコード編集という、2つのパラダイムを通じてプログラム効率を評価するためのベンチマークである。
実行情報の追加は機能的正確性を維持するのによく役立ち、NLフィードバックは効率を向上する。
論文 参考訳(メタデータ) (2024-07-19T05:47:40Z) - Iterative or Innovative? A Problem-Oriented Perspective for Code Optimization [81.88668100203913]
大規模言語モデル(LLM)は、幅広いプログラミングタスクを解く上で強力な能力を示している。
本稿では,パフォーマンス向上に着目したコード最適化について検討する。
論文 参考訳(メタデータ) (2024-06-17T16:10:10Z) - StepCoder: Improve Code Generation with Reinforcement Learning from
Compiler Feedback [58.20547418182074]
2つの主要コンポーネントからなるコード生成の新しいフレームワークであるStepCoderを紹介します。
CCCSは、長いシーケンスのコード生成タスクをCurriculum of Code Completion Subtaskに分割することで、探索課題に対処する。
FGOは、未実行のコードセグメントをマスクすることでのみモデルを最適化し、Fine-Grained Optimizationを提供する。
提案手法は,出力空間を探索し,対応するベンチマークにおいて最先端の手法より優れた性能を発揮する。
論文 参考訳(メタデータ) (2024-02-02T13:14:31Z) - CodeT5+: Open Code Large Language Models for Code Understanding and
Generation [72.1638273937025]
大きな言語モデル (LLM) は膨大なソースコードで事前訓練されており、コードインテリジェンスにおいて顕著な進歩を遂げている。
CodeT5+は、コンポーネントモジュールを柔軟に組み合わせて、幅広い下流のコードタスクに適合させることができるコードのためのエンコーダ-デコーダLLMのファミリーである。
我々は、ゼロショット、微調整、命令調整を含む20以上のコード関連ベンチマークでCodeT5+を広範囲に評価した。
論文 参考訳(メタデータ) (2023-05-13T14:23:07Z) - Learning Performance-Improving Code Edits [107.21538852090208]
本稿では,大規模言語モデル(LLM)を高レベルプログラム最適化に適用するためのフレームワークを提案する。
まず、競争力のある77,000以上のC++プログラミングサブミッションペアによる、人間のプログラマによるパフォーマンス改善編集のデータセットをキュレートする。
提案手法は,検索をベースとした少数ショットプロンプトとチェーン・オブ・シンクレットを提案し,その微調整には,自己再生に基づく性能条件付き生成と合成データ拡張が含まれる。
論文 参考訳(メタデータ) (2023-02-15T18:59:21Z) - Execution-based Code Generation using Deep Reinforcement Learning [8.085533911328577]
PPOCoderは、事前訓練されたPLモデルとプロキシポリシー最適化を組み合わせた、コード生成のための新しいフレームワークである。
PPOCoderは、外部コード固有の知識をモデル最適化プロセスにシームレスに統合する。
PPOCoderはタスクに依存しない、モデルに依存しないフレームワークで、さまざまなコード生成タスクやPLで使用できます。
論文 参考訳(メタデータ) (2023-01-31T18:02:26Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。