Identifying Linux Bug Fixing Patches阅读笔记

Identifying Linux Bug Fixing Patches阅读笔记

2012 IEEE

论文概述

当前许多修复补丁可能由于系统维护人员的差异,导致许多linux内核补丁未打上,本文提出基于代码仓库提交的记录信息和变化,利用机器学习的技术自动识别补丁。本文提出的方法相较于在内核信息中识别关键字的方法,准确度与其相似的情况下,召回率提高53.19%

技术思路

1.数据获取:从linux代码仓库中提取提交的更新代码信息。
2.特征提取:减少数据集为一些潜在的不同维度,根据文本描述区分哪些是修复漏洞补丁,那些是代码优化补丁。
3.模型学习:通过分析特征与补丁对应关系,构建模型试着将漏洞修复补丁与其他补丁区分开。
4.漏洞修复补丁识别:应用模型从未标记的数据中获取漏洞修复补丁。

识别模型构建过程

LPU:采用半监督机器学习分类方式,喂正面的数据和未标记的数据。
SVM:有监督机器学习,喂正面和反面的数据。
整个模型首先使用LPU算法将经过正面数据训练的模型用其排位未标记的数据指针,将人为定义的底部k参数和排位后的数据一起作为SVM算法的输入,形成最终构建模型。
如下图
在这里插入图片描述

实验概述

黑色数据集由已知稳定版补丁和漏洞修复工具创建的补丁构成,灰色数据集则是指定内核版本区间内的补丁。

通过LPU算法分类正数据集和未标记数据集并利用费舍尔值排名,再利用svm监督学习算法区分出未标记数据中的非漏洞补丁,最后通过准确率和召回率衡量识别的准确度。

黑色数据集如下
在这里插入图片描述
灰色数据集如下
在这里插入图片描述
本文方法与关键字方法正确率和召回率对比如下
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值