训练过程如何影响基于深度学习的漏洞修补性能
软件工程
2024-04-30 v1
摘要
生成式深度学习(DL)模型已成功应用于漏洞修补。然而,此类模型需要拥有大量补丁数据集才能学习。为了克服这个问题,研究人员提出从具有通用知识的预训练模型开始,这些知识要么是关于编程语言的,要么是关于类似任务(如缺陷修复)的。尽管在自动化漏洞修补领域付出了努力,但对于这些不同的训练过程如何影响DL模型在此类任务上的性能,仍缺乏系统性的研究。本文通过以下方式为弥合这一差距做出了多方面贡献:(i)比较了用于漏洞修补的现有自监督和监督预训练解决方案;(ii)首次针对此任务尝试了不同类型的提示微调。该研究需要训练/测试23个DL模型。我们发现,专注于缺陷修复的监督预训练虽然在数据收集方面成本高昂,但能显著提升基于DL的漏洞修补性能。在此监督预训练模型之上应用提示微调时,性能没有显著提升。相反,提示微调是一种有效且廉价的解决方案,可以大幅提升自监督预训练模型(即那些不依赖缺陷修复预训练的模型)的性能。
引用
@article{arxiv.2404.17896,
title = {How the Training Procedure Impacts the Performance of Deep Learning-based Vulnerability Patching},
author = {Antonio Mastropaolo and Vittoria Nardone and Gabriele Bavota and Massimiliano Di Penta},
journal= {arXiv preprint arXiv:2404.17896},
year = {2024}
}