論文の概要: LEVER: Learning to Verify Language-to-Code Generation with Execution
- arxiv url: http://arxiv.org/abs/2302.08468v2
- Date: Wed, 5 Jul 2023 08:00:15 GMT
- ステータス: 処理完了
- システム内更新日: 2023-07-06 23:06:19.320188
- Title: LEVER: Learning to Verify Language-to-Code Generation with Execution
- Title(参考訳): LEVER: 実行で言語からコード生成を検証することを学ぶ
- Authors: Ansong Ni, Srini Iyer, Dragomir Radev, Ves Stoyanov, Wen-tau Yih, Sida
I. Wang, Xi Victoria Lin
- Abstract要約: 本稿では,プログラムの実行結果の検証を学習することで,言語からコードへの生成を改善するシンプルな手法であるLEVERを提案する。
具体的には、LLMからサンプリングされたプログラムが、自然言語入力、プログラム自体とその実行結果に基づいて正しいか否かを判定するために、検証者を訓練する。
LEVER はベースコード LLMs (4.6% から 10.9% まで) を継続的に改善し、それらすべてに対して新しい最先端の結果を得る。
- 参考スコア(独自算出の注目度): 43.11241361642869
- License: http://creativecommons.org/licenses/by-nc-sa/4.0/
- Abstract: The advent of large language models trained on code (code LLMs) has led to
significant progress in language-to-code generation. State-of-the-art
approaches in this area combine LLM decoding with sample pruning and reranking
using test cases or heuristics based on the execution results. However, it is
challenging to obtain test cases for many real-world language-to-code
applications, and heuristics cannot well capture the semantic features of the
execution results, such as data type and value range, which often indicates the
correctness of the program. In this work, we propose LEVER, a simple approach
to improve language-to-code generation by learning to verify the generated
programs with their execution results. Specifically, we train verifiers to
determine whether a program sampled from the LLMs is correct or not based on
the natural language input, the program itself and its execution results. The
sampled programs are reranked by combining the verification score with the LLM
generation probability, and marginalizing over programs with the same execution
results. On four datasets across the domains of table QA, math QA and basic
Python programming, LEVER consistently improves over the base code LLMs(4.6% to
10.9% with code-davinci-002) and achieves new state-of-the-art results on all
of them.
- Abstract(参考訳): コードで訓練された大規模言語モデル(コードllm)の出現は、言語対コード生成の著しい進歩をもたらした。
この領域における最先端のアプローチは、LCMデコーディングとサンプルプルーニングを組み合わせ、実行結果に基づいてテストケースやヒューリスティックを使って再ランク付けする。
しかし、多くの現実世界の言語からコードへのアプリケーションでテストケースを取得することは困難であり、ヒューリスティックスは、しばしばプログラムの正確さを示すデータ型や値範囲といった実行結果の意味的特徴をうまく把握できない。
そこで本研究では,プログラムの実行結果を学習することで,言語間コード生成を改善するシンプルな手法であるLEVERを提案する。
具体的には、自然言語入力やプログラム自体とその実行結果に基づいて、llmからサンプリングされたプログラムが正しいかどうかを判断するために検証者を訓練する。
サンプルプログラムは、検証スコアとLCM生成確率を組み合わせ、同じ実行結果でプログラムをマーカライズすることにより再ランクされる。
テーブルQA、数学QA、基本的なPythonプログラミングの領域にまたがる4つのデータセットにおいて、LEVERはLLMs(4.6%から10.9%)を一貫して改善し、それらすべてに対して新しい最先端の結果を得る。
関連論文リスト
- Crystal: Illuminating LLM Abilities on Language and Code [58.5467653736537]
本稿では,自然言語と符号化機能の統合性を高めるための事前学習戦略を提案する。
結果のモデルであるCrystalは、両方のドメインで顕著な能力を示します。
論文 参考訳(メタデータ) (2024-11-06T10:28:46Z) - 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) - Towards Translating Real-World Code with LLMs: A Study of Translating to Rust [13.743967357458287]
大規模言語モデル(LLM)は、ほとんどのプログラミング言語でコードを記述する能力のため、コード翻訳において有望であることを示す。
実世界のオープンソースプロジェクトから抽出したコードについて検討する。
FLOURINEは、差分ファジィを使用して、Rust翻訳が元のソースプログラムと同等のI/Oかどうかをチェックする、エンドツーエンドのコード変換ツールである。
論文 参考訳(メタデータ) (2024-05-19T10:54:03Z) - Executing Natural Language-Described Algorithms with Large Language Models: An Investigation [48.461999568129166]
自然言語で概説したアルゴリズムを理解・実行するための,今日の大規模言語モデルの能力について検討する。
我々は、30個のアルゴリズムを選択し、300個のランダムサンプリングされたインスタンスを生成し、人気のあるLCMがこれらのアルゴリズムを理解し実行できるかを評価した。
この結果から,LLM,特にGPT-4は,重数値計算を伴わない限り,自然言語で記述されたプログラムを効果的に実行できることが判明した。
論文 参考訳(メタデータ) (2024-02-23T05:31:36Z) - Mutation-based Consistency Testing for Evaluating the Code Understanding
Capability of LLMs [5.549095839198671]
大きな言語モデル(LLM)は、自然言語とプログラミング言語の両方を処理する際、顕著な能力を示している。
本稿では,LLMのコード理解性能を評価する新しい手法を提案し,特にコードと記述の微妙な差異に着目した。
演算子置換やステートメント削除など,さまざまなタイプのコード突然変異を適用して,一貫性のないコード記述ペアを生成する。
我々は,現在最先端のコード生成ベンチマークであるHumanEval-Xを用いて,GPT-3.5とGPT-4の2つのLLMのケーススタディを行う。
論文 参考訳(メタデータ) (2024-01-11T14:27:43Z) - Exploring Large Language Models for Code Explanation [3.2570216147409514]
大規模言語モデル(LLM)は自然言語処理において顕著な進歩を遂げている。
本研究では,様々なLLMを用いて,コードスニペットの自然言語要約を生成するタスクについて検討する。
論文 参考訳(メタデータ) (2023-10-25T14:38:40Z) - Large Language Model-Aware In-Context Learning for Code Generation [75.68709482932903]
大規模言語モデル(LLM)は、コード生成において印象的なコンテキスト内学習(ICL)能力を示している。
コード生成のためのLAIL (LLM-Aware In-context Learning) という新しい学習ベース選択手法を提案する。
論文 参考訳(メタデータ) (2023-10-15T06:12:58Z) - LeTI: Learning to Generate from Textual Interactions [60.425769582343506]
本稿では,テキストインタラクション(LETI)から学習するLMの可能性を,バイナリラベルによる正当性をチェックするだけでなく,テキストフィードバックを通じて出力中のエラーをピンポイントし,説明する。
私たちの焦点はコード生成タスクであり、そこではモデルが自然言語命令に基づいてコードを生成する。
LETIは、目的のLMを用いて、自然言語命令、LM生成プログラム、テキストフィードバックの結合に基づいて、モデルを反復的に微調整する。
論文 参考訳(メタデータ) (2023-05-17T15:53:31Z) - Natural Language to Code Translation with Execution [82.52142893010563]
実行結果-プログラム選択のための最小ベイズリスク復号化。
そこで本研究では,自然言語からコードへのタスクにおいて,事前訓練されたコードモデルの性能を向上することを示す。
論文 参考訳(メタデータ) (2022-04-25T06:06:08Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。