論文の概要: Iterative Genetic Improvement: Scaling Stochastic Program Synthesis
- arxiv url: http://arxiv.org/abs/2202.13040v1
- Date: Sat, 26 Feb 2022 02:00:35 GMT
- ステータス: 処理完了
- システム内更新日: 2022-03-01 17:27:05.261545
- Title: Iterative Genetic Improvement: Scaling Stochastic Program Synthesis
- Title(参考訳): 反復的遺伝的改善:スケーリング確率的プログラム合成
- Authors: Yuan Yuan and Wolfgang Banzhaf
- Abstract要約: プログラム合成は、与えられた仕様を満たす基礎となるプログラミング言語からプログラムを自動的に見つけることを目的としている。
既存のプログラム合成技術はこの期待を十分に満たさず、スケーラビリティの問題に悩まされている。
本稿では、この問題を解決するために反復的遺伝的改善と呼ばれるプログラム合成の新しい枠組みを提案する。
- 参考スコア(独自算出の注目度): 11.195558777385259
- License: http://arxiv.org/licenses/nonexclusive-distrib/1.0/
- Abstract: Program synthesis aims to {\it automatically} find programs from an
underlying programming language that satisfy a given specification. While this
has the potential to revolutionize computing, how to search over the vast space
of programs efficiently is an unsolved challenge in program synthesis. In cases
where large programs are required for a solution, it is generally believed that
{\it stochastic} search has advantages over other classes of search techniques.
Unfortunately, existing stochastic program synthesizers do not meet this
expectation very well, suffering from the scalability issue. Here we propose a
new framework for stochastic program synthesis, called iterative genetic
improvement to overcome this problem, a technique inspired by the practice of
the software development process. The key idea of iterative genetic improvement
is to apply genetic improvement to improve a current reference program, and
then iteratively replace the reference program by the best program found.
Compared to traditional stochastic synthesis approaches, iterative genetic
improvement can build up the complexity of programs incrementally in a more
robust way. We evaluate the approach on two program synthesis domains: list
manipulation and string transformation. Our empirical results indicate that
this method has considerable advantages over several representative stochastic
program synthesizer techniques, both in terms of scalability and of solution
quality.
- Abstract(参考訳): プログラム合成は、与えられた仕様を満たす基礎となるプログラミング言語からプログラムを自動的に見つけることを目的としている。
これはコンピューティングに革命をもたらす可能性があるが、プログラムの膨大なスペースを効率的に探索する方法は、プログラム合成における未解決の課題である。
解決のために大規模なプログラムが必要となる場合、一般に「it確率的」探索は、他の種類の探索技術よりも有利であると考えられている。
残念ながら、既存の確率的プログラムシンセサイザーはこの期待を十分に満たしておらず、スケーラビリティの問題に苦しんでいる。
本稿では,ソフトウェア開発プロセスの実践に触発された手法である,この問題を克服するための反復的遺伝的改良という,確率的プログラム合成のための新しい枠組みを提案する。
反復的遺伝的改善の鍵となるアイデアは、現在の参照プログラムを改善するために遺伝的改善を適用し、最適なプログラムで参照プログラムを反復的に置き換えることである。
従来の確率的合成アプローチと比較して、反復的な遺伝的改善はプログラムの複雑さをより堅牢な方法で積み上げることができる。
リスト操作と文字列変換という2つのプログラム合成領域のアプローチを評価する。
実験結果から,本手法はスケーラビリティとソリューション品質の両面において,いくつかの代表的な確率的プログラムシンセサイザー技術に対して有意なアドバンテージを有することが示唆された。
関連論文リスト
- Genetic Algorithm for Program Synthesis [6.85316573653194]
進化的計算を用いて,還元型プログラム合成ツール SuSLik の探索戦略を改良する。
我々のクロスバリデーションは、進化的計算による改善が予期せぬ問題に一般化していることを示している。
論文 参考訳(メタデータ) (2022-11-22T01:16:13Z) - Synthesizing Programs with Continuous Optimization [4.457604452495174]
本稿では,連続最適化問題としてプログラム合成の新たな定式化を提案する。
次に、連続的な定式化を実際のプログラムに変換するためのマッピングスキームを提案する。
論文 参考訳(メタデータ) (2022-11-02T02:12:10Z) - Compositional Generalization and Decomposition in Neural Program
Synthesis [59.356261137313275]
本稿では,学習プログラムシンセサイザーの合成一般化能力の測定に焦点をあてる。
まず、プログラム合成法が一般化されるであろういくつかの異なる軸を特徴付ける。
2つの一般的な既存のデータセットに基づいて、これらの能力を評価するためのタスクのベンチマークスイートを導入する。
論文 参考訳(メタデータ) (2022-04-07T22:16:05Z) - Searching for More Efficient Dynamic Programs [61.79535031840558]
本稿では,プログラム変換の集合,変換プログラムの効率を評価するための単純な指標,およびこの指標を改善するための探索手順について述べる。
実際に、自動検索は初期プログラムの大幅な改善を見出すことができることを示す。
論文 参考訳(メタデータ) (2021-09-14T20:52:55Z) - Recent Developments in Program Synthesis with Evolutionary Algorithms [1.8047694351309207]
関連する進化的プログラム合成手法を同定し,その性能を詳細に解析する。
私たちが特定する最も影響力のあるアプローチは、スタックベース、文法誘導、および線形遺伝プログラミングである。
今後の研究のために、研究者は、プログラムのアウトプットを使用して、ソリューションの品質を評価するだけでなく、ソリューションへの道を開くことを奨励します。
論文 参考訳(メタデータ) (2021-08-27T11:38:27Z) - Latent Execution for Neural Program Synthesis Beyond Domain-Specific
Languages [97.58968222942173]
入力出力の例からCプログラムを合成する第一歩を踏み出す。
特に,部分生成プログラムの実行を近似するために潜在表現を学習するLa Synthを提案する。
これらのプログラムのトレーニングにより,Karel と C のプログラム合成における予測性能がさらに向上することを示す。
論文 参考訳(メタデータ) (2021-06-29T02:21:32Z) - Representing Partial Programs with Blended Abstract Semantics [62.20775388513027]
プログラム合成エンジンにおける部分的なプログラム表現手法について紹介する。
モジュラーニューラルネットワークとして実装された近似実行モデルを学ぶ。
これらのハイブリッドニューロシンボリック表現は、実行誘導型シンセサイザーがより強力な言語構成を使うことができることを示す。
論文 参考訳(メタデータ) (2020-12-23T20:40:18Z) - Learning Differentiable Programs with Admissible Neural Heuristics [43.54820901841979]
ドメイン固有言語におけるプログラムとして表現される微分可能関数の学習問題について検討する。
我々は、この最適化問題を、プログラム構文のトップダウン導出を符号化した重み付きグラフの探索として構成する。
私たちの重要なイノベーションは、さまざまなニューラルネットワークのクラスを、プログラムの空間上の連続的な緩和と見なすことです。
論文 参考訳(メタデータ) (2020-07-23T16:07:39Z) - Synthesize, Execute and Debug: Learning to Repair for Neural Program
Synthesis [81.54148730967394]
本稿では,合成,実行,デバッグの段階を組み込んだニューラルネットワーク生成フレームワークであるSEDを提案する。
SEDはまず、神経プログラムシンセサイザーコンポーネントを使用して初期プログラムを生成し、その後、神経プログラムデバッガを使用して生成されたプログラムを反復的に修復する。
挑戦的な入出力プログラム合成ベンチマークであるKarelでは、SEDはニューラルプログラムシンセサイザー自体のエラー率をかなりのマージンで削減し、デコードのための標準ビームサーチより優れている。
論文 参考訳(メタデータ) (2020-07-16T04:15:47Z) - Creating Synthetic Datasets via Evolution for Neural Program Synthesis [77.34726150561087]
いくつかのプログラム合成手法は、ランダムに生成された例と異なるデータ分布によく一般化されていることを示す。
本稿では, 合成データ分布のバイアスを制御し, 現在の手法より優れていることを示すための, 新たな敵対的手法を提案する。
論文 参考訳(メタデータ) (2020-03-23T18:34:15Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。