国内刊号:11-2560/TP
国际刊号:1000-9825
发布日期:
作者:郑炜,陈军正,吴潇雪,陈翔,夏鑫
单位:郑炜,西北工业大学 软件学院, 陕西 西安 710072;空天地海一体化大数据应用技术国家工程实验室(西北工业大学), 陕西 西安 710072;大数据存储与管理工业和信息化部重点实验室(西北工业大学), 陕西 西安 71007211,陈军正,西北工业大学 软件学院, 陕西 西安 71007202,吴潇雪,西北工业大学 自动化学院, 陕西 西安 71007203,陈翔,西北工业大学 软件学院, 陕西 西安 710072;南通大学 信息科学技术学院, 江苏 南通 22601904,夏鑫,Faculty of Information Technology, Monash University, Melbourne, VIC 3800, Australia05
关键词:安全缺陷;安全缺陷报告预测;深度学习;文本挖掘
基金:陕西省工业科技攻关项目(2015GY073);陕西省重点研发计划(2019GY-057)
软件安全问题的发生在大多数情况下会造成非常严重的后果,及早发现安全问题,是预防安全事故的关键手段之一.安全缺陷报告预测可以辅助开发人员及早发现被测软件中潜藏的安全缺陷,从而尽早得以修复.然而,由于安全缺陷在实际项目中的数量较少,而且特征复杂(即安全缺陷类型繁多,不同类型安全缺陷特征差异性较大),这使得手工提取特征相对困难,并随后造成传统机器学习分类算法在安全缺陷报告预测性能方面存在一定的瓶颈.针对该问题,提出基于深度学习的安全缺陷报告预测方法,采用深度文本挖掘模型TextCNN和TextRNN构建安全缺陷报告预测模型;针对安全缺陷报告文本特征,使用Skip-Gram方式构建词嵌入矩阵,并借助注意力机制对TextRNN模型进行优化.所构建的模型在5个不同规模的安全缺陷报告数据集上展开了大规模实证研究,实证结果表明,深度学习模型在80%的实验案例中都优于传统机器学习分类算法,性能指标F1-score平均可提升0.258,在最好的情况下甚至可以提升0.535.此外,针对安全缺陷报告数据集存在的类不均衡问题,对不同采样方法进行了实证研究,并对结果进行了分析.
来源:2020年第5期
《软件学报》期刊编辑部