論文の概要: Automatic Generation of Python Programs Using Context-Free Grammars
- arxiv url: http://arxiv.org/abs/2403.06503v1
- Date: Mon, 11 Mar 2024 08:25:52 GMT
- ステータス: 処理完了
- システム内更新日: 2024-03-12 19:51:44.156813
- Title: Automatic Generation of Python Programs Using Context-Free Grammars
- Title(参考訳): 文脈自由文法を用いたpythonプログラムの自動生成
- Authors: Kamel Yamani, Marwa Na\"ir, Riyadh Baghdadi
- Abstract要約: TinyPy Generatorは、文脈自由文法を使ってランダムなPythonプログラムを生成するツールである。
私たちのシステムは、さまざまなレベルの複雑さを持つコードを生成するために、カスタムプロダクションルールを使用します。
TinyPy Generatorは機械学習の分野で有用であり、Python言語モデルをトレーニングするための大量のPythonコードを生成することができる。
- 参考スコア(独自算出の注目度): 0.1227734309612871
- License: http://creativecommons.org/licenses/by-nc-sa/4.0/
- Abstract: In recent years, data has emerged as the new gold, serving as a powerful tool
for creating intelligent systems. However, procuring high-quality data remains
challenging, especially for code. To address this, we developed TinyPy
Generator, a tool that generates random Python programs using a context-free
grammar. The generated programs are guaranteed to be correct by construction.
Our system uses custom production rules (in the Backus-Naur Form (BNF) format)
to recursively generate code. This allows us to generate code with different
levels of complexity, ranging from code containing only assignments to more
complex code containing conditionals and loops. Our proposed tool enables
effortless large-scale Python code generation, beneficial for a wide range of
applications. TinyPy Generator is particularly useful in the field of machine
learning, where it can generate substantial amounts of Python code for training
Python language models. Additionally, researchers who are studying programming
languages can utilize this tool to create datasets for their experiments, which
can help validate the robustness of code interpreters or compilers. Unlike
existing research, we have open-sourced our implementation. This allows
customization according to user needs and extends potential usage to other
languages.
- Abstract(参考訳): 近年、データは新しい金として登場し、インテリジェントなシステムを作るための強力なツールとなっている。
しかし、特にコードに関して、高品質なデータを取得することは難しい。
そこで我々は,文脈自由文法を用いてランダムなPythonプログラムを生成するTinyPy Generatorを開発した。
生成されたプログラムは、構築によって正しいことが保証される。
我々のシステムは、コードを再帰的に生成するためにカスタム生産ルール(BNFフォーマット)を使用する。
これにより、代入のみを含むコードから条件付きとループを含むより複雑なコードまで、異なるレベルの複雑さを持つコードを生成することができます。
提案するツールは,広範囲のアプリケーションに対して有効な,無益な大規模pythonコード生成を可能にする。
TinyPy Generatorは特に機械学習の分野で有用であり、Python言語モデルをトレーニングするための大量のPythonコードを生成することができる。
さらに、プログラミング言語を研究している研究者は、このツールを使って実験用のデータセットを作成し、コードインタプリタやコンパイラの堅牢性を検証することができる。
既存の研究とは異なり、我々は実装をオープンソース化しました。
これにより、ユーザニーズに応じたカスタマイズが可能になり、他の言語にも使用可能な拡張が可能になる。
関連論文リスト
- GenCodeSearchNet: A Benchmark Test Suite for Evaluating Generalization
in Programming Language Understanding [5.9535699822923]
我々は,言語モデルの言語理解能力を評価するために,GenCodeSearchNet (GeCS) という新しいベンチマークデータセットを提案する。
完全なデータセットの一部として、我々が導入した新しい手作業でキュレートされたサブセットであるStatCodeSearchは、人気があるが、これまでのところあまり表現されていないプログラミング言語である。
評価と比較のために、細調整されたBERTスタイルモデルとGPTスタイルの大規模言語モデルを用いて、いくつかのベースライン結果を収集した。
論文 参考訳(メタデータ) (2023-11-16T09:35:00Z) - Natural Language Embedded Programs for Hybrid Language Symbolic
Reasoning [86.92053166457116]
本研究では,数学・記号的推論,自然言語理解,後続の課題に対処するための統合フレームワークとして,自然言語組み込みプログラム(NLEP)を提案する。
我々のアプローチは,構造化知識の自然言語表現を含むデータ構造上の関数を定義する完全なPythonプログラムを生成するよう,言語モデルに促す。
Pythonインタープリタが生成されたコードを実行し、出力をプリントする。
論文 参考訳(メタデータ) (2023-09-19T17:54:21Z) - COMEX: A Tool for Generating Customized Source Code Representations [7.151800146054561]
COMEXは、研究者と開発者が複数のコードビューを作成し、組み合わせることを可能にするフレームワークである。
プロシージャ内スニペットとプロシージャ間スニペットの両方を使用して、メソッドレベルのスニペットとプログラムレベルのスニペットの両方を分析することができる。
これは40以上の言語をサポートする、広く使われているインクリメンタル分析ツールであるtree-sitter上に構築されている。
論文 参考訳(メタデータ) (2023-07-10T16:46:34Z) - Python Code Generation by Asking Clarification Questions [57.63906360576212]
本稿では,この課題に対して,より斬新で現実的なセットアップを導入する。
我々は、自然言語記述の過小評価は、明確化を問うことで解決できると仮定する。
我々は、生成した合成明確化質問と回答を含む自然言語記述とコードのペアを含む、CodeClarQAという新しいデータセットを収集し、導入する。
論文 参考訳(メタデータ) (2022-12-19T22:08:36Z) - Multi-lingual Evaluation of Code Generation Models [82.7357812992118]
本稿では,MBXPとMultilingual HumanEval,MathQA-Xという,評価コード生成モデルに関する新しいベンチマークを提案する。
これらのデータセットは10以上のプログラミング言語をカバーする。
コード生成モデルの性能を多言語で評価することができる。
論文 参考訳(メタデータ) (2022-10-26T17:17:06Z) - ReACC: A Retrieval-Augmented Code Completion Framework [53.49707123661763]
本稿では,語彙のコピーと類似したセマンティクスを持つコード参照の両方を検索により活用する検索拡張コード補完フレームワークを提案する。
我々は,Python および Java プログラミング言語のコード補完タスクにおけるアプローチを評価し,CodeXGLUE ベンチマークで最先端のパフォーマンスを実現する。
論文 参考訳(メタデータ) (2022-03-15T08:25:08Z) - GAP-Gen: Guided Automatic Python Code Generation [3.574838772430975]
本稿では,Pythonの構文的制約と意味的制約に基づくガイド付き自動Pythonコード生成手法を提案する。
GAP-Genは、Code-to-Docstringデータセットを使用して、トランスフォーマーベースの言語モデルT5とCodeT5を微調整する。
実験の結果,GAP-GenはPythonの自動コード生成タスクにおいて,従来の作業よりも優れた結果が得られることがわかった。
論文 参考訳(メタデータ) (2022-01-19T06:32:47Z) - Lyra: A Benchmark for Turducken-Style Code Generation [15.810088578588028]
ソフトウェア開発では、あるプログラミング言語が別のプログラミング言語に埋め込まれることが多い。
本稿では、自然言語のコメントを前提として、組み込み言語でプログラムを生成することを目的とした新しいコード生成タスクを定義する。
私たちの知る限り、これが最初のturduckenスタイルのコード生成タスクです。
論文 参考訳(メタデータ) (2021-08-27T07:22:55Z) - Natural Language-guided Programming [1.3955252961896318]
私たちは、このプロセスを大幅に自動化する可能性を秘めた、新しいタイプの開発ツールに基づいたビジョンを提唱しました。
主要なアイデアは、開発者がすでに記述したコードだけでなく、開発者が次に達成しようとしているタスクの意図も考慮して、コードの自動補完ツールを適用することである。
我々は、自然言語誘導プログラミングの完成を促進するために、このコードを自然言語意図で豊かにするプラクティスを、このプラクティスと呼んでいる。
論文 参考訳(メタデータ) (2021-08-11T13:06:33Z) - Incorporating External Knowledge through Pre-training for Natural
Language to Code Generation [97.97049697457425]
オープンドメインコード生成は、自然言語(NL)の意図から汎用プログラミング言語でコードを生成することを目的としている。
オンラインプログラミングQAフォーラムStackOverflowとプログラミング言語APIドキュメントからNL-codeペアを自動的にマイニングする。
評価の結果,2つのソースとデータ拡張と検索ベースデータ再サンプリングを組み合わせることで,コード生成テストベッドCoNaLa上でのBLEUスコアが最大2.2%向上することがわかった。
論文 参考訳(メタデータ) (2020-04-20T01:45:27Z) - OPFython: A Python-Inspired Optimum-Path Forest Classifier [68.8204255655161]
本稿では,OPFythonと表記されるPythonベースのOptimum-Path Forestフレームワークを提案する。
OPFythonはPythonベースのライブラリなので、C言語よりもフレンドリーな環境とプロトタイピングの作業スペースを提供する。
論文 参考訳(メタデータ) (2020-01-28T15:46:19Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。