DeepTriage: 探索深度学习在漏洞分配中的有效性
本研究通过使用 DeBERTa 技术,对 53 年的开源数据集进行了自动故障调整的任务进行了量化和定性分析,结果表明 DeBERTa 是在开发者和组件分配等任务中最有效的技术。
Oct, 2023
本文提出了一种基于自然语言处理技术的方法,考虑 Bug 报告的结构化和非结构化属性,例如概述、描述、严重性、影响产品、平台和类别等信息,利用自定义数据转换器、深度神经网络和非泛化机器学习方法检索现有的相同 Bug 报告,并在大量数据来源的众多实验中展示了所提出的解决方案在召回率为 5 时的高检索准确性为 70%。
Dec, 2022
本文提出利用神经网络的方式,同时检测软件缺陷汇报是否为重复报告,并将它们聚合成潜在的主题,并证明该模型可以取得比现有方法更好的效果,并且还可以在无监督的情况下学习到有意义的潜在聚类。
Mar, 2019
本研究提出了一种新的自动分类缺陷报告的方法,采用自然语言处理技术对文本信息进行预处理,并综合考虑缺陷报告的意图,包括 Apache、Eclipse、Gentoo、Mozilla 等四个生态系统,使用 BERT 和 TF-IDF 技术提取特征,训练分类器后实验结果表明,我们的方法的 F-Measure 从 87.3% 提高到了 95.5%。
Aug, 2022
本文介绍了一种基于 DeepBugs 的学习方法,结合了自然语言元素和语义表示进行代码中的错误检测,并通过简单的代码转换生成了可能的错误代码示例,应用该方法到 150,000 个 JavaScript 文件中,获得了高准确率的错误检测结果。
Apr, 2018
DeepDebug 是数据驱动的程序修复方法,其可以从 GitHub 代码库中挖掘的实际 Java 方法中学习检测和修复错误的方法。通过将错误修补构建为序列到序列的学习任务,它实现了两个步骤,即去噪预训练和有监督的微调。本方法显示出比以前的工作更好的异常检测能力,并且可以使用通用解析器进行语言无关的方法。
Apr, 2021
DeepDebug 是一种使用大型预训练变压器的自动调试方法,可通过训练反转的提交数据来生成人工合成缺陷,并通过将这些缺陷应用于功能测试,提供调试信息并改进模型的预训练,并在 QuixBugs 测试中取得良好成果。
May, 2021
通过评估 14 个不同的嵌入模型并开发相应的漏洞定位模型,我们的研究表明,预训练策略显著影响嵌入质量,并且嵌入模型对数据的熟悉程度对漏洞定位模型的性能有着显著影响。当训练数据和测试数据来自不同的项目时,漏洞定位模型的性能会出现大幅波动。
Jun, 2024
BugLab 是一种基于机器学习的、自监督学习为主的程序分析方法,通过两个模型共同训练,可以有效地发现和修复代码中的错误,提高了 2374 个真实缺陷数据集的检测和修复准确度,同时发现了 19 个以前未知的错误。
May, 2021