論文の概要: Boosting Source Code Learning with Data Augmentation: An Empirical Study
- arxiv url: http://arxiv.org/abs/2303.06808v1
- Date: Mon, 13 Mar 2023 01:47:05 GMT
- ステータス: 処理完了
- システム内更新日: 2023-03-14 16:50:04.548079
- Title: Boosting Source Code Learning with Data Augmentation: An Empirical Study
- Title(参考訳): データ拡張によるソースコード学習の促進:実証的研究
- Authors: Zeming Dong, Qiang Hu, Yuejun Guo, Zhenya Zhang, Maxime Cordy, Mike
Papadakis, Yves Le Traon, Jianjun Zhao
- Abstract要約: 本研究では,もともとテキストやグラフに用いたデータ拡張手法が,ソースコード学習のトレーニング品質向上に有効かどうかを検討する。
この結果から,より正確でロバストなソースコード学習モデルを生成するデータ拡張手法が同定された。
- 参考スコア(独自算出の注目度): 16.49710700412084
- License: http://arxiv.org/licenses/nonexclusive-distrib/1.0/
- Abstract: The next era of program understanding is being propelled by the use of
machine learning to solve software problems. Recent studies have shown
surprising results of source code learning, which applies deep neural networks
(DNNs) to various critical software tasks, e.g., bug detection and clone
detection. This success can be greatly attributed to the utilization of massive
high-quality training data, and in practice, data augmentation, which is a
technique used to produce additional training data, has been widely adopted in
various domains, such as computer vision. However, in source code learning,
data augmentation has not been extensively studied, and existing practice is
limited to simple syntax-preserved methods, such as code refactoring.
Essentially, source code is often represented in two ways, namely, sequentially
as text data and structurally as graph data, when it is used as training data
in source code learning. Inspired by these analogy relations, we take an early
step to investigate whether data augmentation methods that are originally used
for text and graphs are effective in improving the training quality of source
code learning. To that end, we first collect and categorize data augmentation
methods in the literature. Second, we conduct a comprehensive empirical study
on four critical tasks and 11 DNN architectures to explore the effectiveness of
12 data augmentation methods (including code refactoring and 11 other methods
for text and graph data). Our results identify the data augmentation methods
that can produce more accurate and robust models for source code learning,
including those based on mixup (e.g., SenMixup for texts and Manifold-Mixup for
graphs), and those that slightly break the syntax of source code (e.g., random
swap and random deletion for texts).
- Abstract(参考訳): プログラム理解の次の時代は、ソフトウェア問題を解決するために機械学習を使用することによって推進されている。
近年の研究では、ディープニューラルネットワーク(DNN)を様々な重要なソフトウェアタスク、例えばバグ検出やクローン検出に適用するソースコード学習の驚くべき結果が示されている。
この成功は、大量の高品質なトレーニングデータの利用に大きく影響しており、実際には、追加のトレーニングデータを生成する技術であるデータ拡張は、コンピュータビジョンのような様々な領域で広く採用されている。
しかし、ソースコード学習においては、データ拡張は広く研究されておらず、既存のプラクティスはコードリファクタリングのような単純な構文保存メソッドに限られている。
基本的に、ソースコードは、ソースコード学習でトレーニングデータとして使用される場合、テキストデータとして順次、グラフデータとして構造的に2つの方法で表現されることが多い。
このようなアナロジー関係に触発されて,テキストやグラフにもともと使用されるデータ拡張手法が,ソースコード学習のトレーニング品質向上に有効であるかどうかを早期に検討する。
そこで我々はまず,文献におけるデータ拡張手法の収集と分類を行った。
次に、4つの重要なタスクと11のDNNアーキテクチャに関する総合的な実証的研究を行い、12のデータ拡張手法(コードリファクタリングや11のテキストおよびグラフデータを含む)の有効性について検討する。
この結果から、ミックスアップ(テキストのSenMixupやグラフのManifold-Mixupなど)や、ソースコードの構文(テキストのランダムスワップやランダム削除など)をわずかに損なうものなど、ソースコード学習のためのより正確で堅牢なモデルを生成することのできるデータ拡張手法を特定した。
関連論文リスト
- Contextualized Data-Wrangling Code Generation in Computational Notebooks [131.26365849822932]
我々は、マルチモーダルなコンテキスト依存を明確にしたデータラングリングコード生成例をマイニングするために、CoCoMineという自動アプローチを提案する。
コンテクスト化されたデータラングリングコード生成のための58,221のサンプルを含むデータセットであるCoCoNoteをNotebooksで構築する。
実験結果は、データラングリングコード生成にデータコンテキストを組み込むことの重要性を示す。
論文 参考訳(メタデータ) (2024-09-20T14:49:51Z) - Enhancing Source Code Representations for Deep Learning with Static
Analysis [10.222207222039048]
本稿では,静的解析とバグレポートやデザインパターンなどのコンテキストを,ディープラーニングモデルのためのソースコード表現に統合する方法について検討する。
我々はASTNN(Abstract Syntax Tree-based Neural Network)法を用いて,バグレポートやデザインパターンから得られたコンテキスト情報を追加して拡張する。
提案手法はソースコードの表現と処理を改善し,タスク性能を向上させる。
論文 参考訳(メタデータ) (2024-02-14T20:17:04Z) - Source Code Data Augmentation for Deep Learning: A Survey [32.035973285175075]
ソースコードに対するデータ拡張に関する包括的調査を行う。
DAの品質を最適化するための一般的な戦略とテクニックを強調します。
今後の研究の課題と可能性について概説する。
論文 参考訳(メタデータ) (2023-05-31T14:47:44Z) - Exploring Representation-Level Augmentation for Code Search [50.94201167562845]
我々は、データ処理やトレーニングを必要としない表現レベルでデータ(コードとクエリの両方)を増強する拡張手法について検討する。
大規模公開データセット上で,最先端のコード検索モデルを用いた表現レベル向上手法を実験的に評価した。
論文 参考訳(メタデータ) (2022-10-21T22:47:37Z) - Enhancing Semantic Code Search with Multimodal Contrastive Learning and
Soft Data Augmentation [50.14232079160476]
コード検索のためのマルチモーダルコントラスト学習とソフトデータ拡張を用いた新しい手法を提案する。
我々は,6つのプログラミング言語を用いた大規模データセットにおけるアプローチの有効性を評価するために,広範囲な実験を行った。
論文 参考訳(メタデータ) (2022-04-07T08:49:27Z) - Lexically Aware Semi-Supervised Learning for OCR Post-Correction [90.54336622024299]
世界中の多くの言語における既存の言語データの多くは、非デジタル化された書籍や文書に閉じ込められている。
従来の研究は、あまり良くない言語を認識するためのニューラル・ポスト・コレクション法の有用性を実証してきた。
そこで本研究では,生画像を利用した半教師付き学習手法を提案する。
論文 参考訳(メタデータ) (2021-11-04T04:39:02Z) - Improved Code Summarization via a Graph Neural Network [96.03715569092523]
一般に、ソースコード要約技術はソースコードを入力として使用し、自然言語記述を出力する。
これらの要約を生成するために、ASTのデフォルト構造によくマッチするグラフベースのニューラルアーキテクチャを使用するアプローチを提案する。
論文 参考訳(メタデータ) (2020-04-06T17:36:42Z) - Auto-Encoding Twin-Bottleneck Hashing [141.5378966676885]
本稿では,効率よく適応的なコード駆動グラフを提案する。
自動エンコーダのコンテキストでデコードすることで更新される。
ベンチマークデータセットの実験は、最先端のハッシュ手法よりもフレームワークの方が優れていることを明らかに示しています。
論文 参考訳(メタデータ) (2020-02-27T05:58:12Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。