論文の概要: You Augment Me: Exploring ChatGPT-based Data Augmentation for Semantic Code Search
- arxiv url: http://arxiv.org/abs/2408.05542v2
- Date: Sat, 17 Aug 2024 11:18:16 GMT
- ステータス: 処理完了
- システム内更新日: 2024-08-20 23:45:42.818527
- Title: You Augment Me: Exploring ChatGPT-based Data Augmentation for Semantic Code Search
- Title(参考訳): You Augment Me: セマンティックコード検索のためのChatGPTベースのデータ拡張を探る
- Authors: Yanlin Wang, Lianghong Guo, Ensheng Shi, Wenqing Chen, Jiachi Chen, Wanjun Zhong, Menghan Wang, Hui Li, Hongyu Zhang, Ziyu Lyu, Zibin Zheng,
- Abstract要約: コード検索はソフトウェア開発において重要な役割を担い、開発者は自然言語クエリを使ってコードを検索し再利用することができる。
近年,大規模言語モデル (LLM) は自然言語の理解と生成において顕著な進歩を遂げている。
本稿では,大規模言語モデルによって生成された高品質で多様な拡張データを利用する新しいアプローチChatDANCEを提案する。
- 参考スコア(独自算出の注目度): 47.54163552754051
- License: http://arxiv.org/licenses/nonexclusive-distrib/1.0/
- Abstract: Code search plays a crucial role in software development, enabling developers to retrieve and reuse code using natural language queries. While the performance of code search models improves with an increase in high-quality data, obtaining such data can be challenging and expensive. Recently, large language models (LLMs) such as ChatGPT have made remarkable progress in both natural and programming language understanding and generation, offering user-friendly interaction via simple prompts. Inspired by these advancements, we propose a novel approach ChatDANCE, which utilizes high-quality and diverse augmented data generated by a large language model and leverages a filtering mechanism to eliminate low-quality augmentations. Specifically, we first propose a set of ChatGPT prompting rules that are specifically designed for source code and queries. Then, we leverage ChatGPT to rewrite code and queries based on the according prompts and then propose a filtering mechanism which trains a cross-encoder from the backbone model UniXcoder to filter out code and query pairs with low matching scores. Finally, we re-train the backbone model using the obtained high-quality augmented data. Experimental results show that ChatDANCE achieves state-of-the-art performance, improving the best baseline by 13.2% (R@1) and 7% (MRR). Surprisingly, we find that this augment-filter-retrain strategy enables the backbone model (UniXcoder) to self-grow. Moreover, extensive experiments show the effectiveness of each component and ChatDANCE has stable performance under different hyperparameter settings. In addition, we conduct qualitative and quantitative analyses to investigate why ChatDANCE works well and find that it learns a more uniform distribution of representations and effectively aligns the code and query spaces.
- Abstract(参考訳): コード検索はソフトウェア開発において重要な役割を担い、開発者は自然言語クエリを使ってコードを検索し再利用することができる。
コード検索モデルの性能は高品質なデータの増加とともに向上するが、そのようなデータを取得することは困難でコストがかかる。
近年、ChatGPTのような大規模言語モデル(LLM)は、自然言語理解と生成の両方において顕著な進歩を遂げており、単純なプロンプトを通じてユーザフレンドリなインタラクションを提供している。
これらの進歩にインスパイアされた新しいアプローチであるChatDANCEを提案する。これは、大規模言語モデルによって生成された高品質で多様な拡張データを利用し、低品質な拡張を除去するためにフィルタリング機構を活用する。
具体的には、まず、ソースコードとクエリ用に特別に設計されたChatGPTプロンプトルールのセットを提案する。
そこで,我々はChatGPTを利用して,対応するプロンプトに基づいてコードとクエリの書き直しを行うとともに,バックボーンモデルUniXcoderからクロスエンコーダをトレーニングし,一致するスコアの低いコードとクエリペアをフィルタリングするフィルタリング機構を提案する。
最後に、得られた高品質な拡張データを用いて、バックボーンモデルを再訓練する。
実験の結果,ChatDANCEは最先端のパフォーマンスを達成し,13.2%(R@1)と7%(MRR)で最高のベースラインを向上した。
驚くべきことに、この拡張フィルタ-リトラクション戦略により、バックボーンモデル(UniXcoder)が自己成長できることがわかった。
さらに、広範囲な実験により、各コンポーネントの有効性が示され、ChatDANCEは異なるハイパーパラメータ設定下で安定したパフォーマンスを持つ。
さらに、ChatDanceがなぜうまく機能するのかを定性的かつ定量的に分析し、より均一な表現の分布を学習し、コードとクエリ空間を効果的に整列させる。
関連論文リスト
- 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) - LLM-Assisted Code Cleaning For Training Accurate Code Generators [53.087019724256606]
コードの品質を調査した結果,より構造化され,読みやすくなれば,コード生成性能が向上することがわかった。
私たちは、これらの原則を使って既存のプログラムを変換する、新しいデータクリーニングパイプラインを構築します。
提案手法を2つのアルゴリズムコード生成ベンチマークで評価した結果,微調整のCodeLLaMa-7Bでは,元のデータセットの微調整に比べて最大30%性能が向上していることがわかった。
論文 参考訳(メタデータ) (2023-11-25T02:45:50Z) - Contrastive Transformer Learning with Proximity Data Generation for
Text-Based Person Search [60.626459715780605]
記述的なテキストクエリーを与えられたテキストベースの人物検索は、画像ギャラリーからベストマッチした人物を検索することを目的としている。
このようなクロスモーダル検索タスクは、重要なモダリティギャップ、きめ細かい相違、注釈付きデータの不十分さのため、かなり難しい。
本稿では,テキストに基づく人物検索のための2つのトランスフォーマーモデルを提案する。
論文 参考訳(メタデータ) (2023-11-15T16:26:49Z) - Discriminating Human-authored from ChatGPT-Generated Code Via
Discernable Feature Analysis [2.9398911304923447]
本稿では,ChatGPTが生成するコードと,人間が作成したコードとを区別することを目的とする。
時間的・空間的セグメンテーションを用いたデータセット浄化手法を考案し,データセットの変形を緩和する。
データリソースをさらに強化するために、我々は、ChatGPT生成コードの1万行からなる広範囲なデータセットを生成する"コード変換"、"機能変換"、"機能カスタマイズ"技術を採用している。
論文 参考訳(メタデータ) (2023-06-26T03:15:06Z) - Enhancing Chat Language Models by Scaling High-quality Instructional
Conversations [91.98516412612739]
まず,UltraChatという,体系的に設計され,多様で,情報的,大規模な会話データセットを提供する。
我々の目標は、人間がAIアシスタントで持つであろう対話の幅を捉えることです。
我々はLLaMAモデルを微調整し、強力な対話モデルであるUltraLLaMAを作成する。
論文 参考訳(メタデータ) (2023-05-23T16:49:14Z) - Improving ChatGPT Prompt for Code Generation [13.303599826870705]
OpenAIの言語モデルChatGPTは、幅広いテキスト入力に対するヒューマンライクな応答を生成する強力なツールとして登場した。
テキスト・ツー・コード生成とコード・ツー・コード生成を含む2つのコード生成タスクにおけるChatGPTの機能を評価する。
その結果,ChatGPTをガイドするプロンプトを慎重に設計することで,生成性能を大幅に向上できることがわかった。
論文 参考訳(メタデータ) (2023-05-15T05:37:33Z) - Enhancing Semantic Code Search with Multimodal Contrastive Learning and
Soft Data Augmentation [50.14232079160476]
コード検索のためのマルチモーダルコントラスト学習とソフトデータ拡張を用いた新しい手法を提案する。
我々は,6つのプログラミング言語を用いた大規模データセットにおけるアプローチの有効性を評価するために,広範囲な実験を行った。
論文 参考訳(メタデータ) (2022-04-07T08:49:27Z) - GQE-PRF: Generative Query Expansion with Pseudo-Relevance Feedback [8.142861977776256]
PRFに基づくクエリ拡張にテキスト生成モデルを効果的に統合する新しい手法を提案する。
提案手法では,初期クエリと擬似関連フィードバックの両方を条件としたニューラルテキスト生成モデルを用いて,拡張クエリ項を生成する。
2つのベンチマークデータセットを用いて,情報検索タスクに対するアプローチの有効性を評価する。
論文 参考訳(メタデータ) (2021-08-13T01:09:02Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。