ZC3: Zero-Shot Cross-Language Code Clone Detection

要約

開発者は、プログラミングの生産性を向上させるためにコード クローンを導入します。
既存の研究の多くは、単一言語コードのクローン検出において優れたパフォーマンスを達成しています。
しかし、ソフトウェア開発中には、異なるプラットフォームをサポートし、開発者がプロ​​ジェクトをある言語から別の言語に翻訳できるように、異なる言語で意味的に同等のプログラムを作成する開発者が増えています。
特に低リソース言語の場合、言語間並列データの収集には費用と時間がかかることを考慮すると、並列データに依存しない効果的な言語間モデルをどのように設計するかが重大な問題となります。
この論文では、ゼロショットクロス言語コードクローン検出のための ZC3 という新しい方法を提案します。
ZC3 は、異なるプログラミング言語間で同形表現空間を形成するために、対照的なスニペット予測を設計します。
これに基づいて、ZC3 はドメイン認識学習とサイクル一貫性学習を利用して、モデルをさらに制約して、さまざまな言語間で調整され、同時にさまざまなタイプのクローンに対して発音区別符号となる表現を生成します。
私たちのアプローチを評価するために、4 つの代表的な言語間クローン検出データセットに対して広範な実験を実施しました。
実験結果は、ZC3 が MAP スコアで最先端のベースラインをそれぞれ 67.12%、51.39%、14.85%、および 53.01% 上回っていることを示しています。
さらに、さまざまな言語の表現分布を調査し、私たちの方法の有効性について議論します。

要約(オリジナル)

Developers introduce code clones to improve programming productivity. Many existing studies have achieved impressive performance in monolingual code clone detection. However, during software development, more and more developers write semantically equivalent programs with different languages to support different platforms and help developers translate projects from one language to another. Considering that collecting cross-language parallel data, especially for low-resource languages, is expensive and time-consuming, how designing an effective cross-language model that does not rely on any parallel data is a significant problem. In this paper, we propose a novel method named ZC3 for Zero-shot Cross-language Code Clone detection. ZC3 designs the contrastive snippet prediction to form an isomorphic representation space among different programming languages. Based on this, ZC3 exploits domain-aware learning and cycle consistency learning to further constrain the model to generate representations that are aligned among different languages meanwhile are diacritical for different types of clones. To evaluate our approach, we conduct extensive experiments on four representative cross-language clone detection datasets. Experimental results show that ZC3 outperforms the state-of-the-art baselines by 67.12%, 51.39%, 14.85%, and 53.01% on the MAP score, respectively. We further investigate the representational distribution of different languages and discuss the effectiveness of our method.

arxiv情報

著者 Jia Li,Chongyang Tao,Zhi Jin,Fang Liu,Jia Li,Ge Li
発行日 2023-09-07 11:22:59+00:00
arxivサイト arxiv_id(pdf)

提供元, 利用サービス

arxiv.jp, Google

カテゴリー: cs.CL, cs.IR, cs.SE パーマリンク