基于机器学习的代码漏洞检测机制研究与应用

来源 :电子科技大学 | 被引量 : 2次 | 上传用户:hunterring1
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
随着科技的发展软件应用越来越广泛,人们对软件的依赖程度也越来越来大,同时伴随而来的软件安全问题也越来越受到大家的重视。其中软件漏洞是软件的首要安全隐患也是影响软件稳定性和有效性的主要因素。预测软件漏洞与缺陷成为了解决安全和稳定性问题的当务之急,因此受到了广泛的关注,吸引了一大批的研究者。同时机器学习的发展为软件漏洞与缺陷预测提供了新的方法,基于机器学习的代码漏洞预测成为了研究的热点。本文主要研究了代码度量方法与特征选择方法,以及类别不平衡问题在代码漏洞预测中的影响和软件漏洞预测中迁移学习问题,主要研究内容及成果分为以下三部分:(1)类别不平衡问题对软件漏洞预测模型的性能影响分析。提出一种类别不平衡对代码漏洞预测模型的影响分析方法,通过smote方法与随机欠采样的方法构建了不同不平衡数据集,对比不同算法在此数据集族的预测性能。最后得出随机森林与k近邻算法在不平衡数据集的预测性能较为稳定,能够容忍一定的不平衡率,其中随机森林稳定性最好。同时,通过实验验证了smote方法与随机欠采样的方法处理不平衡数据提升模型性能的有效性。(2)代码漏洞与缺陷的特征选择与度量方法分析。提出了一种特征选择和评价两种不同度量特征的方法,基于核主成分分析的特征选择过程。根据不同核函数来选择不同维度的特征,然后通过模型训练验证和评价代码它们的分类性能。对比两种度量方式及不同核函数在其上的作用效果,最终表明,基于面向对象的度量方法Chidamber&Kemerer比面向过程的度量方法McCabe&Halsted效果更好,他们在主成分分中用线性核函数来进行特征变换能达到最好的效果。(3)基于特征的迁移学习预测模型研究。提出了一种基于特征的迁移学习方法。通过主成分分析方法将不同数据集的特征之间建立对应关系,分别取不同维度的特征数。对比模型在不同维度的特征的性能效果。经过实验验证,这种基于主成分分析的特征迁移学习方法具有一定的可行性,可以达到较好的效果。
其他文献
百白破混合制剂(DPT),是由百日咳疫苗、白喉、破伤风类毒素按适当比例混合配置而成,为用于预防百日咳、白喉、破伤风的免疫预防制剂。DPT是一种安全有效、应用广泛,EPI规定的必用
目的:探讨楔状缺损的修复方法和疗效。方法:楔状缺损患者龈壁和壁距唇颊面0.5~1.0mm处制备凹槽,垫底后树脂修复。结果:通过1年后的临床就诊复查,完好率92.5%。结论:该方法在楔缺修
分析嵌入式实时数据库安全缓冲管理算法SABRE,将其引入到开源数据库Berkeley DB的缓冲中,设计实时安全缓冲区管理器。一般实时数据库的缓冲区管理都基于优先级,在设计中将安
颈内动脉海绵窦瘘(CCF)也称搏动性突眼综合征或红眼一短路综合征,常以“红眼”、眼球突出而就诊于眼科,若误诊延误治疗可导致视功能丧失,甚至危及生命。
<正>随着我国智慧城市、平安城市、雪亮工程战略的深入发展,目前各部门行业安装的摄像机数量已超过2500万台,并初步构建起了覆盖公共区域、要害部位的"天网"。全国公安机关也