論文の概要: CCBERT: Self-Supervised Code Change Representation Learning
- arxiv url: http://arxiv.org/abs/2309.15474v1
- Date: Wed, 27 Sep 2023 08:17:03 GMT
- ステータス: 処理完了
- システム内更新日: 2023-10-23 06:18:53.576854
- Title: CCBERT: Self-Supervised Code Change Representation Learning
- Title(参考訳): CCBERT: 自己監督型コード変更表現学習
- Authors: Xin Zhou, Bowen Xu, DongGyun Han, Zhou Yang, Junda He and David Lo
- Abstract要約: CCBERTは新しいTransformerベースの事前トレーニングモデルで、巨大なラベルなしコード変更を含む大規模なデータセットに基づいて、コード変更の汎用表現を学ぶ。
実験の結果,CCBERT は CC2Vec や,下流タスクの最先端アプローチを7.7%-14.0% 上回っていることがわかった。
- 参考スコア(独自算出の注目度): 14.097775709587475
- License: http://arxiv.org/licenses/nonexclusive-distrib/1.0/
- Abstract: Numerous code changes are made by developers in their daily work, and a
superior representation of code changes is desired for effective code change
analysis. Recently, Hoang et al. proposed CC2Vec, a neural network-based
approach that learns a distributed representation of code changes to capture
the semantic intent of the changes. Despite demonstrated effectiveness in
multiple tasks, CC2Vec has several limitations: 1) it considers only
coarse-grained information about code changes, and 2) it relies on log messages
rather than the self-contained content of the code changes. In this work, we
propose CCBERT (\underline{C}ode \underline{C}hange \underline{BERT}), a new
Transformer-based pre-trained model that learns a generic representation of
code changes based on a large-scale dataset containing massive unlabeled code
changes. CCBERT is pre-trained on four proposed self-supervised objectives that
are specialized for learning code change representations based on the contents
of code changes. CCBERT perceives fine-grained code changes at the token level
by learning from the old and new versions of the content, along with the edit
actions. Our experiments demonstrate that CCBERT significantly outperforms
CC2Vec or the state-of-the-art approaches of the downstream tasks by
7.7\%--14.0\% in terms of different metrics and tasks. CCBERT consistently
outperforms large pre-trained code models, such as CodeBERT, while requiring
6--10$\times$ less training time, 5--30$\times$ less inference time, and
7.9$\times$ less GPU memory.
- Abstract(参考訳): 日々の作業において、多くのコード変更が開発者によって行われ、効果的なコード変更分析には、コード変更の優れた表現が望まれます。
Hoang氏らは最近、変更の意味的な意図を捉えるために、コード変更の分散表現を学ぶニューラルネットワークベースのアプローチであるCC2Vecを提案した。
複数のタスクで有効性を示すにもかかわらず、CC2Vecにはいくつかの制限がある。
1)コード変更に関する粗い情報のみを考慮し、
2) コード変更の自己完結型コンテンツではなく、ログメッセージに依存します。
本研究では,大量のラベルのないコード変更を含む大規模データセットに基づいて,コード変更の汎用表現を学ぶ新しいトランスフォーマベースの事前学習モデルであるccbert (\underline{c}ode \underline{c}hange \underline{bert})を提案する。
CCBERTは、コード変更の内容に基づいたコード変更表現の学習に特化した、4つの自己指導型目標に基づいて事前訓練されている。
CCBERTは、古いバージョンと新しいバージョンのコンテンツと編集アクションから学習することで、トークンレベルでのきめ細かいコード変更を認識する。
実験の結果,CCBERT は CC2Vec や,下流タスクの最先端アプローチを,メトリクスやタスクの点で7.7 %--14.0 % で大幅に上回っていることがわかった。
CCBERTは、CodeBERTのような大規模な事前トレーニング済みのコードモデルよりも一貫して優れており、トレーニング時間が少ない6--10$\times$、5-30$\times$推論時間が少ない7.9$\times$GPUメモリを必要とする。
関連論文リスト
- ChangeGuard: Validating Code Changes via Pairwise Learning-Guided Execution [16.130469984234956]
ChangeGuardは、学習誘導型実行を使用して、修正された関数の実行動作を比較するアプローチである。
提案手法は,77.1%の精度で,69.5%のリコールで意味的変化を識別する。
論文 参考訳(メタデータ) (2024-10-21T15:13:32Z) - Let the Code LLM Edit Itself When You Edit the Code [50.46536185784169]
underlinetextbfPositional textbfIntegrity textbfEncoding (PIE)
PIEは、標準的な完全再計算手法に比べて計算オーバーヘッドを85%以上削減する。
その結果、PIEは計算オーバーヘッドを標準の完全再計算手法に比べて85%以上削減することを示した。
論文 参考訳(メタデータ) (2024-07-03T14:34:03Z) - TransformCode: A Contrastive Learning Framework for Code Embedding via Subtree Transformation [9.477734501499274]
コード埋め込みを対照的な学習方法で学習する新しいフレームワークであるTransformCodeを提案する。
我々のフレームワークはエンコーダに依存しない言語に依存しないので、どんなエンコーダモデルでも活用でき、どんなプログラミング言語でも扱える。
論文 参考訳(メタデータ) (2023-11-10T09:05:23Z) - LongCoder: A Long-Range Pre-trained Language Model for Code Completion [56.813974784131624]
LongCoderは自己アテンションにスライディングウィンドウ機構を採用し、グローバルアクセス可能なトークンを2種類導入している。
ブリッジトークンは入力シーケンス全体を通して挿入され、ローカル情報を集約し、グローバルな相互作用を促進する。
メモリトークンは、後で呼び出され、記憶する必要がある重要なステートメントをハイライトするために含まれます。
論文 参考訳(メタデータ) (2023-06-26T17:59:24Z) - Coeditor: Leveraging Contextual Changes for Multi-round Code Auto-editing [57.776971051512234]
本研究では,複数ラウンドのコードの自動編集設定について検討し,その内部の最近の変更に基づいて,コード領域への編集を予測することを目的とした。
我々のモデルであるCoeditorは、コード編集タスクに特化して設計された微調整言語モデルである。
単純化されたシングルラウンドのシングル編集タスクでは、Coeditor は GPT-3.5 と SOTA のオープンソースコード補完モデルを大幅に上回っている。
論文 参考訳(メタデータ) (2023-05-29T19:57:36Z) - CCT5: A Code-Change-Oriented Pre-Trained Model [14.225942520238936]
我々は、ソフトウェアメンテナンスにおける開発者のサポートを改善するために、コード変更用に特別に設計されたモデルを事前訓練することを提案する。
まず、1.5M以上のコード変更とコミットメッセージのペアデータを含む大規模なデータセットを収集します。
トレーニング済みのモデルであるCCT5を、コードの変更とコードレビュープロセスに特有の2つのタスクによって引き起こされる3つの広範囲に分散したタスクで微調整する。
論文 参考訳(メタデータ) (2023-05-18T07:55:37Z) - Towards Efficient Fine-tuning of Pre-trained Code Models: An
Experimental Study and Beyond [52.656743602538825]
微調整された事前訓練されたコードモデルは、大きな計算コストを発生させる。
我々は、レイヤーワイドで事前訓練された表現と、微調整中に符号化されたコード知識に何が起こるのかを実験的に検討する。
本稿では,レイヤ凍結により事前学習したコードモデルを効率的に微調整するTellyを提案する。
論文 参考訳(メタデータ) (2023-04-11T13:34:13Z) - CCRep: Learning Code Change Representations via Pre-Trained Code Model
and Query Back [8.721077261941236]
この研究は、CCRepという新しいコード変更表現学習手法を提案する。
CCRepは、さまざまな下流タスクのための機能ベクトルとして、コード変更をエンコードすることを学ぶ。
CCRepをコミットメッセージ生成、パッチの正当性評価、ジャスト・イン・タイム欠陥予測の3つのタスクに適用する。
論文 参考訳(メタデータ) (2023-02-08T07:43:55Z) - Contrastive Learning for Source Code with Structural and Functional
Properties [66.10710134948478]
本稿では,ソースコードの特徴に基づいて事前学習に焦点を当てた,新たな自己教師型モデルBOOSTを提案する。
私たちは、機能的に等価なコードを生成する自動化された構造誘導型コード変換アルゴリズムを採用しています。
私たちは、対照的な学習目標を通じて、機能的に等価なコードをより近く、異なるコードに近づける方法で、モデルをトレーニングします。
論文 参考訳(メタデータ) (2021-10-08T02:56:43Z) - Unsupervised Learning of General-Purpose Embeddings for Code Changes [6.652641137999891]
事前学習中にコード変更の埋め込みを得る手法を提案する。
コードの変更とコミットメッセージ生成という、2つの異なる下流タスクでそれらを評価します。
本モデルでは,完全編集シーケンスを用いたモデルの精度を5.9ポイント向上させる。
論文 参考訳(メタデータ) (2021-06-03T19:08:53Z) - GraphCodeBERT: Pre-training Code Representations with Data Flow [97.00641522327699]
本稿では,コード固有の構造を考慮したプログラミング言語の事前学習モデルであるGraphCodeBERTを提案する。
これは変数間の"where-the-value-comes-from"の関係をエンコードするコードのセマンティックレベルの構造です。
コード検索,クローン検出,コード翻訳,コード改良の4つのタスクにおいて,本モデルを評価する。
論文 参考訳(メタデータ) (2020-09-17T15:25:56Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。