论文
站在巨人肩上:面向跨语言代码克隆检测的稳定化知识蒸馏
Standing on the Shoulders of Giants: Stabilized Knowledge Distillation for Cross--Language Code Clone Detection
摘要
跨语言代码克隆检测(X-CCD)具有挑战性:不同语言编写的语义等价程序往往少有表面相似性。尽管大语言模型(LLM)在语义克隆检测上展现出前景,但其黑盒使用引发成本、可复现性、隐私与输出格式不可靠的担忧。特别是紧凑开源模型常难以遵循面向推理的提示,也难产出可稳定映射为二分类克隆标签的输出。为解决这些局限,我们提出知识蒸馏框架:把DeepSeek-R1的推理能力迁移到用于X-CCD的紧凑开源学生模型。用来自Project CodeNet的跨语言代码对构建面向推理的合成训练数据,以LoRA适配器微调Phi3与Qwen-Coder。我们进一步引入响应稳定化方法——强制结论提示、二分类头与对比分类头——并以预测指标与响应率双口径评估模型行为。在Python-Java、Rust-Java、Rust-Python与Rust-Ruby上的实验显示,知识蒸馏一致提升紧凑模型的可靠性并常改善预测性能,尤其在分布偏移下;分类头变体较生成式推理大幅缩短推理时间。总体而言,面向推理的蒸馏加响应稳定化让紧凑开源模型在X-CCD检测上更实用可靠。
