論文の概要: BUSTLE: Bottom-Up Program Synthesis Through Learning-Guided Exploration
- arxiv url: http://arxiv.org/abs/2007.14381v3
- Date: Thu, 30 Sep 2021 13:50:43 GMT
- ステータス: 処理完了
- システム内更新日: 2022-11-06 02:48:45.112950
- Title: BUSTLE: Bottom-Up Program Synthesis Through Learning-Guided Exploration
- Title(参考訳): BUSTLE:学習誘導探索によるボトムアッププログラム合成
- Authors: Augustus Odena, Kensen Shi, David Bieber, Rishabh Singh, Charles
Sutton, Hanjun Dai
- Abstract要約: プログラムのボトムアップ検索に学習を活用する新しい合成手法を提案する。
特に、入力出力例のセットに基づいて、探索条件中の中間値の合成を優先順位付けするようにモデルを訓練する。
単純な教師付き学習アプローチであっても,学習とボトムアップ検索の組み合わせは極めて効果的であることを示す。
- 参考スコア(独自算出の注目度): 72.88493072196094
- License: http://arxiv.org/licenses/nonexclusive-distrib/1.0/
- Abstract: Program synthesis is challenging largely because of the difficulty of search
in a large space of programs. Human programmers routinely tackle the task of
writing complex programs by writing sub-programs and then analyzing their
intermediate results to compose them in appropriate ways. Motivated by this
intuition, we present a new synthesis approach that leverages learning to guide
a bottom-up search over programs. In particular, we train a model to prioritize
compositions of intermediate values during search conditioned on a given set of
input-output examples. This is a powerful combination because of several
emergent properties. First, in bottom-up search, intermediate programs can be
executed, providing semantic information to the neural network. Second, given
the concrete values from those executions, we can exploit rich features based
on recent work on property signatures. Finally, bottom-up search allows the
system substantial flexibility in what order to generate the solution, allowing
the synthesizer to build up a program from multiple smaller sub-programs.
Overall, our empirical evaluation finds that the combination of learning and
bottom-up search is remarkably effective, even with simple supervised learning
approaches. We demonstrate the effectiveness of our technique on two datasets,
one from the SyGuS competition and one of our own creation.
- Abstract(参考訳): プログラム合成は、プログラムの広い領域での検索が困難であるため、非常に困難である。
ヒューマンプログラマは、サブプログラムを書き、その中間結果を解析して適切な方法で構成することで、複雑なプログラムを書くタスクに常に取り組む。
この直観に動機づけられ、学習を利用してプログラムのボトムアップ検索を導く新しい合成手法を提案する。
特に,入力-出力例の組で条件づけされた探索中,中間値の構成を優先するようにモデルを訓練する。
これはいくつかの創発的性質により強力な組み合わせである。
まず、ボトムアップ検索では中間プログラムを実行し、ニューラルネットワークに意味情報を提供する。
次に、これらの実行の具体的な値を考えると、プロパティシグネチャに関する最近の作業に基づいて、リッチな機能を活用できます。
最後にボトムアップ探索により、システムはどの順番でソリューションを生成するかを柔軟にし、シンセサイザーは複数の小さなサブプログラムからプログラムを構築することができる。
総合評価の結果,単純な教師付き学習アプローチであっても,学習とボトムアップ検索の組み合わせは極めて効果的であることがわかった。
我々は,SyGuSコンペティションの1つと,この2つのデータセットにおける手法の有効性を実証した。
関連論文リスト
- Searching Latent Program Spaces [0.0]
本研究では,連続空間における潜伏プログラム上の分布を学習し,効率的な探索とテスト時間適応を可能にするプログラム誘導アルゴリズムを提案する。
テスト時間適応機構を利用して、トレーニング分布を超えて一般化し、目に見えないタスクに適応できることを示す。
論文 参考訳(メタデータ) (2024-11-13T15:50:32Z) - IPSynth: Interprocedural Program Synthesis for Software Security Implementation [3.1119394814248253]
本稿では,提案手法の仕様を自動学習する新しい言語間プログラム合成手法であるIP Synthを紹介する。
提案手法は,プログラム内の対応する箇所を正確に特定し,必要なコードスニペットを合成し,プログラムに追加し,ChatGPTをプログラム間の戦術的合成タスクで上回ることを示す。
論文 参考訳(メタデータ) (2024-03-16T07:12:24Z) - ExeDec: Execution Decomposition for Compositional Generalization in Neural Program Synthesis [54.18659323181771]
プログラム合成において望ましいいくつかの異なる構成一般化形式を特徴付ける。
本稿では,ExeDecを提案する。ExeDecは,実行サブゴールを予測し,各ステップでプログラム実行によって段階的に通知される問題を解くための,新しい分解ベースの戦略である。
論文 参考訳(メタデータ) (2023-07-26T01:07:52Z) - A Divide-Align-Conquer Strategy for Program Synthesis [8.595181704811889]
本稿では,大規模プログラムの探索を複数の小さなプログラム合成問題に分割する例によって,構成セグメント化がプログラミングに応用可能であることを示す。
入力と出力における構成部品の構造的アライメントは、プログラム探索を導くのに使用されるペアワイズ対応に繋がる。
論文 参考訳(メタデータ) (2023-01-08T19:10:55Z) - CrossBeam: Learning to Search in Bottom-Up Program Synthesis [51.37514793318815]
ボトムアップ合成のためのハンズオン検索ポリシーを学習するためのニューラルネットワークのトレーニングを提案する。
私たちのアプローチは、CrossBeamと呼ばれ、ニューラルモデルを使用して、以前に探索されたプログラムを新しいプログラムに組み合わせる方法を選択します。
我々はCrossBeamが効率的に検索することを学び、最先端技術と比較してプログラム空間のより小さな部分を探索する。
論文 参考訳(メタデータ) (2022-03-20T04:41:05Z) - Leveraging Language to Learn Program Abstractions and Search Heuristics [66.28391181268645]
LAPS(Language for Abstraction and Program Search)は、自然言語アノテーションを用いて、ライブラリとニューラルネットワークによる合成のための検索モデルの共同学習をガイドする手法である。
最先端のライブラリ学習システム(DreamCoder)に統合されると、LAPSは高品質なライブラリを生成し、検索効率と一般化を改善する。
論文 参考訳(メタデータ) (2021-06-18T15:08:47Z) - Representing Partial Programs with Blended Abstract Semantics [62.20775388513027]
プログラム合成エンジンにおける部分的なプログラム表現手法について紹介する。
モジュラーニューラルネットワークとして実装された近似実行モデルを学ぶ。
これらのハイブリッドニューロシンボリック表現は、実行誘導型シンセサイザーがより強力な言語構成を使うことができることを示す。
論文 参考訳(メタデータ) (2020-12-23T20:40:18Z) - Latent Programmer: Discrete Latent Codes for Program Synthesis [56.37993487589351]
プログラム合成や文書要約などの多くのシーケンス学習タスクにおいて、重要な問題は出力シーケンスの広い空間を探索することである。
本稿では,検索対象とする出力の表現を学習することを提案する。
本稿では,まず入力/出力サンプルから離散潜在コードを予測するプログラム合成手法であるemphLatent Programmerを紹介し,そのプログラムを対象言語で生成する。
論文 参考訳(メタデータ) (2020-12-01T10:11:35Z) - Learning Differentiable Programs with Admissible Neural Heuristics [43.54820901841979]
ドメイン固有言語におけるプログラムとして表現される微分可能関数の学習問題について検討する。
我々は、この最適化問題を、プログラム構文のトップダウン導出を符号化した重み付きグラフの探索として構成する。
私たちの重要なイノベーションは、さまざまなニューラルネットワークのクラスを、プログラムの空間上の連続的な緩和と見なすことです。
論文 参考訳(メタデータ) (2020-07-23T16:07:39Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。