基于编码风格特征的大语言模型(LLM)代码复述检测方法与系统研究
【字体:
大
中
小
】
时间:2025年09月28日
来源:Engineering Applications of Artificial Intelligence 8
编辑推荐:
本文针对大语言模型(LLM)生成代码的复述(paraphrase)行为,提出基于编码风格(如命名一致性、代码结构、可读性)的检测方法LPcodedec,显著提升检测F1分数(最高15.17%)与速度(最高1343倍),为代码知识产权保护提供新思路。
我们通过统计学分析确认,人类编写代码与LLM复述代码在编码风格上存在显著差异,特别是在命名一致性、代码结构和可读性方面。基于这些发现,我们开发了一种检测方法,能够识别人类编写代码与LLM生成代码之间的复述关系,并发现用于复述的LLM模型。我们的检测方法在两个任务中均优于最佳基线,F1分数分别提高了2.64%和15.17%,同时实现了1343倍和213倍的加速。
大语言模型已迅速成为开发者、学生和研究人员寻求自动化解决方案的基本工具,涵盖代码分类、注释分类、漏洞修复、审查自动化、克隆检测、补全、生成和翻译等领域。它们日益融入软件开发流程和教育环境,引发了关于未经授权代码重用和潜在版权代码抄袭的严重关切。这些关切凸显了不仅需要确定给定代码是否由LLM生成,还需要验证其是否为现有源代码的复述版本(用于代码抄袭检测),并追踪用于复述的LLM模型(以增强AI辅助编码的透明度)。
尽管复述检测在自然语言处理领域已得到广泛研究,但据我们所知,尚未有研究探讨LLM生成的代码是否为现有代码的复述,或识别执行复述的LLM模型。我们引入LPcode(LLM复述代码)数据集以应对这一新挑战。我们首先从GitHub收集早于先进LLM广泛可用时期的源代码,确保材料纯属人类编写。然后,我们将这些人类编写的代码样本作为输入提供给四个不同的LLM,提示它们复述并生成原始代码的新版本。此过程产生了一个全面的人类和LLM生成代码对集合,反映了各种复述风格。
我们提出了一种新颖的方法,用于检测由LLM执行的代码复述。该方法通过设计在三个关键方面的特征来量化人类开发者和LLM的编码风格:命名约定、代码结构和可读性。特征集包括10个定量指标,如命名一致性、缩进一致性和注释比率。这些特征捕获了LLM复述人类编写代码时引入的风格变化,从而能够检测代码样本之间的复述关系。此外,我们的方法利用不同LLM的独特编码风格指纹来分类执行复述的模型。图1说明了我们的LLM代码复述检测方法。
使用ANOVA统计分析,我们确认人类编写代码与LLM复述代码之间最显著的差异在于注释比率。基于这些发现,我们引入了LPcodedec(LLM复述代码检测),一种利用编码风格特征的检测方法。实验结果表明,LPcodedec在两个任务中均优于最强基线,F1分数提高了2.64%和15.17%,同时还将检测速度分别提高了1343倍和213倍。
Background and problem definition
我们首先介绍代码克隆检测,一种识别功能等效代码的技术。然后,我们强调代码克隆检测与我们的研究重点(检测基于LLM的代码复述)之间的关键差异。
Dataset construction: LPcode
本节组织如下:(1)收集人类编写的代码;(2)基于收集的数据生成LLM复述代码;(3)过滤数据集;以及(4)基于LPcode引入两个任务。图2说明了构建LPcode数据集的过程。
本节结构如下:(1)设计特征以量化人类和LLM的编码风格;(2)使用ANOVA分析验证设计的特征是否在不同代码生成器之间表现出显著差异;以及(3)基于设计的特征开发检测方法LPcodedec。
我们选择六种基线方法来检测给定的人类编写和LLM生成代码对是否具有复述关系。这些基线从三个不同角度测量代码相似性:基于令牌的相似性、结构相似性和嵌入相似性。(1)Levenshtein编辑距离:通过计算将一个代码转换为另一个代码所需的最小插入、删除和替换次数来测量文本相似性。(2)Jaccard相似性:计算
LLM code paraphrasing detection
表6展示了任务1的实验结果。我们在执行时间(越低越好)和F1分数(越高越好)方面以粗体突出最佳性能,而以下列线标出次佳性能。在四种语言的平均值上,LPcodedec实现了最高的F1分数,其次是树编辑距离,而Jaccard相似性在执行时间上最快,LPcodedec次之。与树编辑距离相比,LPcodedec实现了平均F1
表14提供了相关领域先前研究的比较总结。我们沿着任务类型、目标和方法的关键维度对这些研究进行分类,以背景化我们的新颖贡献。随后的讨论提供了每个类别内相关工作的详细概述。
LLM在代码理解和生成方面的快速进步提出了保护版权代码和确保透明AI使用的迫切需求。为应对这一挑战,我们构建了LPcode,一个专用资源以支持该领域的研究。我们引入了LPcodedec,一种使用编码风格特征的检测方法,用于识别代码样本是否被LLM复述并确定执行复述的LLM。通过分析
生物通微信公众号
生物通新浪微博
今日动态 |
人才市场 |
新技术专栏 |
中国科学人 |
云展台 |
BioHot |
云讲堂直播 |
会展中心 |
特价专栏 |
技术快讯 |
免费试用
版权所有 生物通
Copyright© eBiotrade.com, All Rights Reserved
联系信箱:
粤ICP备09063491号