論文の概要: Statement-based Memory for Neural Source Code Summarization
- arxiv url: http://arxiv.org/abs/2307.11709v1
- Date: Fri, 21 Jul 2023 17:04:39 GMT
- ステータス: 処理完了
- システム内更新日: 2023-07-24 11:54:42.738654
- Title: Statement-based Memory for Neural Source Code Summarization
- Title(参考訳): ニューラルソースコード要約のための文ベースメモリ
- Authors: Aakash Bansal, Siyuan Jiang, Sakib Haque, and Collin McMillan
- Abstract要約: コードの要約は、プログラマのためのソフトウェアドキュメントの基盤となる。
近年,自動コード要約技術の研究のフロンティアとして,ニューラルネットワークの要約が登場している。
本稿では,文ベースのメモリエンコーダを提案し,学習中のフローの重要な要素を学習し,文ベースのサブルーチン表現を実現する。
- 参考スコア(独自算出の注目度): 4.024850952459758
- License: http://creativecommons.org/licenses/by-nc-nd/4.0/
- Abstract: Source code summarization is the task of writing natural language
descriptions of source code behavior. Code summarization underpins software
documentation for programmers. Short descriptions of code help programmers
understand the program quickly without having to read the code itself. Lately,
neural source code summarization has emerged as the frontier of research into
automated code summarization techniques. By far the most popular targets for
summarization are program subroutines. The idea, in a nutshell, is to train an
encoder-decoder neural architecture using large sets of examples of subroutines
extracted from code repositories. The encoder represents the code and the
decoder represents the summary. However, most current approaches attempt to
treat the subroutine as a single unit. For example, by taking the entire
subroutine as input to a Transformer or RNN-based encoder. But code behavior
tends to depend on the flow from statement to statement. Normally dynamic
analysis may shed light on this flow, but dynamic analysis on hundreds of
thousands of examples in large datasets is not practical. In this paper, we
present a statement-based memory encoder that learns the important elements of
flow during training, leading to a statement-based subroutine representation
without the need for dynamic analysis. We implement our encoder for code
summarization and demonstrate a significant improvement over the
state-of-the-art.
- Abstract(参考訳): ソースコードの要約は、ソースコードの振る舞いを自然言語で記述する作業である。
コードの要約はプログラマのソフトウェアドキュメントを支える。
コードに関する短い記述は、プログラマがコード自体を読まずにプログラムを素早く理解するのに役立ちます。
近年,自動コード要約技術の研究のフロンティアとして,ニューラルネットワークの要約が登場している。
要約の最も一般的なターゲットはプログラムサブルーチンである。
基本的には、コードリポジトリから抽出されたサブルーチンの大規模な例セットを使用して、エンコーダ-デコーダニューラルネットワークアーキテクチャをトレーニングすることだ。
エンコーダはコードを表し、デコーダはサマリを表す。
しかし、現在のほとんどのアプローチはサブルーチンを単一の単位として扱う。
例えば、サブルーチン全体をtransformerまたはrnnベースのエンコーダへの入力として取得する。
しかし、コードの振る舞いはステートメントからステートメントへのフローに依存します。
通常、動的解析はこの流れに光を当てるが、大規模なデータセットにおける数十万の例の動的解析は実用的ではない。
本稿では,学習中のフローの重要な要素を学習し,動的解析を必要とせずに文ベースのサブルーチン表現を実現する文ベースのメモリエンコーダを提案する。
コード要約のためのエンコーダを実装し、最先端技術に対する大幅な改善を示す。
関連論文リスト
- ESALE: Enhancing Code-Summary Alignment Learning for Source Code Summarization [21.886950861445122]
コード要約は、与えられたコードスニペットに対して簡潔な自然言語要約を自動的に生成することを目的としている。
本稿では,要約に焦点をあてたタスクに基づいて,コード要約を改善する新しい手法を提案する。
論文 参考訳(メタデータ) (2024-07-01T03:06:51Z) - SparseCoder: Identifier-Aware Sparse Transformer for File-Level Code
Summarization [51.67317895094664]
本稿では,大規模なソースコードプロジェクトの理解と維持を支援するファイルレベルのコード要約について検討する。
長いコードシーケンスを効果的に処理するための識別子対応スパース変換器であるSparseCoderを提案する。
論文 参考訳(メタデータ) (2024-01-26T09:23:27Z) - Revisiting File Context for Source Code Summarization [2.85386288555414]
典型的なユースケースは、APIドキュメントで使用するサブルーチンの短い要約を生成することだ。
コード要約に関する現在の研究の核心はエンコーダ・デコーダ・ニューラルアーキテクチャである。
本稿では,コード要約における「ファイルコンテキスト」の考え方を再考する。
論文 参考訳(メタデータ) (2023-09-05T15:44:46Z) - Code Execution with Pre-trained Language Models [88.04688617516827]
コードインテリジェンスのトレーニング済みモデルのほとんどは実行トレースを無視しており、ソースコードと構文構造のみに依存している。
我々は,大規模かつ現実的なPythonデータセットとコード実行タスクを作成するために,突然変異に基づくデータ拡張手法を開発した。
次に、コード実行事前学習とカリキュラム学習を活用して意味理解を強化するトランスフォーマーモデルであるCodeExecutorを提案する。
論文 参考訳(メタデータ) (2023-05-08T10:00:05Z) - Outline, Then Details: Syntactically Guided Coarse-To-Fine Code
Generation [61.50286000143233]
ChainCoderは、Pythonコードを段階的に生成するプログラム合成言語モデルである。
自然言語記述と構文的に整合したI/Oデータサンプルを共同で符号化するために、カスタマイズされたトランスフォーマーアーキテクチャを利用する。
論文 参考訳(メタデータ) (2023-04-28T01:47:09Z) - Soft-Labeled Contrastive Pre-training for Function-level Code
Representation [127.71430696347174]
textbfSoft-labeled contrastive pre-training framework with two positive sample construction method。
大規模コードコーパスにおけるコード間の関連性を考慮すると、ソフトラベル付きコントラスト付き事前学習は、きめ細かいソフトラベルを得ることができる。
SCodeRは、7つのデータセットで4つのコード関連タスクに対して、最先端のパフォーマンスを新たに達成する。
論文 参考訳(メタデータ) (2022-10-18T05:17:37Z) - StructCoder: Structure-Aware Transformer for Code Generation [13.797842927671846]
本稿では、構文とデータフローの両方をモデル化し、生成されたコードの品質を向上させる構造対応トランスフォーマーデコーダを提案する。
提案したStructCoderモデルは、コード翻訳およびテキスト・トゥ・コード生成タスクにおける最先端のパフォーマンスを実現する。
論文 参考訳(メタデータ) (2022-06-10T17:26:31Z) - 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) - Project-Level Encoding for Neural Source Code Summarization of
Subroutines [6.939768185086755]
コード要約のモデルを改善するプロジェクトレベルのエンコーダを提案する。
我々はこの表現を用いて、最先端のニューラルネットワーク要約技術のエンコーダを強化する。
論文 参考訳(メタデータ) (2021-03-22T06:01:07Z) - A Transformer-based Approach for Source Code Summarization [86.08359401867577]
コードトークン間のペア関係をモデル化することにより,要約のためのコード表現を学習する。
アプローチは単純であるにもかかわらず、最先端技術よりもかなりの差があることが示される。
論文 参考訳(メタデータ) (2020-05-01T23:29:36Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。