論文の概要: Embedding API Dependency Graph for Neural Code Generation
- arxiv url: http://arxiv.org/abs/2103.15361v1
- Date: Mon, 29 Mar 2021 06:26:38 GMT
- ステータス: 処理完了
- システム内更新日: 2021-03-30 14:46:09.120476
- Title: Embedding API Dependency Graph for Neural Code Generation
- Title(参考訳): ニューラルネットワーク生成のためのAPI依存グラフの埋め込み
- Authors: Chen Lyu, Ruyun Wang, Hongyu Zhang, Hanwen Zhang, Songlin Hu
- Abstract要約: 本稿では,APIメソッド間の依存関係をAPI依存性グラフ(ADG)としてモデル化し,シーケンス・トゥ・シークエンスモデルに組み込む。
このように、デコーダは、グローバル構造依存性とテキストプログラム記述の両方を使用して、ターゲットコードを予測することができます。
提案手法は adg-seq2seq と呼ばれ, 既存の最先端手法よりも大幅に改善されている。
- 参考スコア(独自算出の注目度): 14.246659920310003
- License: http://arxiv.org/licenses/nonexclusive-distrib/1.0/
- Abstract: The problem of code generation from textual program descriptions has long
been viewed as a grand challenge in software engineering. In recent years, many
deep learning based approaches have been proposed, which can generate a
sequence of code from a sequence of textual program description. However, the
existing approaches ignore the global relationships among API methods, which
are important for understanding the usage of APIs. In this paper, we propose to
model the dependencies among API methods as an API dependency graph (ADG) and
incorporate the graph embedding into a sequence-to-sequence (Seq2Seq) model. In
addition to the existing encoder-decoder structure, a new module named
``embedder" is introduced. In this way, the decoder can utilize both global
structural dependencies and textual program description to predict the target
code. We conduct extensive code generation experiments on three public datasets
and in two programming languages (Python and Java). Our proposed approach,
called ADG-Seq2Seq, yields significant improvements over existing
state-of-the-art methods and maintains its performance as the length of the
target code increases. Extensive ablation tests show that the proposed ADG
embedding is effective and outperforms the baselines.
- Abstract(参考訳): テキストによるプログラム記述からコードを生成するという問題は、ソフトウェア工学における大きな課題と見なされてきた。
近年、テキストによるプログラム記述のシーケンスから一連のコードを生成できるディープラーニングベースのアプローチが数多く提案されている。
しかし、既存のアプローチはAPIの利用を理解する上で重要なAPIメソッド間のグローバルな関係を無視している。
本稿では,APIメソッド間の依存関係をAPI依存グラフ(ADG)としてモデル化し,シーケンシャル・ツー・シーケンス(Seq2Seq)モデルにグラフを組み込むことを提案する。
既存のエンコーダ-デコーダ構造に加えて、 ``embedder" という新しいモジュールが導入されている。
このようにして、デコーダは、ターゲットコードを予測するために、グローバル構造依存性とテキストプログラム記述の両方を利用することができる。
3つの公開データセットと2つのプログラミング言語(PythonとJava)でコード生成実験を行う。
提案手法は adg-seq2seq と呼ばれ,既存の最先端メソッドよりも大幅に改善され,対象コードの長さが増加するにつれて性能が維持される。
広範囲なアブレーション試験の結果,ADGの埋め込みは有効であり,ベースラインよりも優れていた。
関連論文リスト
- RepoGraph: Enhancing AI Software Engineering with Repository-level Code Graph [63.87660059104077]
RepoGraphは、現代のAIソフトウェアエンジニアリングソリューションのためのリポジトリレベルの構造を管理するプラグインモジュールである。
RepoGraphはすべてのシステムのパフォーマンスを大幅に向上させ、オープンソースフレームワークの間で新たな最先端技術を生み出している。
論文 参考訳(メタデータ) (2024-10-03T05:45:26Z) - A Comprehensive Framework for Evaluating API-oriented Code Generation in Large Language Models [14.665460257371164]
GitHub CopilotやChatGPTのような大規模言語モデル(LLM)は、コード生成の強力なツールとして登場した。
API指向コード生成におけるLLMの機能を評価するために設計されたフレームワークであるAutoAPIEvalを提案する。
論文 参考訳(メタデータ) (2024-09-23T17:22:09Z) - Are Human Rules Necessary? Generating Reusable APIs with CoT Reasoning and In-Context Learning [14.351476383642016]
そこで我々は,Stack OverflowコードスニペットのAPIzationを自動的に実行する,Code2APIという新しいアプローチを提案する。
Code2APIは、追加のモデルトレーニングや手作業のルールを必要としない。
他の外部ツールに頼ることなく、パーソナルコンピュータに簡単にデプロイできる。
論文 参考訳(メタデータ) (2024-05-06T14:22:17Z) - Comments as Natural Logic Pivots: Improve Code Generation via Comment Perspective [85.48043537327258]
本稿では, MANGO (comMents As Natural loGic pivOts) を提案する。
その結果、MANGOは強いベースラインに基づいてコードパス率を大幅に改善することがわかった。
論理的なコメントの復号化戦略の堅牢性は、考えの連鎖よりも顕著に高い。
論文 参考訳(メタデータ) (2024-04-11T08:30:46Z) - SparseCoder: Identifier-Aware Sparse Transformer for File-Level Code
Summarization [51.67317895094664]
本稿では,大規模なソースコードプロジェクトの理解と維持を支援するファイルレベルのコード要約について検討する。
長いコードシーケンスを効果的に処理するための識別子対応スパース変換器であるSparseCoderを提案する。
論文 参考訳(メタデータ) (2024-01-26T09:23:27Z) - APIContext2Com: Code Comment Generation by Incorporating Pre-Defined API
Documentation [0.0]
我々は、異なる複数のエンコーダのセットを持つセック-2-seqエンコーダ-デコーダニューラルネットワークモデルを導入し、異なる入力をターゲットコメントに変換する。
ランク付け機構も開発され,非形式的なAPIを除外して,CodeSearchNetからJavaデータセットを使用してアプローチを評価することができる。
論文 参考訳(メタデータ) (2023-03-03T00:38:01Z) - On the Effectiveness of Pretrained Models for API Learning [8.788509467038743]
開発者は、Excelファイルのパース、行ごとのテキストファイルの読み書きなど、特定の機能を実装するためにAPIを使うことが多い。
開発者は、より高速でクリーンな方法でアプリケーションを構築するために、自然言語クエリに基づいた自動API使用シーケンス生成の恩恵を受けることができる。
既存のアプローチでは、クエリが与えられたAPIシーケンスの検索や、RNNベースのエンコーダデコーダを使用してAPIシーケンスを生成するために、情報検索モデルを使用している。
論文 参考訳(メタデータ) (2022-04-05T20:33:24Z) - GraphSearchNet: Enhancing GNNs via Capturing Global Dependency for
Semantic Code Search [15.687959123626003]
我々は、効率よく正確なソースコード検索を可能にする新しいニューラルネットワークフレームワーク、GraphSearchNetを設計する。
具体的には、BGGNNを用いてソースコードとクエリを2つのグラフにエンコードし、そのグラフの局所構造情報をキャプチャする。
JavaとPythonのデータセットでの実験は、GraphSearchNetが現在の最先端の作業よりもかなりのマージンで優れていることを示している。
論文 参考訳(メタデータ) (2021-11-04T07:38:35Z) - GraphCodeBERT: Pre-training Code Representations with Data Flow [97.00641522327699]
本稿では,コード固有の構造を考慮したプログラミング言語の事前学習モデルであるGraphCodeBERTを提案する。
これは変数間の"where-the-value-comes-from"の関係をエンコードするコードのセマンティックレベルの構造です。
コード検索,クローン検出,コード翻訳,コード改良の4つのタスクにおいて,本モデルを評価する。
論文 参考訳(メタデータ) (2020-09-17T15:25:56Z) - A Transformer-based Approach for Source Code Summarization [86.08359401867577]
コードトークン間のペア関係をモデル化することにより,要約のためのコード表現を学習する。
アプローチは単純であるにもかかわらず、最先端技術よりもかなりの差があることが示される。
論文 参考訳(メタデータ) (2020-05-01T23:29:36Z) - Improved Code Summarization via a Graph Neural Network [96.03715569092523]
一般に、ソースコード要約技術はソースコードを入力として使用し、自然言語記述を出力する。
これらの要約を生成するために、ASTのデフォルト構造によくマッチするグラフベースのニューラルアーキテクチャを使用するアプローチを提案する。
論文 参考訳(メタデータ) (2020-04-06T17:36:42Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。