論文の概要: Learning from Self-Sampled Correct and Partially-Correct Programs
- arxiv url: http://arxiv.org/abs/2205.14318v1
- Date: Sat, 28 May 2022 03:31:07 GMT
- ステータス: 処理完了
- システム内更新日: 2022-06-04 23:44:15.780162
- Title: Learning from Self-Sampled Correct and Partially-Correct Programs
- Title(参考訳): 自己サンプル型プログラムと部分修正型プログラムからの学習
- Authors: Ansong Ni, Jeevana Priya Inala, Chenglong Wang, Oleksandr Polozov,
Christopher Meek, Dragomir Radev, Jianfeng Gao
- Abstract要約: そこで本研究では,モデルが学習中にサンプリングを行い,自己サンプリングされた完全正当プログラムと部分正当プログラムの両方から学習することを提案する。
自己サンプリング型プログラムと部分修正型プログラムを併用することで,学習とサンプリングプロセスのガイドに役立てることができることを示す。
提案手法は,MLEを用いた単一の参照プログラムからの学習と比較して,パス@kの性能を3.1%から12.3%向上させる。
- 参考スコア(独自算出の注目度): 96.66452896657991
- License: http://creativecommons.org/licenses/by/4.0/
- Abstract: Program synthesis aims to generate executable programs that are consistent
with the user specification. While there are often multiple programs that
satisfy the same user specification, existing neural program synthesis models
are often only learned from one reference program by maximizing its
log-likelihood. This causes the model to be overly confident in its predictions
as it sees the single solution repeatedly during training. This leads to poor
generalization on unseen examples, even when multiple attempts are allowed. To
mitigate this issue, we propose to let the model perform sampling during
training and learn from both self-sampled fully-correct programs, which yield
the gold execution results, as well as partially-correct programs, whose
intermediate execution state matches another correct program. We show that our
use of self-sampled correct and partially-correct programs can benefit learning
and help guide the sampling process, leading to more efficient exploration of
the program space. Additionally, we explore various training objectives to
support learning from multiple programs per example and find they greatly
affect the performance. Experiments on the MathQA and GSM8K datasets show that
our proposed method improves the pass@k performance by 3.1% to 12.3% compared
to learning from a single reference program with MLE.
- Abstract(参考訳): プログラム合成は、ユーザ仕様に準拠した実行可能なプログラムを生成することを目的としている。
しばしば同じユーザ仕様を満たす複数のプログラムが存在するが、既存のニューラルプログラム合成モデルは、ログライクな範囲を最大化することによって、単一の参照プログラムからのみ学習される。
これにより、トレーニング中に1つのソリューションを繰り返し見ているため、モデルはその予測に過度に自信を持つことになります。
これにより、複数の試行が許可された場合でも、見当たらない例の一般化が不十分になる。
この問題を軽減するため,本モデルでは,学習中にサンプリングを行い,ゴールド実行結果が得られる自己サンプリングされたプログラムと,中間実行状態が他のプログラムと一致する部分的修正プログラムの両方から学習することを提案する。
自己サンプリング型プログラムと部分修正型プログラムを併用することで,学習とサンプリングプロセスのガイドに役立ち,プログラム空間のより効率的な探索が可能になることを示す。
さらに,サンプル毎に複数のプログラムから学習を支援するために,さまざまなトレーニング目標を検討し,パフォーマンスに大きな影響を与えることを見出した。
MathQA と GSM8K データセットを用いた実験により,提案手法は MLE を用いた単一の参照プログラムからの学習と比較して,pass@k の性能を3.1%から12.3%向上させることがわかった。
関連論文リスト
- Learning to Reason via Program Generation, Emulation, and Search [33.11955431589091]
言語モデル(LM)によるプログラム合成は、多くの推論能力を解放した。
すべての推論タスクは、コードとして容易に表現できるわけではない。例えば、常識的推論、道徳的意思決定、皮肉な理解を含むタスクである。
我々は,プログラム合成スキルをこのようなタスクに拡張するために,コード生成とエミュレートされた実行(CoGEX)を提案する。
論文 参考訳(メタデータ) (2024-05-25T19:40:50Z) - NExT: Teaching Large Language Models to Reason about Code Execution [50.93581376646064]
大規模言語モデル(LLM)のコードは通常、プログラムの表面テキスト形式に基づいて訓練される。
NExTは,プログラムの実行トレースを検査し,実行時の動作を判断する手法である。
論文 参考訳(メタデータ) (2024-04-23T01:46:32Z) - Turaco: Complexity-Guided Data Sampling for Training Neural Surrogates
of Programs [14.940174578659603]
本稿では,ニューラルネットワークに基づくプログラムのサロゲートをトレーニングするための,データセットのサンプリング手法を提案する。
まず,プログラムの入力空間の各領域からのサンプルデータの割合を,対応する実行パスのサロゲートを学習する複雑性に基づいて特徴付ける。
これらの結果を実世界のプログラムで評価し,複雑性誘導サンプリングが精度を実証的に向上させることを示した。
論文 参考訳(メタデータ) (2023-09-21T01:59:20Z) - CodeGen2: Lessons for Training LLMs on Programming and Natural Languages [116.74407069443895]
我々はエンコーダとデコーダベースのモデルを単一のプレフィックスLMに統一する。
学習方法は,「フリーランチ」仮説の主張を考察する。
データ配信においては,混合分布と多言語学習がモデル性能に及ぼす影響について検討した。
論文 参考訳(メタデータ) (2023-05-03T17:55:25Z) - Hierarchical Programmatic Reinforcement Learning via Learning to Compose
Programs [58.94569213396991]
プログラムポリシーを作成するための階層型プログラム強化学習フレームワークを提案する。
提案するフレームワークは,プログラム作成の学習を通じて,アウト・オブ・ディストリビュータの複雑な動作を記述するプログラムポリシーを作成することができる。
Karel ドメインの実験結果から,提案するフレームワークがベースラインより優れていることが示された。
論文 参考訳(メタデータ) (2023-01-30T14:50:46Z) - Fault-Aware Neural Code Rankers [64.41888054066861]
サンプルプログラムの正しさを予測できる故障認識型ニューラルネットワークローダを提案する。
我々のフォールト・アウェア・ローダは、様々なコード生成モデルのpass@1精度を大幅に向上させることができる。
論文 参考訳(メタデータ) (2022-06-04T22:01:05Z) - Enforcing Consistency in Weakly Supervised Semantic Parsing [68.2211621631765]
本稿では,関連する入力に対する出力プログラム間の整合性を利用して,スプリアスプログラムの影響を低減することを提案する。
より一貫性のあるフォーマリズムは、一貫性に基づくトレーニングを必要とせずに、モデルパフォーマンスを改善することにつながります。
論文 参考訳(メタデータ) (2021-07-13T03:48:04Z) - Learning to Combine Per-Example Solutions for Neural Program Synthesis [35.0204840620086]
ほとんどの学習ベースのアプローチは、一度にすべての例を満たすプログラムを見つけようとします。
a) 1つの例のみを満たすプログラムを見つけ、(b) 例ごとのソリューションを活用して、すべての例を満たすプログラムを生成する。
論文 参考訳(メタデータ) (2021-06-14T05:48:12Z) - Neural Program Synthesis with a Differentiable Fixer [44.48509453344902]
本稿では,エンコーダとデコーダをベースとした合成アーキテクチャと,プログラムを識別可能な固定器を組み合わせた新しいプログラム合成手法を提案する。
RobustFillドメイン上でアーキテクチャをエンドツーエンドにトレーニングし、フィクスチャモジュールの追加によって、合成精度が大幅に向上することを示す。
論文 参考訳(メタデータ) (2020-06-19T01:49:46Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。