論文の概要: Training Language Models on Synthetic Edit Sequences Improves Code Synthesis
- arxiv url: http://arxiv.org/abs/2410.02749v1
- Date: Tue, 15 Oct 2024 03:42:01 GMT
- ステータス: 処理完了
- システム内更新日: 2024-11-04 01:03:22.939156
- Title: Training Language Models on Synthetic Edit Sequences Improves Code Synthesis
- Title(参考訳): 合成編集シーケンスに基づく学習言語モデルによるコード合成の改善
- Authors: Ulyana Piterbarg, Lerrel Pinto, Rob Fergus,
- Abstract要約: 大規模言語モデル(LLM)は、プログラムを単一のパスで自動ソースで合成する。
我々はLintSeqと呼ばれる合成データ生成アルゴリズムを開発し、高品質なコード編集データを生成する。
編集シーケンスを微調整したモデルがベースライン合成よりも多様なプログラムを生成することを示す。
- 参考スコア(独自算出の注目度): 33.13471417703669
- License: http://arxiv.org/licenses/nonexclusive-distrib/1.0/
- Abstract: Software engineers mainly write code by editing existing programs. In contrast, large language models (LLMs) autoregressively synthesize programs in a single pass. One explanation for this is the scarcity of open-sourced edit data. While high-quality instruction data for code synthesis is already scarce, high-quality edit data is even scarcer. To fill this gap, we develop a synthetic data generation algorithm called LintSeq. This algorithm refactors existing code into a sequence of code edits by using a linter to procedurally sample across the error-free insertions that can be used to sequentially write programs. It outputs edit sequences as text strings consisting of consecutive program diffs. To test LintSeq, we use it to refactor a dataset of instruction + program pairs into instruction + program-diff-sequence tuples. Then, we instruction finetune a series of smaller LLMs ranging from 2.6B to 14B parameters on both the re-factored and original versions of this dataset, comparing zero-shot performance on code synthesis benchmarks. We show that during repeated sampling, edit sequence finetuned models produce more diverse programs than baselines. This results in better inference-time scaling for benchmark coverage as a function of samples, i.e. the fraction of problems "pass@k" solved by any attempt given "k" tries. For example, on HumanEval pass@50, small LLMs finetuned on synthetic edit sequences are competitive with GPT-4 and outperform models finetuned on the baseline dataset by +20% (+/-3%) in absolute score. Finally, we also pretrain our own tiny LMs for code understanding. We show that finetuning tiny models on synthetic code edits results in state-of-the-art code synthesis for the on-device model class. Our 150M parameter edit sequence LM matches or outperforms code models with twice as many parameters, both with and without repeated sampling, including Codex and AlphaCode.
- Abstract(参考訳): ソフトウェアエンジニアは主に既存のプログラムを編集してコードを書く。
対照的に、大きな言語モデル(LLM)はプログラムを単一のパスで自動回帰的に合成する。
これの1つの説明は、オープンソースの編集データの不足である。
コード合成のための高品質な命令データがすでに不足している一方で、高品質な編集データが不足している。
このギャップを埋めるため,LintSeqという合成データ生成アルゴリズムを開発した。
このアルゴリズムは、プログラムを逐次書き込むのに使えるエラーのない挿入を手続き的にサンプリングするために、linterを使用して既存のコードを一連のコード編集にリファクタリングする。
連続するプログラム差分からなるテキスト文字列として編集シーケンスを出力する。
LintSeqをテストするために、命令+プログラムペアのデータセットをインストラクション+プログラム-差分シーケンスタプルにリファクタリングする。
次に、このデータセットのリファクタリング版とオリジナル版の両方で2.6Bから14Bパラメータの小さなLCMをファインチューンに指示し、コード合成ベンチマークのゼロショット性能を比較した。
繰り返しサンプリングを行った結果,編集シーケンスを微調整したモデルでは,ベースラインよりも多様なプログラムが生成されることがわかった。
これにより、ベンチマークカバレッジをサンプルの関数として、つまり"k"試行によって解決される問題"pass@k"のごく一部として、より優れた推論時間スケーリングが実現される。
例えば、HumanEval pass@50では、合成編集シーケンスに微調整された小さなLLMがGPT-4と競合し、ベースラインデータセットに+20%(+/-3%)の精度で微調整される。
最後に、コード理解のために独自の小さなLMを事前訓練します。
合成符号の微調整により,デバイス上でのモデルクラスに対する最先端のコード合成が可能となることを示す。
私たちの1億5000万のパラメータ編集シーケンス LMは、CodexやAlphaCodeなど、繰り返しサンプリングされるパラメータの2倍のパラメータで、コードモデルにマッチしたり、性能を上回ります。
関連論文リスト
- Benchmarking Large Language Models with Integer Sequence Generation Tasks [1.3108652488669736]
本稿では,大規模言語モデル(LLM)がオンラインシーケンス百科事典(OEIS)から整数列を計算するコードを書かなければならない,新たなベンチマークを提案する。
ベンチマークの結果、OpenAI、Anthropic、Meta、Googleの他のフロンティアモデルよりも、簡単かつハードな整数シーケンス間の精度と不正なレートで、o1シリーズのモデルの方が優れていることが判明した。
論文 参考訳(メタデータ) (2024-11-07T02:05:43Z) - Genetic Instruct: Scaling up Synthetic Generation of Coding Instructions for Large Language Models [54.51932175059004]
本稿では,大規模言語モデルのコード生成能力を高めるために,合成命令を生成するスケーラブルな手法を提案する。
提案したアルゴリズムは進化過程を模倣し、自己インストラクションを利用して限られた数の種子から多数の合成サンプルを生成する。
論文 参考訳(メタデータ) (2024-07-29T20:42:59Z) - Uncovering LLM-Generated Code: A Zero-Shot Synthetic Code Detector via Code Rewriting [78.48355455324688]
そこで本研究では,コードと書き直された変種との類似性に基づいて,ゼロショット合成符号検出器を提案する。
以上の結果から,既存のテキスト用合成コンテンツ検出装置よりも顕著な向上が見られた。
論文 参考訳(メタデータ) (2024-05-25T08:57:28Z) - SynthesizRR: Generating Diverse Datasets with Retrieval Augmentation [55.2480439325792]
トピック分類,感情分析,トーン検出,ユーモアの6つのデータセットの合成について検討した。
その結果,SynthesizRRは語彙や意味の多様性,人文との類似性,蒸留性能を大幅に向上させることがわかった。
論文 参考訳(メタデータ) (2024-05-16T12:22:41Z) - CodecLM: Aligning Language Models with Tailored Synthetic Data [51.59223474427153]
命令追従能力のための高品質な合成データを適応的に生成するフレームワークであるCodecLMを紹介する。
まず、ターゲットの指示分布をキャプチャするために、オンザフライで生成された簡潔なキーワードであるメタデータにシード命令をエンコードする。
また、デコード中に自己論理とコントラストフィルタを導入し、データ効率の良いサンプルを調整する。
論文 参考訳(メタデータ) (2024-04-08T21:15:36Z) - Improving Text Embeddings with Large Language Models [59.930513259982725]
合成データと1k以下のトレーニングステップのみを用いて,高品質なテキスト埋め込みを実現するための,新しい簡易な手法を提案する。
我々は、93言語にまたがる数十万のテキスト埋め込みタスクのための多様な合成データを生成するために、プロプライエタリなLLMを活用している。
実験により,ラベル付きデータを使わずに,高度に競争力のあるテキスト埋め込みベンチマークにおいて高い性能が得られることが示された。
論文 参考訳(メタデータ) (2023-12-31T02:13:18Z) - Fully Autonomous Programming with Large Language Models [0.9558392439655015]
LLM(Large Language Models)を用いたプログラム合成への最近のアプローチは、"ニアミスシンドローム"を示す。
我々は、LLMとプログラム合成ベンチマーク2としてOpenAI Codexを使用し、問題記述と評価のためのテストのデータベースとして使用します。
結果として生じるフレームワークは、修復フェーズなしでのCodexの従来の使用法と、従来の遺伝的プログラミングアプローチの両方を上回ります。
論文 参考訳(メタデータ) (2023-04-20T16:12:05Z) - NAPG: Non-Autoregressive Program Generation for Hybrid Tabular-Textual
Question Answering [52.10214317661547]
現在の数値推論法はプログラムシーケンスを自己回帰的にデコードする。
プログラム生成の精度は、デコードステップがエラー伝搬によって展開されるにつれて急激に低下する。
本稿では,非自己回帰型プログラム生成フレームワークを提案する。
論文 参考訳(メタデータ) (2022-11-07T11:25:21Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。