論文の概要: MGS3: A Multi-Granularity Self-Supervised Code Search Framework
- arxiv url: http://arxiv.org/abs/2505.24274v1
- Date: Fri, 30 May 2025 06:49:39 GMT
- ステータス: 翻訳完了
- システム内更新日: 2025-06-02 19:47:52.814068
- Title: MGS3: A Multi-Granularity Self-Supervised Code Search Framework
- Title(参考訳): MGS3: マルチグラニュラリティの自己監督型コード検索フレームワーク
- Authors: Rui Li, Junfeng Kang, Qi Liu, Liyang He, Zheng Zhang, Yunhao Sha, Linbo Zhu, Zhenya Huang,
- Abstract要約: マルチグラニュラリティ自己監督型コントラスト学習コード検索フレームワーク(MGS$3$)について紹介する。
まず、MGS$3$ は Supervised Multi-Granularity Representation Module (HMGR) を特徴としている。
様々な粒度のコード検索ベンチマーク実験を行い、複数の粒度のコード検索タスクにおいて優れた性能を示すことを示す。
- 参考スコア(独自算出の注目度): 22.214324677526132
- License: http://creativecommons.org/licenses/by/4.0/
- Abstract: In the pursuit of enhancing software reusability and developer productivity, code search has emerged as a key area, aimed at retrieving code snippets relevant to functionalities based on natural language queries. Despite significant progress in self-supervised code pre-training utilizing the vast amount of code data in repositories, existing methods have primarily focused on leveraging contrastive learning to align natural language with function-level code snippets. These studies have overlooked the abundance of fine-grained (such as block-level and statement-level) code snippets prevalent within the function-level code snippets, which results in suboptimal performance across all levels of granularity. To address this problem, we first construct a multi-granularity code search dataset called MGCodeSearchNet, which contains 536K+ pairs of natural language and code snippets. Subsequently, we introduce a novel Multi-Granularity Self-Supervised contrastive learning code Search framework (MGS$^{3}$}). First, MGS$^{3}$ features a Hierarchical Multi-Granularity Representation module (HMGR), which leverages syntactic structural relationships for hierarchical representation and aggregates fine-grained information into coarser-grained representations. Then, during the contrastive learning phase, we endeavor to construct positive samples of the same granularity for fine-grained code, and introduce in-function negative samples for fine-grained code. Finally, we conduct extensive experiments on code search benchmarks across various granularities, demonstrating that the framework exhibits outstanding performance in code search tasks of multiple granularities. These experiments also showcase its model-agnostic nature and compatibility with existing pre-trained code representation models.
- Abstract(参考訳): ソフトウェアの再利用性と開発者の生産性の向上を追求する中で、自然言語クエリに基づいた機能に関するコードスニペットの検索を目的とした、コード検索が重要な領域として登場した。
リポジトリ内の大量のコードデータを活用する自己教師型コード事前トレーニングの大幅な進歩にもかかわらず、既存のメソッドは主に、自然言語と関数レベルのコードスニペットを整合させるために、対照的な学習を活用することに重点を置いている。
これらの研究は、関数レベルのコードスニペットで広く使われている粒度(ブロックレベルやステートメントレベルなど)のコードスニペットの多さを見落としており、その結果、すべてのレベルの粒度に対して、最適以下のパフォーマンスが得られる。
この問題に対処するため,まず536K以上の自然言語とコードスニペットを含むMGCodeSearchNetという多言語コード検索データセットを構築した。
次に,多言語自己監督型コントラスト学習コード検索フレームワーク(MGS$^{3}$})を紹介する。
まず、MGS$^{3}$は階層的多角性表現モジュール(HMGR)を特徴とし、階層的表現の構文的構造的関係を利用して、きめ細かい情報を粗粒度表現に集約する。
そして, 対照的な学習段階において, 同じ粒度の正のサンプルをきめ細かなコードに対して構築し, 不機能な負のサンプルをきめ細かなコードに対して導入する。
最後に, 様々な粒度のコード検索ベンチマーク実験を行い, 複数の粒度のコード検索タスクにおいて, 優れた性能を示すことを示す。
これらの実験はまた、モデルに依存しない性質と既存の事前訓練されたコード表現モデルとの互換性を示す。
関連論文リスト
- CodeXEmbed: A Generalist Embedding Model Family for Multiligual and Multi-task Code Retrieval [103.116634967815]
CodeXEmbedは400Mから7Bパラメータの大規模なコード埋め込みモデルのファミリーである。
我々の新しいトレーニングパイプラインは、複数のプログラミング言語を統合し、様々なコード関連タスクを共通の検索フレームワークに変換する。
私たちの7Bモデルは、コード検索において新しい最先端(SOTA)を設定し、以前の主要なモデルであるVoyage-CodeをCoIRベンチマークで20%以上上回っています。
論文 参考訳(メタデータ) (2024-11-19T16:54:45Z) - CodeRAG-Bench: Can Retrieval Augment Code Generation? [78.37076502395699]
検索拡張生成を用いたコード生成の系統的,大規模な解析を行う。
まず、コード生成タスクの3つのカテゴリを含む総合的な評価ベンチマークであるCodeRAG-Benchをキュレートする。
CodeRAG-Bench上のトップパフォーマンスモデルについて、1つまたは複数のソースから検索したコンテキストを提供することにより検討する。
論文 参考訳(メタデータ) (2024-06-20T16:59:52Z) - Prompt-based Code Completion via Multi-Retrieval Augmented Generation [15.233727939816388]
ProCCは、プロンプトエンジニアリングとコンテキスト多武装バンディットアルゴリズムを活用したコード補完フレームワークである。
ProCCは、収集したオープンソースベンチマークスイートにおいて、最先端のコード補完テクニックを8.6%上回ります。
ProCCはまた, プラグ・アンド・プレイ方式で微調整技術を増強し, 実験した微調整モデルよりも5.6%改善した。
論文 参考訳(メタデータ) (2024-05-13T07:56:15Z) - Rewriting the Code: A Simple Method for Large Language Model Augmented Code Search [7.822427053078387]
Generation-Augmented Retrieval (GAR)フレームワークは、クエリを拡張するための例のコードスニペットを生成する。
本稿では、forスタイルの正規化内でコード(ReCo)を書き換える、シンプルで効果的な方法を提案する。
コードスタイル類似度(Code Style similarity)は、コード内のスタイリスティック類似度を定量化するための最初のメートル法である。
論文 参考訳(メタデータ) (2024-01-09T12:12:50Z) - Enhancing Semantic Code Search with Multimodal Contrastive Learning and
Soft Data Augmentation [50.14232079160476]
コード検索のためのマルチモーダルコントラスト学習とソフトデータ拡張を用いた新しい手法を提案する。
我々は,6つのプログラミング言語を用いた大規模データセットにおけるアプローチの有効性を評価するために,広範囲な実験を行った。
論文 参考訳(メタデータ) (2022-04-07T08:49:27Z) - Deep Graph Matching and Searching for Semantic Code Retrieval [76.51445515611469]
本稿では,グラフニューラルネットワークに基づくエンドツーエンドのディープグラフマッチングと探索モデルを提案する。
まず、自然言語クエリテキストとプログラミング言語のコードスニペットをグラフ構造化データで表現する。
特に、DGMSは、個々のクエリテキストやコードスニペットのより構造的な情報をキャプチャするだけでなく、それらの微妙な類似性も学習する。
論文 参考訳(メタデータ) (2020-10-24T14:16:50Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。