要約
現代のソフトウェア開発に複数のプログラミング言語が関与していることにより、クロスコードクローン検出がソフトウェアエンジニアリングコミュニティ内で牽引力を獲得しました。
多くの研究がこのトピックを調査し、さまざまな有望なアプローチを提案しています。
近年の機械学習の大幅な進歩、特に大規模な言語モデル(LLM)に触発され、さまざまなタスクに取り組む能力を実証していますが、このペーパーでは、横断コードクローン検出を再検討します。
横断的コードクローンの識別のために、5(05)LLMSと8つのプロンプト(08)のパフォーマンスを評価します。
さらに、これらの結果を2つのベースラインメソッドと比較します。
最後に、クローンと非クローンのペアを分類するための生成された表現の有効性を評価するために、事前に訓練された埋め込みモデルを評価します。
LLMSと埋め込みモデルを含む研究は、広く使用されている2つの広く使用されているデータセット、XLCostとCodenetを使用して評価されます。
私たちの結果は、LLMが簡単なプログラミングの例で、最大0.99の高いF1スコアを達成できることを示しています。
ただし、複雑なプログラミングの課題に関連するプログラムではあまりパフォーマンスを発揮するだけでなく、間隔を空けるような設定で「コードクローン」の意味を必ずしも理解しているわけではありません。
同じ表現空間内の異なるプログラミング言語のコードフラグメントを表すために使用される埋め込みモデルにより、XLCostおよびCodenetデータセットでそれぞれすべてのLLMを上回る基本分類器のトレーニングをそれぞれ上回ることができることを示しています。
この発見は、LLMの明らかな能力にもかかわらず、埋め込みモデルによって提供される埋め込みは、言語間コードクローン検出の最先端のパフォーマンスを達成するために適切な表現を提供することを示唆しています。
要約(オリジナル)
With the involvement of multiple programming languages in modern software development, cross-lingual code clone detection has gained traction within the software engineering community. Numerous studies have explored this topic, proposing various promising approaches. Inspired by the significant advances in machine learning in recent years, particularly Large Language Models (LLMs), which have demonstrated their ability to tackle various tasks, this paper revisits cross-lingual code clone detection. We evaluate the performance of five (05) LLMs and eight prompts (08) for the identification of cross-lingual code clones. Additionally, we compare these results against two baseline methods. Finally, we evaluate a pre-trained embedding model to assess the effectiveness of the generated representations for classifying clone and non-clone pairs. The studies involving LLMs and Embedding models are evaluated using two widely used cross-lingual datasets, XLCoST and CodeNet. Our results show that LLMs can achieve high F1 scores, up to 0.99, for straightforward programming examples. However, they not only perform less well on programs associated with complex programming challenges but also do not necessarily understand the meaning of ‘code clones’ in a cross-lingual setting. We show that embedding models used to represent code fragments from different programming languages in the same representation space enable the training of a basic classifier that outperforms all LLMs by ~1 and ~20 percentage points on the XLCoST and CodeNet datasets, respectively. This finding suggests that, despite the apparent capabilities of LLMs, embeddings provided by embedding models offer suitable representations to achieve state-of-the-art performance in cross-lingual code clone detection.
arxiv情報
著者 | Micheline Bénédicte Moumoula,Abdoul Kader Kabore,Jacques Klein,Tegawendé Bissyande |
発行日 | 2025-01-28 17:32:33+00:00 |
arxivサイト | arxiv_id(pdf) |
提供元, 利用サービス
arxiv.jp, Google