首页 / 专利库 / 电脑零配件 / 固件 / 软件 / 恶意软件 / 一种基于烟花算法和支持向量机的恶意软件检测方法

一种基于烟花算法支持向量机的恶意软件检测方法

阅读:285发布:2020-05-08

专利汇可以提供一种基于烟花算法支持向量机的恶意软件检测方法专利检索,专利查询,专利分析的服务。并且本 发明 公开了一种基于烟花 算法 和 支持向量机 的恶意 软件 检测方法,利用烟花算法自适应进化特性,实现对支持向量机参数的自适应调节,使得模型利用软件特征数据集进行训练学习过程中能够有效实现自适应提高 恶意软件 检测准确率,能够用于计算机信息安全领域中;本发明采用正确率均值作为评价函数有效地避免了训练模型在某一数据集上出现过拟合的情况,可以很好地、客观地提升模型整体性能,提高鲁棒性,同时采用烟花算法优化求解最优参数,可以满足快速自适应增强恶意软件检测 精度 的要求。,下面是一种基于烟花算法支持向量机的恶意软件检测方法专利的具体信息内容。

1.一种基于烟花算法支持向量机的恶意软件检测方法,其特征在于,包括以下步骤:
步骤1:输入带有标签的恶意软件特征数据集,1表示该特征向量对应恶意软件,0表示该特征向量对应正常软件;其中,特征向量为非标签的所有属性;
步骤2:利用已获得的恶意软件特征数据集,对于数据集中每一个特征进行规范化预处理,将特征值变换到预设区间;
步骤3:采用简单交叉验证将归一化处理后的数据集,按比例划分成训练集Xtrain和测试集Ytrain,并使用训练集进行训练,测试集用于验证,避免在训练过程中出现过拟合的现象;
步骤4:采用3折交叉验证得到的支持向量机平均正确率作为适应度函数,将训练集进行3折划分,每次用其中两组作为训练集给支持向量机进行训练,另外一组作为测试得到正确率,并取三次正确率平均值作为该组支持向量机参数所对应的适应度值,求得支持向量机最优C,β参数;
步骤5:利用步骤4中求得的最优参数生成针对恶意软件检测的最佳检测模型;求得的最优参数生成针对恶意软件检测的最佳检测模型,将取得最佳适应度的C和β设置给支持向量机并使用训练集Xtrain和Ytrain进行训练,得到最佳恶意软件检测模型;
步骤6:利用最佳恶意软件检测模型进行恶意软件检测。
2.根据权利要求1所述基于烟花算法和支持向量机的恶意软件检测方法,其特征在于,步骤2中将特征值变换到预设区间[lower,upper],具体实现包括以下子步骤:
步骤2.1:设置参数下界lower,上界upper;
步骤2.2:遍历对应列属性,即对应特征,找到最大值max和最小值min;
步骤2.3:对该列属性值进行放缩处理,变换到[lower,upper]区间。
3.根据权利要求2所述基于烟花算法和支持向量机的恶意软件检测方法,其特征在于,步骤2.3中所述对该列属性值进行放缩处理,其处理公式为:
其中,ynew为规范化后的数据,yold为规范化前的数据,lower为数据的下界,upper为数据上界;min为训练数据中的最小值,max为训练数据中的最大值。
4.根据权利要求1所述基于烟花算法和支持向量机的恶意软件检测方法,其特征在于,步骤3的具体实现包括以下子步骤:
步骤3.1:读入带有标签的恶意软件数据集,将数据集特征向量和标签分离成数据集data和标签label;
步骤3.2:随机从data中选取n条数据及label中对应数据作为训练集特征向量Xtrain和训练集标签Ytrain,剩余数据作为测试集特征向量Xtest和测试集标签Ttest;
步骤3.3:将Xtrain和Ytrain传给步骤4。
5.根据权利要求4所述基于烟花算法和支持向量机的恶意软件检测方法,其特征在于,步骤4的具体实现包括以下子步骤:
步骤4.1:读入步骤3中得到的Xtrain和Ytrain,初始化烟花算法所需参数,得到算法的初始种群;
初始化烟花算法所需参数,得到算法的初始种群;参数包括迭代次数Iter、算法的种群规模n、特征向量维度dim、高斯选择数量gaussnum、解上界upper、解下界lower、最多子代个数b、最少子代个数a;
步骤4.2:烟花算法中烟花的位置就是支持向量机参数C和β的组合,利用适应度函数计算适应度函数值,记录并保留当前最优烟花位置A;
步骤4.3:利用烟花算法中的子代烟花生成公式生成新的烟花,并计算新烟花的适应度函数值,比较这组解的适应度函数值并记其具有最优适应度函数值的位置为B;
步骤4.4:将位置B的适应度函数值与上一代当前最优烟花位置A的适应度函数值进行对比,若更好,则将其作为当前最优烟花位置A;
步骤4.5:如果还未达到最大迭代次数,则跳转到步骤4.3继续执行。
6.根据权利要求5所述基于烟花算法和支持向量机的恶意软件检测方法,其特征在于,步骤4.3中的所述利用烟花算法中的子代烟花生成公式生成新的烟花的公式为:
其中,f(xi)是适应度函数,m是用与控制生成子代烟花个数的参数;numi是第i个烟花爆炸后新生成的子代烟花个数,在所有烟花的适应度值中ymin是最低适应度值,ξ是很小的数用来避免得到结果为0;numi的值被限定在范围[a,b]之间,当numi小于a,numi的值被映射回a,当numi的值大于b,numi的值被映射回b,此外当numi为小数时,对其四舍五入取整。

说明书全文

一种基于烟花算法支持向量机的恶意软件检测方法

技术领域

[0001] 本发明属于智能计算和信息安全的交叉应用技术领域,具体涉及一种基于烟花算法和支持向量机的恶意软件检测方法。

背景技术

[0002] 恶意软件是一种设计用来使用非法手段未经用户授权窃取目标计算机系统用户信息、破坏目标计算机正常系统性能的软件。为了避免计算机用户因遭受恶意软件攻击而蒙受不必要的经济损失,恶意软件检测技术随着发展而来。恶意软件检测技术主要分为两大类:静态分析技术和动态分析技术。其中静态分析技术检查程序代码,但并不运行程序。相对于动态分析技术而言,这种技术很大程度上提升了对恶意软件的检测效率,但只能检测现有已知的恶意程序且对运行过程中自身程序结构发生变化的恶意软件程序无法识别。
而对于动态分析技术,其动态跟踪程序运行状态,通过分析程序的实际运行行为来检测恶意软件。动态分析技术过程较为复杂,其分析程序进程、网络、文件操作等运行状态,需要运行程序后才能判断是否是恶意软件,该特性使其可以检测当前未知的恶意软件。为此,基于机器学习的动态检测方法随之兴起,其中之一便是使用支持向量机训练恶意软件检测模型,实现对恶意软件的动态检测。但支持向量机参数众多,传统的基于经验规律的参数调节太过低效。

发明内容

[0003] 为解决上述技术问题,本发明提出一种基于烟花算法和支持向量机的恶意软件检测方法,利用烟花算法自适应进化特性,实现对支持向量机参数的自适应调节,使得模型利用软件特征数据集进行训练学习过程中能够有效实现自适应提高恶意软件检测准确率,可以达到快速自适应增强恶意软件检测的目的。
[0004] 本发明所采用的技术方案是:一种基于烟花算法和支持向量机的恶意软件检测方法,包括以下步骤:
[0005] 步骤1:输入带有标签的恶意软件特征数据集,1表示该特征向量对应恶意软件,0表示该特征向量对应正常软件;其中,特征向量为非标签的所有属性;
[0006] 步骤2:利用已获得的恶意软件特征数据集,对于数据集中每一个特征进行规范化预处理,将特征值变换到预设区间;
[0007] 步骤3:采用简单交叉验证将归一化处理后的数据集,按比例划分成训练集Xtrain和测试集Ytrain,并使用训练集进行训练,测试集用于验证,避免在训练过程中出现过拟合的现象;
[0008] 步骤4:采用3折交叉验证得到的支持向量机平均正确率作为适应度函数,将训练集进行3折划分,每次用其中两组作为训练集给支持向量机进行训练,另外一组作为测试得到正确率,并取三次正确率平均值作为该组支持向量机参数所对应的适应度值,求得支持向量机最优C,β参数;
[0009] 步骤5:利用步骤4中求得的最优参数生成针对恶意软件检测的最佳检测模型;
[0010] 求得的最优参数生成针对恶意软件检测的最佳检测模型,将取得最佳适应度的C和β设置给支持向量机并使用训练集Xtrain和Ytrain进行训练,得到最佳恶意软件检测模型;
[0011] 步骤6:利用最佳恶意软件检测模型进行恶意软件检测。
[0012] 本发明的有益效果是:利用烟花算法对支持向量机的C,β参数进行优化求解,并采用定义的适应度评价函数对恶意软件检测的效果进行评价。本发明采用正确率均值作为评价函数有效地避免了训练模型在某一数据集上出现过拟合的情况,可以很好地、客观地提升模型整体性能,提高鲁棒性,同时采用烟花算法优化求解最优参数,可以达到快速自适应增强恶意软件检测精度的目的。附图说明
[0013] 图1:本发明实施例流程图
[0014] 图2:本发明实施例的利用烟花算法获取最优支持向量机模型最优参数C、β的流程图;

具体实施方式

[0015] 为了便于本领域普通技术人员理解和实施本发明,下面结合附图及实施例对本发明作进一步的详细描述,需要说明的是烟花算法是已有优化技术,应当理解,此处所描述的实施示例仅用于说明和解释本发明,并不用于限定本发明。
[0016] 请见图1、图2,本发明所采用的技术方案是:一种基于烟花算法和支持向量机的恶意软件检测方法,包括以下步骤:
[0017] 步骤1:输入带有标签的恶意软件特征数据集,1表示该特征向量对应恶意软件,0表示该特征向量对应正常软件;其中,特征向量为非标签的所有属性;
[0018] 步骤2:利用已获得的恶意软件特征数据集,对于数据集中每一个特征进行规范化预处理,将特征值变换到预设区间;
[0019] 本实施例中,将特征值变换到预设区间[lower,upper],具体实现包括以下子步骤:
[0020] 步骤2.1:设置参数下界lower,上界upper;
[0021] 步骤2.2:遍历对应列属性,即对应特征,找到最大值max和最小值min;
[0022] 步骤2.3:对该列属性值进行放缩处理,变换到[lower,upper]区间。
[0023] 放缩处理公式如下为:
[0024]
[0025] 其中ynew为规范化后的数据,yold为规范化前的数据,lower为数据的下界,upper为数据上界;min为训练数据中的最小值,max为训练数据中的最大值。
[0026] 步骤3:采用简单交叉验证将归一化处理后的数据集,按比例划分成训练集Xtrain和测试集Ytrain,并使用训练集进行训练,测试集用于验证,避免在训练过程中出现过拟合的现象;
[0027] 具体实现包括以下子步骤:
[0028] 步骤3.1:读入带有标签的恶意软件数据集,将数据集特征向量(非标签的所有属性)和标签分离成数据集data和标签label;
[0029] 步骤3.2:随机从data中选取n条数据及label中对应数据作为训练集特征向量Xtrain和训练集标签Ytrain,剩余数据作为测试集特征向量Xtest和测试集标签Ttest;
[0030] 步骤3.3:将Xtrain和Ytrain传给步骤4。
[0031] 步骤4:采用3折交叉验证得到的支持向量机平均正确率作为适应度函数,将训练集进行3折划分,每次用其中两组作为训练集给支持向量机进行训练,另外一组作为测试得到正确率,并取三次正确率平均值作为该组支持向量机参数所对应的适应度值,求得支持向量机最优C,β参数;
[0032] 本实施例采用的3折交叉验证模型如下表1:
[0033] 表1
[0034]训练集 1 2 3
组1 训练集 训练集 测试集
组2 训练集 测试集 训练集
组3 测试集 训练集 训练集
[0035] 步骤4的具体实现包括以下子步骤:
[0036] 步骤4.1:读入步骤3中得到的Xtrain和Ytrain,初始化烟花算法所需参数,得到算法的初始种群;
[0037] 初始化烟花算法所需参数,得到算法的初始种群;参数包括迭代次数Iter、算法的种群规模n、特征向量维度dim、高斯选择数量gaussnum、解上界upper、解下界lower、最多子代个数b、最少子代个数a;
[0038] 步骤4.2:烟花算法中烟花的位置就是支持向量机参数C和β的组合,利用适应度函数计算适应度函数值,记录并保留当前最优烟花位置A;
[0039] 步骤4.3:利用烟花算法中的子代烟花生成公式生成新的烟花,并计算新烟花的适应度函数值,比较这组解的适应度函数值并记其具有最优适应度函数值的位置为B;
[0040] 其中,利用烟花算法中的子代烟花生成公式生成新的烟花的公式为:
[0041]
[0042] 其中,f(xi)是适应度函数,m是用与控制生成子代烟花个数的参数;numi是第i个烟花爆炸后新生成的子代烟花个数,在所有烟花的适应度值中ymin是最低适应度值,ξ是很小的数用来避免得到结果为0;numi的值被限定在范围[a,b]之间,当numi小于a,numi的值被映射回a,当numi的值大于b,numi的值被映射回b,此外当numi为小数时,对其四舍五入取整。
[0043] 步骤4.4:将位置B的适应度函数值与上一代当前最优烟花位置A的适应度函数值进行对比,若更好,则将其作为当前最优烟花位置A;
[0044] 步骤4.5:如果还未达到最大迭代次数,则跳转到步骤4.3继续执行。
[0045] 步骤5:利用步骤4中求得的最优参数生成针对恶意软件检测的最佳检测模型;
[0046] 求得的最优参数生成针对恶意软件检测的最佳检测模型,将取得最佳适应度的C和β设置给支持向量机并使用训练集Xtrain和Ytrain进行训练,得到最佳恶意软件检测模型;
[0047] 步骤6:利用最佳恶意软件检测模型进行恶意软件检测。
[0048] 本发明通过利用烟花算法对支持向量机模型训练最优参数问题优化求解,从而可以快速的获得支持向量机C、β最优参数,该方法可用于信息安全相关领域中。
[0049] 应当理解的是,本说明书未详细阐述的部分均属于现有技术;上述针对较佳实施例的描述较为详细,并不能因此而认为是对本发明专利保护范围的限制,本领域的普通技术人员在本发明的启示下,在不脱离本发明权利要求所保护的范围情况下,还可以做出替换或变形,均落入本发明的保护范围之内,本发明的请求保护范围应以所附权利要求为准。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈