論文の概要: DeSkew-LSH based Code-to-Code Recommendation Engine
- arxiv url: http://arxiv.org/abs/2111.04473v1
- Date: Fri, 5 Nov 2021 16:56:28 GMT
- ステータス: 処理完了
- システム内更新日: 2021-11-09 16:41:37.311657
- Title: DeSkew-LSH based Code-to-Code Recommendation Engine
- Title(参考訳): DeSkew-LSHをベースとしたCode-to-Code Recommendation Engine
- Authors: Fran Silavong, Sean Moran, Antonios Georgiadis, Rohan Saphal, Robert
Otter
- Abstract要約: ソースコード上の機械学習のための新しいコード・ツー・コードレコメンデーションエンジンであるemphSenatusを紹介する。
SenatusのコアとなるemphDe-Skew LSHは、ローカリティに敏感なハッシュアルゴリズムで、高速(サブ線形時間)検索のためにデータをインデックスする。
コード・ツー・コード・レコメンデーションのタスクにおいて、Senatusはパフォーマンスを6.7%向上し、クエリ時間16xはFacebook Aromaよりも高速であることを示す。
- 参考スコア(独自算出の注目度): 3.7011129410662558
- License: http://arxiv.org/licenses/nonexclusive-distrib/1.0/
- Abstract: Machine learning on source code (MLOnCode) is a popular research field that
has been driven by the availability of large-scale code repositories and the
development of powerful probabilistic and deep learning models for mining
source code. Code-to-code recommendation is a task in MLOnCode that aims to
recommend relevant, diverse and concise code snippets that usefully extend the
code currently being written by a developer in their development environment
(IDE). Code-to-code recommendation engines hold the promise of increasing
developer productivity by reducing context switching from the IDE and
increasing code-reuse. Existing code-to-code recommendation engines do not
scale gracefully to large codebases, exhibiting a linear growth in query time
as the code repository increases in size. In addition, existing code-to-code
recommendation engines fail to account for the global statistics of code
repositories in the ranking function, such as the distribution of code snippet
lengths, leading to sub-optimal retrieval results. We address both of these
weaknesses with \emph{Senatus}, a new code-to-code recommendation engine. At
the core of Senatus is \emph{De-Skew} LSH a new locality sensitive hashing
(LSH) algorithm that indexes the data for fast (sub-linear time) retrieval
while also counteracting the skewness in the snippet length distribution using
novel abstract syntax tree-based feature scoring and selection algorithms. We
evaluate Senatus via automatic evaluation and with an expert developer user
study and find the recommendations to be of higher quality than competing
baselines, while achieving faster search. For example, on the CodeSearchNet
dataset we show that Senatus improves performance by 6.7\% F1 and query time
16x is faster compared to Facebook Aroma on the task of code-to-code
recommendation.
- Abstract(参考訳): ソースコード上の機械学習(MLOnCode)は、大規模なコードリポジトリの可用性と、ソースコードをマイニングするための強力な確率的およびディープラーニングモデルの開発によって、人気のある研究分野である。
コード・ツー・コード・レコメンデーション(Code-to-code recommendation)はMLOnCodeのタスクであり、開発者が開発環境(IDE)で現在記述しているコードを便利に拡張する、関連性があり多様な簡潔なコードスニペットを推奨することを目的としている。
コード間リコメンデーションエンジンは、IDEからのコンテキスト切り替えを減らし、コード再利用を増やすことで、開発者の生産性を高めるという約束を守ります。
既存のコード間リコメンデーションエンジンは、大規模なコードベースに優雅にスケールしないため、コードリポジトリのサイズが大きくなるにつれて、クエリ時間が線形に増加します。
さらに、既存のコードからコードへのレコメンデーションエンジンは、コードスニペットの長さの分布など、ランキング機能内のコードリポジトリのグローバル統計を考慮せず、最適な検索結果につながる。
どちらも、新しいコード間リコメンデーションエンジンである \emph{Senatus} で対処しています。
Senatus のコアとなるのが \emph{De-Skew} LSH である。LSH (Locality sensitive hashing) アルゴリズムは、データを高速(準線形時間)な検索のためにインデックス付けすると同時に、新しい抽象構文木に基づく特徴スコアリングと選択アルゴリズムを用いてスニペット長分布の歪を補正する。
我々はsenatusを自動評価および熟練開発者ユーザ調査により評価し、より高速な検索を実現しつつ、競合ベースラインよりも高品質な推奨事項を見出した。
例えば、CodeSearchNetデータセットでは、Senatusがパフォーマンスを6.7\%向上し、コード・ツー・コードレコメンデーションのタスクにおいて、クエリ時間16xがFacebook Aromaよりも高速であることを示す。
関連論文リスト
- When to Stop? Towards Efficient Code Generation in LLMs with Excess Token Prevention [43.39584272739589]
コード生成におけるコードLLMの推論高速化手法であるCodeFastを紹介する。
CodeFastの主なアイデアは、不要な余分なトークンが検出された場合に、推論プロセスを終了させることである。
我々は、広く使われている4つのコード生成データセットにまたがる5つの代表的なコードLLM上で、CodeFastで広範な実験を行う。
論文 参考訳(メタデータ) (2024-07-29T14:27:08Z) - VersiCode: Towards Version-controllable Code Generation [58.82709231906735]
大規模言語モデル(LLM)は、コード生成において大きな進歩を遂げていますが、既存の研究は、ソフトウェア開発の動的な性質を説明できません。
バージョン別コード補完(VSCC)とバージョン別コードマイグレーション(VACM)の2つの新しいタスクを提案する。
VersiCodeについて広範な評価を行い、バージョン管理可能なコード生成が確かに重要な課題であることを示した。
論文 参考訳(メタデータ) (2024-06-11T16:15:06Z) - 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) - A^3-CodGen: A Repository-Level Code Generation Framework for Code Reuse with Local-Aware, Global-Aware, and Third-Party-Library-Aware [13.27883339389175]
本稿では,A3-CodGenと呼ばれる新しいコード生成フレームワークを提案する。
その結果、A3-CodGenフレームワークを採用することで、コードリポジトリ情報をLLMに抽出、ヒューズ、フィードし、より正確で、効率的で、再利用性の高いコードを生成します。
論文 参考訳(メタデータ) (2023-12-10T05:36:06Z) - Tackling Long Code Search with Splitting, Encoding, and Aggregating [67.02322603435628]
長いコード検索のための新しいベースラインSEA(Split, Encode, Aggregate)を提案する。
長いコードをコードブロックに分割し、これらのブロックを埋め込みにエンコードし、それらを集約して包括的な長いコード表現を得る。
エンコーダとしてGraphCodeBERTを使用すると、SEAはコードSearchNetベンチマークでGraphCodeBERTよりも10.1%高い0.785という総合的な平均逆ランキングスコアを達成する。
論文 参考訳(メタデータ) (2022-08-24T02:27:30Z) - Enhancing Semantic Code Search with Multimodal Contrastive Learning and
Soft Data Augmentation [50.14232079160476]
コード検索のためのマルチモーダルコントラスト学習とソフトデータ拡張を用いた新しい手法を提案する。
我々は,6つのプログラミング言語を用いた大規模データセットにおけるアプローチの有効性を評価するために,広範囲な実験を行った。
論文 参考訳(メタデータ) (2022-04-07T08:49:27Z) - CodeRetriever: Unimodal and Bimodal Contrastive Learning [128.06072658302165]
関数レベルのコードセマンティック表現を訓練するために,一様および二様のコントラスト学習を組み合わせたCodeRetrieverモデルを提案する。
ノンモーダルなコントラスト学習のために、文書と関数名に基づいてポジティブなコードペアを構築するためのセマンティックガイド付き手法を設計する。
バイモーダルなコントラスト学習では、コードのドキュメンテーションとインラインコメントを活用して、テキストコードペアを構築します。
論文 参考訳(メタデータ) (2022-01-26T10:54:30Z) - COSEA: Convolutional Code Search with Layer-wise Attention [90.35777733464354]
我々は、畳み込みニューラルネットワークを階層的注意で活用し、コード固有の構造論理をキャプチャする新しいディープラーニングアーキテクチャ、COSEAを提案する。
COSEAは、コード検索タスクの最先端メソッドよりも大幅に改善できる。
論文 参考訳(メタデータ) (2020-10-19T13:53:38Z) - Faster Person Re-Identification [68.22203008760269]
本稿では,新しいハッシュコード検索戦略を定式化することによって,高速ReIDのための新しいソリューションを提案する。
より短いコードを使用して、より正確なReIDのいくつかのトップ候補を洗練するために、より広い一致の類似性を粗くランク付けし、より長いコードを使用する。
2つのデータセットに対する実験結果から,提案手法(CtF)は現在のハッシュReID法よりも8%精度が高いだけでなく,5倍高速であることがわかった。
論文 参考訳(メタデータ) (2020-08-16T03:02:49Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。