代码生成算法及克隆检测工具鲁棒性研究

来源 :中国科学技术大学 | 被引量 : 0次 | 上传用户:a87700180
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
软件克隆检测可以识别相似或相同的代码,其一直以来都是软件工程中的一个活跃的研究课题,在过去20年中引起了广泛的关注。近年来,基于机器学习的克隆检测器,特别是基于深度学习的检测器,在克隆检测方面表现出令人印象深刻的能力。由于机器学习技术的进步,在代码克隆检测中长期存在的语义相似性克隆检测问题似乎已经被克服。因此,本文的主要目标是通过代码语义保护的等价代码转换来研究最近基于机器学习的检测器的鲁棒性。在本工作中,首先实现了 15个简单的代码等价转换运算符,并结合常用的启发式方法(即随机搜索、遗传算法和马尔科夫链蒙特卡洛)以及提出的一种最优的基于深度强化学习的序列生成策略来进行源代码等价转换,以有效地指导生成可能逃避检测的克隆的搜索过程。然后,用原始代码和生成的克隆代码构成克隆对来评估基于机器学习的检测器。本文实现了一个名为CloneGen(Clone Generate,克隆发生器)的框架,在其中实现了提出所有方法。在评估CloneGen的时候,在CloneGen的帮助下进行源代码语义保全转换,生成代码克隆来评估三个最先进的基于机器学习的检测器和四个传统检测器。通过实验表明,尽管现有的克隆检测器取得了显著的成功,但这些检测器内的机器学习模型仍然不能区分由CloneGen中的等价转换产生的众多克隆。此外,实验发现使用CloneGen产生的克隆对基于机器学习的克隆检测器进行对抗性训练可以提高其克隆检测的鲁棒性和准确性。同时,与常用的启发式方法相比,DRLSG策略在生成代码克隆以降低基于机器学习的检测器的检测精度方面显示出最佳效果。通过实验揭示了最新的基于机器学习的源代码克隆检测工具的一个可以解释但总是被忽视的鲁棒性问题。本文的主要工作内容如下:(1)实现了 15个代码转换操作符来改变代码片段,同时保持语义的完整,可以评估最先进的基于机器学习的克隆检测器的鲁棒性。(2)设计和实现了 CLONEGEN工具,使用编码模式(比特向量)来定位变化的代码,该工具支持多种启发式的搜索策略和基于强化学习的策略来指导代码等价转换。(3)提出并实现了一种基于强化学习的代码等价变换搜索策略,该策略在不同的程序位置分派多个轻量级但有效的代码转换操作符来指导源代码的等价变换。(4)利用CloneGen生成克隆样本对基于机器学习的克隆检测工具进行对抗性训练,可以显著提高其鲁棒性。
其他文献
在现代汉语中,“离合词”是特殊的存在现象,它反映出汉语中词和短语的界限不清晰。随着国际中文教育的不断发展,“离合词”从本体研究过渡到教学研究,“离合词”的教学引起教师重视。2021年,《国际中文教育中文水平等级标准》(以下简称《等级标准》)的出台,为教材编写和教师教学提供新的参考。本文以《等级标准》为研究对象,从离合词数量、结构形式以及离析形式三个方面对《等级标准》中的离合词的编排进行考察研究,并
学位
目的:(1)对萱草花进行系统的化学成分研究,明确萱草花的主要化学成分,明确其药用物质基础,为萱草花药材的进一步开发利用及质量标准的制定提供依据。(2)对萱草干燥全花95%乙醇提取物不同极性萃取部位以及分离得到的单体化合物进行生物活性评价,印证了该植物清热、解毒、消炎功效所对应的药效物质基础。方法:(1)采用正相硅胶柱色谱、薄层制备色谱、反向ODS柱色谱、MCI柱、凝胶柱色谱(Sephadex LH
学位
国际热核聚变实验堆(ITER)和中国聚变工程实验堆(CFETR)等未来核聚变实验装置的偏滤器将承受极高的热负荷。这些装置将采用钨(W)作为偏滤器面对等离子体材料,由于缺少固有杂质,需要在偏滤器区域注入氖(Ne)、氩(Ar)等中低Z惰性气体,利用这些杂质较强的辐射冷却效应来增强偏滤器等离子体的能量耗散,使到达偏滤器表面的热负荷降低到材料部件的损伤阈值以下,从而达到保护偏滤器材料部件的目的。钨材料的溅
学位
CO2大量排放是导致全球气候变暖的罪魁祸首,如何将CO2转化为具有高附加值的化学品是目前研究的热点问题。目前,工业上能成功应用CO2的反应较少,其中CO2和环氧化物合成环状碳酸酯的反应由于其原子利用率高和符合绿色化学路线的优点被视为是最具有工业前景的CO2应用反应之一,其中该反应工业应用的关键在于高效稳定催化剂的长周期使用。本论文针对现有离子液体催化剂-碳酸酯体系在产物分离过程中存在着产物收率下降
学位
目的 比较糖尿病患者及其他类型肾病患者肾组织中Smad1蛋白表达量的差异,以及与相应尿Smad1蛋白含量的关系。方法 收集通过肾活检确诊的糖尿病肾病患者(DN组9例)及其他类型肾病患者,包括局灶性肾小球硬化性肾病(FSGS组5例)、IgA肾病(IgA组12例)、微小病变型肾病(MNP组10例)的尿液及肾活检组织。ELISA以及免疫组化、免疫荧光等方法检测尿Smad1蛋白含量、肾活检组织Smad1蛋
期刊
心血管疾病是威胁人类生命健康的头号杀手,而心律失常则是心血管疾病中危害最大的一种,心律失常被定义为正常心律的任何不规则变化,严重情况下会导致心脏骤停甚至死亡。专业的心脏科医生可以通过观察心电图来了解心脏健康状况,然而单纯依靠肉眼识别心电图,准确率、实时性均难以保证。因此,心电图的自动分类一直以来都是医学和生物信息学上最有价值的研究课题之一。心电信号是非平稳、幅值较小的连续信号,采集过程中会不可避免
学位
染色质域解旋酶 DNA 结合蛋白(chromodomain helicase DNA-binding family,CHDs)是染色质重塑复合物的一个亚类。它主要通过调节核小体的间距实现影响染色质结构和调控基因转录的功能。虽然已有研究表明,该家族基因与多种癌症的发生发展有关。但是,目前CHDs成员在肺癌中的功能和可能的作用机制却鲜少有人研究。在本文中,我们首先使用Oncomine、UALCAN、G
学位
近些年来,随着公共安全事件的频繁发生,人群行为研究受到越来越多的关注。识别出人群中的异常行为并及时采取相应的干预措施可以防止危险事件的发生,从而保护人民的生命财产安全。因此无论从经济效益还是社会安全层面考虑,人群行为研究都有着重要意义。在目前的人群行为识别研究中,大多数工作只考虑人群的部分类型特征对于人群行为的影响,而很少考虑各种类型特征对于人群行为的综合影响,这导致模型性能受到限制。此外,目前表
学位
该论文是学习有理数域上的岩泽猜想的证明的综述。该论文主要基于An-drew Wiles 于 1990 年给出的全实域上岩泽猜想的证明,另外 一部分是Ferrero和Washington在1979年给出的μ不变量的结论。这一个课题涵盖了大量20世纪数学的新发现,Iwasawa,Ferrero,Washington,Mazur,Hida 以及 Wiles 等人为这一领域做了许多重要的工作。岩泽理论后来
学位
目的:制备姜黄素缓释微球,以达到缓慢持续释放姜黄素的效果,从而解决姜黄素半衰期短、体内清除速度快等问题。同时,以壳聚糖/β-甘油磷酸钠温敏型水凝胶为支架材料,负载可控姜黄素缓释微球,原位放置于大鼠脊髓损伤处治疗脊髓损伤,并观察其对脊髓损伤早期炎症因子的影响。方法:1.姜黄素缓释微球的制备:将聚乳酸-羟基乙酸共聚物P(LA-GA)聚合物合成的姜黄素微球设为1、2号,将左旋聚乳酸-聚己内酯共聚物P(L
学位