国内刊号:11-2560/TP
国际刊号:1000-9825
发布日期:
作者:邢颖,赵梦赐,杨斌,张俞炜,李文瑾,顾佳伟,袁军
单位:邢颖,北京邮电大学 人工智能学院, 北京 100876;高安全系统的软件开发与验证技术工业和信息化部重点实验室(南京航空航天大学), 江苏 南京 21110611,赵梦赐,北京邮电大学 人工智能学院, 北京 100876;高安全系统的软件开发与验证技术工业和信息化部重点实验室(南京航空航天大学), 江苏 南京 21110602,杨斌,中国联通研究院, 北京 10004803,张俞炜,中国科学院 软件研究所, 北京 10019004,李文瑾,绿盟科技集团股份有限公司, 北京 10008905,顾佳伟,绿盟科技集团股份有限公司, 北京 10008906,袁军,绿盟科技集团股份有限公司, 北京 10008907
关键词:缺陷类别预测;多源域适应;对抗训练;注意力机制
基金:高安全系统的软件开发与验证技术工业和信息化部重点实验室资助项目(NJ2023031);云南省软件工程重点实验室开放基金(2023SE202);CCF-绿盟科技“鲲鹏”科研计划(CCF-NSFOCUS202212)
随着规模和复杂性的迅猛膨胀, 软件系统中不可避免地存在缺陷. 近年来, 基于深度学习的缺陷预测技术成为软件工程领域的研究热点. 该类技术可以在不运行代码的情况下发现其中潜藏的缺陷, 因而在工业界和学术界受到了广泛的关注. 然而, 已有方法大多关注方法级的源代码中是否存在缺陷, 无法精确识别具体的缺陷类别, 从而降低了开发人员进行缺陷定位及修复工作的效率. 此外, 在实际软件开发实践中, 新项目通常缺乏足够的缺陷数据来训练高精度的深度学习模型, 而利用已有项目的历史数据训练好的模型往往在新项目上无法达到良好的泛化性能. 因此, 首先将传统的二分类缺陷预测任务表述为多标签分类问题, 即, 使用CWE (common weakness enumeration)中描述的缺陷类别作为细粒度的模型预测标签. 为了提高跨项目场景下的模型性能, 提出一种融合对抗训练和注意力机制的多源域适应框架. 该框架通过对抗训练来减少域(即软件项目)差异,并进一步利用域不变特征来获得每个源域和目标域之间的特征相关性. 同时, 该框架还利用加权最大均值差异作为注意力机制, 以最小化源域和目标域特征之间的表示距离, 从而使模型可以学习到更多的域无关特征. 在构建的包含8个真实世界开源项目的数据集上的实验表明, 所提方法对比最先进的基线方法取得了显著的性能提升.
来源:2024年第7期
《软件学报》期刊编辑部