論文の概要: StructCoder: Structure-Aware Transformer for Code Generation
- arxiv url: http://arxiv.org/abs/2206.05239v1
- Date: Fri, 10 Jun 2022 17:26:31 GMT
- ステータス: 処理完了
- システム内更新日: 2022-06-13 16:06:58.170732
- Title: StructCoder: Structure-Aware Transformer for Code Generation
- Title(参考訳): StructCoder:コード生成のための構造対応トランス
- Authors: Sindhu Tipirneni, Ming Zhu, Chandan K. Reddy
- Abstract要約: 生成されたコードの品質を向上させる構造対応トランスフォーマーデコーダを提案する。
提案したStructCoderモデルは、コード翻訳およびテキスト・トゥ・コード生成タスクにおける最先端のパフォーマンスを実現する。
- 参考スコア(独自算出の注目度): 11.418091479176082
- License: http://creativecommons.org/licenses/by-nc-nd/4.0/
- Abstract: There has been a recent surge of interest in automating software engineering
tasks using deep learning. This work addresses the problem of code generation
where the goal is to generate target code given source code in a different
language or a natural language description. Most of the state-of-the-art deep
learning models for code generation use training strategies that are primarily
designed for natural language. However, understanding and generating code
requires a more rigorous comprehension of the code syntax and semantics. With
this motivation, we develop an encoder-decoder Transformer model where both the
encoder and decoder are trained to recognize the syntax and data flow in the
source and target codes, respectively. We not only make the encoder
structure-aware by leveraging the source code's syntax tree and data flow
graph, but we also ensure that our decoder preserves the syntax and data flow
of the target code by introducing two auxiliary tasks: AST (Abstract Syntax
Tree) paths prediction and data flow prediction. To the best of our knowledge,
this is the first work to introduce a structure-aware Transformer decoder to
enhance the quality of generated code by modeling target syntax and data flow.
The proposed StructCoder model achieves state-of-the-art performance on code
translation and text-to-code generation tasks in the CodeXGLUE benchmark.
- Abstract(参考訳): 近年,ディープラーニングによるソフトウェアエンジニアリングタスクの自動化に対する関心が高まっている。
この作業は、異なる言語や自然言語記述で与えられたソースコードをターゲットとするコードを生成することを目標とするコード生成の問題に対処する。
コード生成のための最先端のディープラーニングモデルのほとんどは、主に自然言語用に設計されたトレーニング戦略を使用する。
しかし、コードの理解と生成には、コードの構文とセマンティクスをより厳密に理解する必要がある。
このモチベーションにより、エンコーダとデコーダの両方が、それぞれソースコードとターゲットコード内の構文とデータフローを認識するように訓練されるエンコーダ-デコーダトランスフォーマモデルを開発した。
ソースコードの構文木とデータフローグラフを活用することでエンコーダの構造を意識するだけでなく、AST(Abstract Syntax Tree)パスの予測とデータフロー予測という2つの補助的なタスクを導入することで、デコーダがターゲットコードの構文とデータフローを保存することを保証する。
我々の知る限りでは、ターゲット構文とデータフローをモデル化して生成されたコードの品質を向上させる構造対応トランスフォーマーデコーダを導入する最初の試みである。
提案したStructCoderモデルは,CodeXGLUEベンチマークにおいて,コード翻訳およびテキスト・ツー・コード生成タスクにおける最先端のパフォーマンスを実現する。
関連論文リスト
- SparseCoder: Identifier-Aware Sparse Transformer for File-Level Code
Summarization [51.67317895094664]
本稿では,大規模なソースコードプロジェクトの理解と維持を支援するファイルレベルのコード要約について検討する。
長いコードシーケンスを効果的に処理するための識別子対応スパース変換器であるSparseCoderを提案する。
論文 参考訳(メタデータ) (2024-01-26T09:23:27Z) - Statement-based Memory for Neural Source Code Summarization [4.024850952459758]
コードの要約は、プログラマのためのソフトウェアドキュメントの基盤となる。
近年,自動コード要約技術の研究のフロンティアとして,ニューラルネットワークの要約が登場している。
本稿では,文ベースのメモリエンコーダを提案し,学習中のフローの重要な要素を学習し,文ベースのサブルーチン表現を実現する。
論文 参考訳(メタデータ) (2023-07-21T17:04:39Z) - Outline, Then Details: Syntactically Guided Coarse-To-Fine Code
Generation [61.50286000143233]
ChainCoderは、Pythonコードを段階的に生成するプログラム合成言語モデルである。
自然言語記述と構文的に整合したI/Oデータサンプルを共同で符号化するために、カスタマイズされたトランスフォーマーアーキテクチャを利用する。
論文 参考訳(メタデータ) (2023-04-28T01:47:09Z) - Knowledge Transfer for Pseudo-code Generation from Low Resource
Programming Language [13.716669765394293]
我々は、並列コード-擬似コードデータを用いて、高リソースPL(C++)で訓練されたコード-擬似コードニューラルモデルによって得られた知識の伝達に焦点をあてる。
後方翻訳により生成されたC符号の成功率を23.27%向上させる。
論文 参考訳(メタデータ) (2023-03-16T03:38:08Z) - GypSum: Learning Hybrid Representations for Code Summarization [21.701127410434914]
GypSumは、グラフアテンションニューラルネットワークと事前学習されたプログラミングと自然言語モデルを使用してハイブリッド表現を学習する、新しいディープラーニングモデルである。
本稿では,トランスフォーマーデコーダのエンコーダ-デコーダサブレイヤを変更して表現を融合させ,要約生成を容易にするデュアルコピー機構を提案する。
論文 参考訳(メタデータ) (2022-04-26T07:44:49Z) - ReACC: A Retrieval-Augmented Code Completion Framework [53.49707123661763]
本稿では,語彙のコピーと類似したセマンティクスを持つコード参照の両方を検索により活用する検索拡張コード補完フレームワークを提案する。
我々は,Python および Java プログラミング言語のコード補完タスクにおけるアプローチを評価し,CodeXGLUE ベンチマークで最先端のパフォーマンスを実現する。
論文 参考訳(メタデータ) (2022-03-15T08:25:08Z) - UniXcoder: Unified Cross-Modal Pre-training for Code Representation [65.6846553962117]
プログラミング言語のためのクロスモーダル事前学習モデルUniXcoderを提案する。
木の構造情報を全て保持するシーケンス構造でASTを変換する1対1のマッピング手法を提案する。
我々は,UniXcoderを9つのデータセット上で5つのコード関連タスクで評価する。
論文 参考訳(メタデータ) (2022-03-08T04:48:07Z) - Contrastive Learning for Source Code with Structural and Functional
Properties [66.10710134948478]
本稿では,ソースコードの特徴に基づいて事前学習に焦点を当てた,新たな自己教師型モデルBOOSTを提案する。
私たちは、機能的に等価なコードを生成する自動化された構造誘導型コード変換アルゴリズムを採用しています。
私たちは、対照的な学習目標を通じて、機能的に等価なコードをより近く、異なるコードに近づける方法で、モデルをトレーニングします。
論文 参考訳(メタデータ) (2021-10-08T02:56:43Z) - Project-Level Encoding for Neural Source Code Summarization of
Subroutines [6.939768185086755]
コード要約のモデルを改善するプロジェクトレベルのエンコーダを提案する。
我々はこの表現を用いて、最先端のニューラルネットワーク要約技術のエンコーダを強化する。
論文 参考訳(メタデータ) (2021-03-22T06:01:07Z) - GraphCodeBERT: Pre-training Code Representations with Data Flow [97.00641522327699]
本稿では,コード固有の構造を考慮したプログラミング言語の事前学習モデルであるGraphCodeBERTを提案する。
これは変数間の"where-the-value-comes-from"の関係をエンコードするコードのセマンティックレベルの構造です。
コード検索,クローン検出,コード翻訳,コード改良の4つのタスクにおいて,本モデルを評価する。
論文 参考訳(メタデータ) (2020-09-17T15:25:56Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。