GAP-Gen: Guided Automatic Python Code Generation

要約

タイトル:GAP-Gen: Guided Automatic Python Code Generation(Guided Automatic Python Code GenerationのためのGAP-Gen)

要約:

– 自然言語記述からの自動コード生成はソフトウェア開発プロセスで非常に有益である。
– 本研究では、Pythonの構文制約と意味制約に基づくGAP-Genというガイド付け自動Pythonコード生成方法を提案する。
– Pythonの構文制約をAbstract Syntax Tree(AST)の簡易版であるSyntax-Flowの形で導入し、Pythonコードの重要な構文情報を維持しながら、ASTのサイズと複雑性を低減する。
– さらに、Variable-Flowを導入し、コード全体で変数と関数名を一貫して抽象化する。
– GAP-Genは、Transformerベースの言語モデルT5とCodeT5を、CodeSearchNet、CodeSearchNet AdvTest、EdinburghNLPのCode-Docstring CorpusなどのCode-to-Docstringデータセットを使用してfinetuningし、計算要件を削減しながら高い生成性能を維持する。
– 実験の結果、GAP-Genは、以前の研究よりも自動Pythonコード生成タスクで優れた結果を示す。

要約(オリジナル)

Automatic code generation from natural language descriptions can be highly beneficial during the process of software development. In this work, we propose GAP-Gen, a Guided Automatic Python Code Generation method based on Python syntactic constraints and semantic constraints. We first introduce Python syntactic constraints in the form of Syntax-Flow, which is a simplified version of Abstract Syntax Tree (AST) reducing the size and high complexity of Abstract Syntax Tree but maintaining crucial syntactic information of Python code. In addition to Syntax-Flow, we introduce Variable-Flow which abstracts variable and function names consistently through out the code. In our work, rather than pretraining, we focus on modifying the finetuning process which reduces computational requirements but retains high generation performance on automatic Python code generation task. GAP-Gen fine-tunes the transformer based language models T5 and CodeT5 using the Code-to-Docstring datasets CodeSearchNet, CodeSearchNet AdvTest and Code-Docstring Corpus from EdinburghNLP. Our experiments show that GAP-Gen achieves better results on automatic Python code generation task than previous works.

arxiv情報

著者 Junchen Zhao,Yurun Song,Junlin Wang,Ian G. Harris
発行日 2023-05-10 01:01:43+00:00
arxivサイト arxiv_id(pdf)

提供元, 利用サービス

arxiv.jp, OpenAI

カテゴリー: cs.CL, cs.LG, cs.PL, cs.SE パーマリンク