論文の概要: Industrial-Scale Neural Network Clone Detection with Disk-Based Similarity Search
- arxiv url: http://arxiv.org/abs/2504.17972v1
- Date: Thu, 24 Apr 2025 22:50:23 GMT
- ステータス: 翻訳完了
- システム内更新日: 2025-05-02 19:15:53.594641
- Title: Industrial-Scale Neural Network Clone Detection with Disk-Based Similarity Search
- Title(参考訳): ディスクを用いた類似性探索による産業用ニューラルネットワーククローンの検出
- Authors: Gul Aftab Ahmed, Muslim Chochlov, Abdul Razzaq, James Vincent Patten, Yuanhua Han, Guoxian Lu, Jim Buckley, David Gregg,
- Abstract要約: コードクローンは、コピー&ペーストプログラミングからしばしば生じる類似のコードフラグメントである。
既存のニューラルネットワークベースのクローン検出スキームを拡張して、利用可能なメモリを超えるクローンを処理する。
メモリに収まる問題サイズの問題に対して、私たちのアプローチはインメモリアプローチよりも約2$times$遅いことを実証しています。
- 参考スコア(独自算出の注目度): 0.24091079613649843
- License: http://arxiv.org/licenses/nonexclusive-distrib/1.0/
- Abstract: Code clones are similar code fragments that often arise from copy-and-paste programming. Neural networks can classify pairs of code fragments as clone/not-clone with high accuracy. However, finding clones in industrial-scale code needs a more scalable approach than pairwise comparison. We extend existing neural network-based clone detection schemes to handle codebases that far exceed available memory, using indexing and search methods for external storage such as disks and solid-state drives. We generate a high-dimensional vector embedding for each code fragment using a transformer-based neural network. We then find similar embeddings using efficient multidimensional nearest neighbor search algorithms on external storage to find similar embeddings without pairwise comparison. We identify specific problems with industrial-scale code bases, such as large sets of almost identical code fragments that interact poorly with $k$-nearest neighbour search algorithms, and provide an effective solution. We demonstrate that our disk-based clone search approach achieves similar clone detection accuracy as an equivalent in-memory technique. Using a solid-state drive as external storage, our approach is around 2$\times$ slower than the in-memory approach for a problem size that can fit within memory. We further demonstrate that our approach can scale to over a billion lines of code, providing valuable insights into the trade-offs between indexing speed, query performance, and storage efficiency for industrial-scale code clone detection.
- Abstract(参考訳): コードクローンは、コピー&ペーストプログラミングからしばしば生じる類似のコードフラグメントである。
ニューラルネットワークは、コードの断片のペアを高い精度でクローン/クローンに分類することができる。
しかし、産業規模のコードでクローンを見つけるには、ペア比較よりもスケーラブルなアプローチが必要である。
既存のニューラルネットワークベースのクローン検出スキームを拡張して、ディスクやソリッドステートドライブなどの外部ストレージのインデックス化と検索手法を使用して、利用可能なメモリを超えるコードベースを処理する。
変換器ベースニューラルネットワークを用いて,各コードフラグメントに対して高次元ベクトル埋め込みを生成する。
次に, 外部ストレージ上で, 効率的な多次元近接探索アルゴリズムを用いて類似の埋め込みを見つけ, ペア比較をせずに類似の埋め込みを求める。
例えば,$k$-nearest付近の探索アルゴリズムとの相互作用が不十分な,ほぼ同一のコードフラグメントの大規模な集合のような,産業規模のコードベースに関する特定の問題を特定し,有効な解決策を提供する。
ディスクベースのクローン探索手法は、同等のインメモリ技術として、類似のクローン検出精度を実現する。
ソリッドステートドライブを外部ストレージとして使用すると、メモリ内に収まる問題サイズの問題に対して、私たちのアプローチはインメモリアプローチよりも約2$\times$遅くなります。
さらに、我々のアプローチが10億行を超えるコードにスケールできることを実証し、インデクシング速度、クエリ性能、産業規模のコードクローン検出のためのストレージ効率のトレードオフに関する貴重な洞察を提供する。
関連論文リスト
- Efficient Beam Search for Large Language Models Using Trie-Based Decoding [10.302821791274129]
本稿では,バッチベースのビームサーチのメモリ非効率性に対処する並列デコーディング手法を提案する。
同じプレフィックスを共有するすべてのビーム間で単一のキャッシュを共有することで、提案手法はメモリ消費を劇的に削減するだけでなく、すべてのブランチ間で並列デコードを可能にする。
プレフィックスツリーのこの革新的な利用は、ビーム探索の効率的な代替手段を提供し、推論速度を保ちながら大きなメモリ節約を実現し、特にメモリ制約のある環境や大規模なモデル展開に適している。
論文 参考訳(メタデータ) (2025-01-31T16:22:36Z) - SECRET: Towards Scalable and Efficient Code Retrieval via Segmented Deep Hashing [83.35231185111464]
ディープラーニングは、検索パラダイムを語彙ベースのマッチングから、ソースコードとクエリをベクトル表現にエンコードした。
従来の研究では、クエリやコードスニペットのハッシュコードを生成し、ハミング距離を使ってコード候補を高速にリコールするディープハッシュベースの手法が提案されている。
提案手法は,既存の深層ハッシュ法によって計算された長いハッシュコードを,反復的学習戦略により複数の短いハッシュコードセグメントに変換する手法である。
論文 参考訳(メタデータ) (2024-12-16T12:51:35Z) - CC2Vec: Combining Typed Tokens with Contrastive Learning for Effective Code Clone Detection [20.729032739935132]
CC2Vecは、単純なコードクローンを素早く識別するために設計された新しいコード符号化手法である。
広く使われている2つのデータセット(BigCloneBenchとGoogle Code Jam)上でCC2Vecを評価する。
論文 参考訳(メタデータ) (2024-05-01T10:18:31Z) - Using a Nearest-Neighbour, BERT-Based Approach for Scalable Clone
Detection [0.0]
SSCDはBERTベースのクローン検出アプローチで、Type 3とType 4のクローンの大規模なリコールをターゲットとしている。
これは、各コードフラグメントへの代表埋め込みを計算し、近くの検索を使って類似のフラグメントを見つけることで実現している。
本稿では,産業環境でのアプローチの設定と評価に対するアプローチと経験的評価について述べる。
論文 参考訳(メタデータ) (2023-09-05T12:38:55Z) - Efficient Nearest Neighbor Search for Cross-Encoder Models using Matrix
Factorization [60.91600465922932]
本稿では,クロスエンコーダのみに頼って,二重エンコーダによる検索を回避する手法を提案する。
我々のアプローチは、現在の広く使われている方法よりも優れたテスト時間リコール-vs計算コストトレードオフを提供する。
論文 参考訳(メタデータ) (2022-10-23T00:32:04Z) - Revisiting Code Search in a Two-Stage Paradigm [67.02322603435628]
TOSSは2段階のフュージョンコード検索フレームワークである。
まずIRベースのバイエンコーダモデルを使用して、少数のトップkコード候補を効率的にリコールする。
その後、より微細なクロスエンコーダを使用してランク付けを行う。
論文 参考訳(メタデータ) (2022-08-24T02:34:27Z) - Rapid Person Re-Identification via Sub-space Consistency Regularization [51.76876061721556]
Person Re-Identification (ReID) は、歩行者を分離したカメラで識別する。
実値特徴記述子を用いた既存のReID法は精度が高いが、ユークリッド距離計算が遅いため効率が低い。
本稿では,ReID 処理を 0.25 倍高速化するサブスペース一貫性規則化 (SCR) アルゴリズムを提案する。
論文 参考訳(メタデータ) (2022-07-13T02:44:05Z) - Evaluation of Contrastive Learning with Various Code Representations for
Code Clone Detection [3.699097874146491]
コードスニペットの意味的クローンを検出するためのコントラスト学習の評価を行った。
CodeTransformatorを使って、競争力のあるプログラミングソリューションに基づいて、プラジャライズされたコードを模倣するデータセットを作成します。
評価の結果,提案手法は各タスクにおいて多種多様な性能を示すが,グラフベースモデルの性能は概して他のモデルよりも優れていることがわかった。
論文 参考訳(メタデータ) (2022-06-17T12:25:44Z) - Nearest neighbor search with compact codes: A decoder perspective [77.60612610421101]
バイナリハッシュや製品量化器などの一般的な手法を自動エンコーダとして再解釈する。
後方互換性のあるデコーダを設計し、同じ符号からベクトルの再構成を改善する。
論文 参考訳(メタデータ) (2021-12-17T15:22:28Z) - Semantic Clone Detection via Probabilistic Software Modeling [69.43451204725324]
本稿では,0%の構文的類似性を有するクローンを検出する意味的クローン検出手法を提案する。
我々は,SCD-PSMをセマンティッククローン検出のための安定かつ高精度なソリューションとして提示する。
論文 参考訳(メタデータ) (2020-08-11T17:54:20Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。