論文の概要: Gitor: Scalable Code Clone Detection by Building Global Sample Graph
- arxiv url: http://arxiv.org/abs/2311.08778v2
- Date: Sat, 18 Nov 2023 13:46:07 GMT
- ステータス: 処理完了
- システム内更新日: 2023-11-22 16:02:24.317604
- Title: Gitor: Scalable Code Clone Detection by Building Global Sample Graph
- Title(参考訳): Gitor:グローバルサンプルグラフの構築によるスケーラブルなコードクローン検出
- Authors: Junjie Shan, Shihan Dou, Yueming Wu, Hairu Wu, Yang Liu
- Abstract要約: 異なるコードサンプル間の基盤となる接続をキャプチャするGitorを提案する。
Gitorはコードクローンの検出の精度が高く、さまざまなサイズの入力の実行時間に優れています。
- 参考スコア(独自算出の注目度): 11.041017540277558
- License: http://arxiv.org/licenses/nonexclusive-distrib/1.0/
- Abstract: Code clone detection is about finding out similar code fragments, which has
drawn much attention in software engineering since it is important for software
maintenance and evolution. Researchers have proposed many techniques and tools
for source code clone detection, but current detection methods concentrate on
analyzing or processing code samples individually without exploring the
underlying connections among code samples. In this paper, we propose Gitor to
capture the underlying connections among different code samples. Specifically,
given a source code database, we first tokenize all code samples to extract the
pre-defined individual information. After obtaining all samples individual
information, we leverage them to build a large global sample graph where each
node is a code sample or a type of individual information. Then we apply a node
embedding technique on the global sample graph to extract all the samples
vector representations. After collecting all code samples vectors, we can
simply compare the similarity between any two samples to detect possible clone
pairs. More importantly, since the obtained vector of a sample is from a global
sample graph, we can combine it with its own code features to improve the code
clone detection performance. To demonstrate the effectiveness of Gitor, we
evaluate it on a widely used dataset namely BigCloneBench. Our experimental
results show that Gitor has higher accuracy in terms of code clone detection
and excellent execution time for inputs of various sizes compared to existing
state-of-the-art tools. Moreover, we also evaluate the combination of Gitor
with other traditional vector-based clone detection methods, the results show
that the use of Gitor enables them detect more code clones with higher F1.
- Abstract(参考訳): コードのクローン検出は、同様のコードフラグメントを見つけることであり、ソフトウェアメンテナンスと進化にとって重要であるため、ソフトウェア工学において多くの注目を集めている。
研究者は、ソースコードクローン検出のための多くの技術やツールを提案しているが、現在の検出方法は、コードサンプル間の基盤となる接続を探索することなく、コードサンプルを個別に分析または処理することに集中している。
本稿では、異なるコードサンプル間の基盤となる接続をキャプチャするgitorを提案する。
具体的には、ソースコードデータベースが与えられた場合、事前に定義された個々の情報を抽出するために、まずすべてのコードサンプルをトークン化する。
すべてのサンプル情報を収集した後、それらを利用して、各ノードがコードサンプルまたは個々の情報のタイプである大規模なグローバルなサンプルグラフを構築する。
次に,グローバルなサンプルグラフ上にノード埋め込み手法を適用し,すべてのサンプルベクトル表現を抽出する。
すべてのコードサンプルベクトルを収集した後、任意の2つのサンプル間の類似性を比較してクローンペアを検出する。
さらに重要なのは、得られたサンプルベクトルはグローバルなサンプルグラフから得られるため、コードクローン検出性能を改善するために、コード機能と組み合わせることができます。
Gitorの有効性を実証するため、広く使われているBigCloneBenchというデータセットで評価した。
実験の結果,Gitorはコードクローン検出の精度が高く,既存の最先端ツールと比較して,さまざまなサイズの入力の実行時間に優れていた。
さらに、Gitorと従来のベクトルベースのクローン検出手法の組み合わせを評価し、その結果、Gitorを使うことで、より高いF1でより多くのコードクローンを検出できることがわかった。
関連論文リスト
- Advanced Detection of Source Code Clones via an Ensemble of Unsupervised Similarity Measures [0.0]
本研究では,コード類似度評価のための新しいアンサンブル学習手法を提案する。
鍵となる考え方は、様々な類似度尺度の強みが互いに補完し、個々の弱点を軽減することである。
論文 参考訳(メタデータ) (2024-05-03T13:42:49Z) - 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) - Source Code is a Graph, Not a Sequence: A Cross-Lingual Perspective on
Code Clone Detection [3.3298891718069648]
グラフベースの手法は,シーケンスベースの手法よりもコードクローン検出に適していることを示す。
CodeGraphは、両方のデータセット、特に言語間コードクローンにおいて、CodeBERTよりも優れています。
論文 参考訳(メタデータ) (2023-12-27T09:30:31Z) - RepoCoder: Repository-Level Code Completion Through Iterative Retrieval
and Generation [96.75695811963242]
RepoCoderはリポジトリレベルのコード補完プロセスを合理化するフレームワークである。
類似性ベースのレトリバーと、事前訓練されたコード言語モデルが組み込まれている。
バニラ検索で拡張されたコード補完アプローチよりも一貫して優れています。
論文 参考訳(メタデータ) (2023-03-22T13:54:46Z) - Evaluation of Contrastive Learning with Various Code Representations for
Code Clone Detection [3.699097874146491]
コードスニペットの意味的クローンを検出するためのコントラスト学習の評価を行った。
CodeTransformatorを使って、競争力のあるプログラミングソリューションに基づいて、プラジャライズされたコードを模倣するデータセットを作成します。
評価の結果,提案手法は各タスクにおいて多種多様な性能を示すが,グラフベースモデルの性能は概して他のモデルよりも優れていることがわかった。
論文 参考訳(メタデータ) (2022-06-17T12:25:44Z) - Trustable Co-label Learning from Multiple Noisy Annotators [68.59187658490804]
監督されたディープラーニングは、大量の注釈付き例に依存している。
典型的な方法は、複数のノイズアノテータから学習することである。
本稿では,emphTrustable Co-label Learning (TCL)と呼ばれるデータ効率のよい手法を提案する。
論文 参考訳(メタデータ) (2022-03-08T16:57:00Z) - Cherry-Picking Gradients: Learning Low-Rank Embeddings of Visual Data
via Differentiable Cross-Approximation [53.95297550117153]
本稿では,大規模な視覚データテンソルの処理を行うエンドツーエンドのトレーニング可能なフレームワークを提案する。
提案手法は大規模多次元グリッドデータや,大規模受容領域上のコンテキストを必要とするタスクに特に有用である。
論文 参考訳(メタデータ) (2021-05-29T08:39:57Z) - Deep ensembles based on Stochastic Activation Selection for Polyp
Segmentation [82.61182037130406]
本研究は,大腸内視鏡検査における画像分割,特に正確なポリープ検出とセグメンテーションを扱う。
イメージセグメンテーションの基本アーキテクチャはエンコーダとデコーダで構成されている。
我々はデコーダのバックボーンを変更することで得られるDeepLabアーキテクチャのバリエーションを比較した。
論文 参考訳(メタデータ) (2021-04-02T02:07:37Z) - Learning to map source code to software vulnerability using
code-as-a-graph [67.62847721118142]
セキュリティの観点からソースコードのニュアンス学習におけるグラフニューラルネットワークの適用性について検討する。
我々は,既存のコード・アズ・フォトや線形シーケンスの符号化手法よりも,脆弱性検出に有効なコード・アズ・グラフの符号化法を示す。
論文 参考訳(メタデータ) (2020-06-15T16:05:27Z) - Auto-Encoding Twin-Bottleneck Hashing [141.5378966676885]
本稿では,効率よく適応的なコード駆動グラフを提案する。
自動エンコーダのコンテキストでデコードすることで更新される。
ベンチマークデータセットの実験は、最先端のハッシュ手法よりもフレームワークの方が優れていることを明らかに示しています。
論文 参考訳(メタデータ) (2020-02-27T05:58:12Z) - Detecting Code Clones with Graph Neural Networkand Flow-Augmented
Abstract Syntax Tree [30.484662671342935]
フロー拡張抽象構文木(FA-AST)と呼ばれるプログラムのグラフ表現を構築する。
FA-ASTに2種類のグラフニューラルネットワークを適用し、コードペアの類似性を計測する。
当社のアプローチは,Google Code JamとBigCloneBenchタスクの両面で,最先端のアプローチよりも優れています。
論文 参考訳(メタデータ) (2020-02-20T10:18:37Z)
関連論文リストは本サイト内にある論文のタイトル・アブストラクトから自動的に作成しています。
指定された論文の情報です。
本サイトの運営者は本サイト(すべての情報・翻訳含む)の品質を保証せず、本サイト(すべての情報・翻訳含む)を使用して発生したあらゆる結果について一切の責任を負いません。