一种基于FTS模型的病毒特征提取方法及系统
技术领域
本发明涉及信息安全技术领域,尤其涉及一种基于FTS模型的病毒特征提取方法及系统。
背景技术
信息安全领域中,针对病毒的分析与识别需要对其特征进行提取,而随着提取特征数量的增加,模型分类的准确度也有所提高,但是提取特征数量达到一定限度的时候,再增加特征,模型分类的准确度不是持续增加,反而会降低。这就是经典的“维数灾难”问题。通常不经专业筛选的特征空间一般是高维度且非线性,不仅占用存储空间,而且特征间的冗余度、特征与类别的相似度都没有考虑,导致分类的准确度降低。由此,控制特征空间的维度是至关重要的,特征既不能过剩,也不能缺失。
发明内容
本发明为解决上述问题,本发明提出一种基于FTS模型的病毒特征提取方法及系统,结合FTS模型算法以及GUS、GDS思想,通过将原始非线性高维样本空间通过高斯函数的变换映射到低维度的线性样本空间,提取一些表现突出的特征作为首选特征。此过程无需任何模型参数需要训练,操作简单,降维效果绝佳。虽然维度降低了,但仍含有一些冗余特征没有剔除干净,也没有考虑与类别的相关程度。所以,本发明还利用余弦度去除特征间的冗余,优选地,两个特征间的余弦值越小,表示不相关程度越大,余弦值越大,表示不相关程度越小,所以,保留余弦值小的特征值,剔除余弦值大的特征。利用相似度去除与类别无关的特征,优选地,两个特征间的相似度越小,表示与类别相关程度越小,相似度越大,表示与类别相关程度越大,保留相似度大的特征,剔除相似度小的特征。
具体发明内容包括:
一种基于FTS模型的病毒特征提取方法,包括:
收集病毒样本文件,提取样本文件信息,建立原始样本集;
按规定定义样本集包含的特征类别;
计算并得到原始样本集的高斯矩阵;
对高斯矩阵中心化,并计算中心化后的高斯矩阵的特征值和特征向量;
对特征值进行排序,选出规定特征值所对应的特征向量;
按规定对选出的特征向量进行计算,得到特征样本集;
将特征样本集中的特征与特征类别进行相似度计算,根据相似度计算结果选出指定的特征,并将指定特征存入中间特征样本集;
按规定对中间特征样本集中的特征进行计算,保留满足规定条件的特征,删除不满足规定条件的特征;
将满足规定条件的特征存入特征样本集,得到最优特征集。
进一步地,所述样本文件信息包括:文件名、扩展名、文件编码格式、MD5值、KMD5值。
进一步地,所述计算并得到原始样本集的高斯矩阵,具体为:将原始样本集映射到高维度线性特征空间中,计算原始样本集中各个病毒特征间的高斯函数值,得到高斯矩阵。
进一步地,所述对特征值进行排序,选出规定特征值所对应的特征向量,具体为:对特征值进行降序排序,从序列前端依次选出大于规定阈值且满足规定数量的特征值所对应的特征向量;或对特征值进行升序排序,从序列后端依次选出大于规定阈值且满足规定数量的特征值所对应的特征向量;根据不同场景和需求,所述规定阈值和规定数量可自行设置不同的值,一般情况下规定数量小于原始样本集中特征的数量。
进一步地,所述按规定对选出的特征向量进行计算,具体为:将选出的特征向量与原始样本集做积运算。
进一步地,所述将特征样本集中的特征与特征类别进行相似度计算,其计算方式包括:将所述特征与特征类别进行余弦计算、将所述特征与特征类别按照向量空间模型的形式进行相似度计算。
进一步地,所述根据相似度计算结果选出指定的特征,具体为:将计算得到的相似度结果进行降序排序,从序列前端依次选出与指定数量相对应的相似度结果所对应的特征;或将计算得到的相似度计算结果进行升序排序,从序列后端依次选出与指定数量相对应的相似度计算结果所对应的特征;根据不同场景和需求,所述指定数量可自行设置,一般地,该数量设置的数值越高,最终结果的精确度越高,反之最终结果的精确度越低。
进一步地,所述按规定对中间特征样本集中的特征进行计算,保留满足规定条件的特征,删除不满足规定条件的特征,具体为:计算中间特征样本集中的特征间的余弦值,将余弦值进行降序/升序排序,保留余弦值满足规定范围的余弦值所对应的特征,删除余弦值不满足规定范围的余弦值所对应的特征;根据不同场景和需求,所述余弦值得规定范围可自行设置,一般地,该数值范围越大,最终结果的精确度越高,反之最终结果的精确度越低。
进一步地,迭代执行下述过程,直到特征样本集中特征的数量满足预设条件,并得到最优特征集:将特征样本集中的特征与特征类别进行相似度计算,根据相似度计算结果选出指定的特征,并将指定特征存入中间特征样本集,按规定对中间特征样本集中的特征进行计算,保留满足规定条件的特征,删除不满足规定条件的特征,将满足规定条件的特征存入特征样本集;一般地,最优特征集中的特征数量不少于原始样本集中特征数量的一半。
另,当有新特征加入时,根据新进入的特征数量以及具体需求,只需进行上述一次或几次迭代过程即可,来确定新加入的特征是否可以加入最优特征集。
一种基于FTS模型的病毒特征提取系统,包括:
原始样本集建立模块,用于收集病毒样本文件,提取样本文件信息,建立原始样本集;
特征类别定义模块,用于按规定定义样本集包含的特征类别;
原始样本集降维模块,用于计算并得到原始样本集的高斯矩阵,并对高斯矩阵中心化,计算中心化后的高斯矩阵的特征值和特征向量;
特征样本集生成模块,用于对所述特征值进行排序,选出规定特征值所对应的特征向量,并按规定对选出的特征向量进行计算,得到特征样本集;
降低特征冗余度模块,用于将特征样本集中的特征与特征类别进行相似度计算,根据相似度计算结果选出指定的特征,并将指定特征存入中间特征样本集,按规定对中间特征样本集中的特征进行计算,保留满足规定条件的特征,删除不满足规定条件的特征;
最优特征集生成模块,用于将所述满足规定条件的特征存入特征样本集,得到最优特征集。
进一步地,所述样本文件信息包括:文件名、扩展名、文件编码格式、MD5值、KMD5值。
进一步地,所述计算并得到原始样本集的高斯矩阵,具体为:将原始样本集映射到高维度线性特征空间中,计算原始样本集中各个病毒特征间的高斯函数值,得到高斯矩阵。
进一步地,所述对特征值进行排序,选出规定特征值所对应的特征向量,具体为:对特征值进行降序排序,从序列前端依次选出大于规定阈值且满足规定数量的特征值所对应的特征向量;或对特征值进行升序排序,从序列后端依次选出大于规定阈值且满足规定数量的特征值所对应的特征向量;根据不同场景和需求,所述规定阈值和规定数量可自行设置不同的值,一般情况下规定数量小于原始样本集中特征的数量。
进一步地,所述按规定对选出的特征向量进行计算,具体为:将选出的特征向量与原始样本集做积运算。
进一步地,所述将特征样本集中的特征与特征类别进行相似度计算,其计算方式包括:将所述特征与特征类别进行余弦计算、将所述特征与特征类别按照向量空间模型的形式进行相似度计算。
进一步地,所述根据相似度计算结果选出指定的特征,具体为:将计算得到的相似度结果进行降序排序,从序列前端依次选出与指定数量相对应的相似度结果所对应的特征;或将计算得到的相似度计算结果进行升序排序,从序列后端依次选出与指定数量相对应的相似度计算结果所对应的特征;根据不同场景和需求,所述指定数量可自行设置,一般地,该数量设置的数值越高,最终结果的精确度越高,反之最终结果的精确度越低。
进一步地,所述按规定对中间特征样本集中的特征进行计算,保留满足规定条件的特征,删除不满足规定条件的特征,具体为:计算中间特征样本集中的特征间的余弦值,将余弦值进行降序/升序排序,保留余弦值满足规定范围的余弦值所对应的特征,删除余弦值不满足规定范围的余弦值所对应的特征;根据不同场景和需求,所述余弦值得规定范围可自行设置,一般地,该数值范围越大,最终结果的精确度越高,反之最终结果的精确度越低。
进一步地,迭代运行降低特征冗余度模块与最优特征集生成模块,直到特征样本集中特征的数量满足预设条件,并得到最终的最优特征集;一般地,最优特征集中的特征数量不少于原始样本集中特征数量的一半。
另,当有新特征加入时,根据新进入的特征数量以及具体需求,只需进行上述一次或几次迭代过程即可,来确定新加入的特征是否可以加入最优特征集。
本发明的有益效果是:
本发明能够有效降低病毒特征集的维度和特征冗余度,保障病毒特征集的精准性,并有效降低病毒特征集的资源空间占用;
进一步地,当有新特征加入时,只需将新特征与特征集中的特征进行相似度计算,确定其冗余度即可,使得特征集易于维护。
附图说明
为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明一种基于FTS模型的病毒特征提取的方法流程图;
图2为本发明一种基于FTS模型的病毒特征提取的系统结构图。
具体实施方式
为了使本技术领域的人员更好地理解本发明实施例中的技术方案,并使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图对本发明中技术方案作进一步详细的说明。
本发明给出了一种基于FTS模型的病毒特征提取的方法实施例,如图1所示,包括:
S101:收集病毒样本文件,提取样本文件信息,建立原始样本集;
S102:按规定定义样本集包含的特征类别;
S103:计算并得到原始样本集的高斯矩阵;
S104:对高斯矩阵中心化,并计算中心化后的高斯矩阵的特征值和特征向量;
S105:对特征值进行排序,选出规定特征值所对应的特征向量;
S106:按规定对选出的特征向量进行计算,得到特征样本集;
S107:将特征样本集中的特征与特征类别进行相似度计算,根据相似度计算结果选出指定的特征,并将指定特征存入中间特征样本集;
S108:按规定对中间特征样本集中的特征进行计算,保留满足规定条件的特征,删除不满足规定条件的特征;
S109:将满足规定条件的特征存入特征样本集,得到最优特征集。
优选地,所述样本文件信息包括:文件名、扩展名、文件编码格式、MD5值、KMD5值。
优选地,所述计算并得到原始样本集的高斯矩阵,具体为:将原始样本集映射到高维度线性特征空间中,计算原始样本集中各个病毒特征间的高斯函数值,得到高斯矩阵。
优选地,所述对特征值进行排序,选出规定特征值所对应的特征向量,具体为:对特征值进行降序排序,从序列前端依次选出大于规定阈值且满足规定数量的特征值所对应的特征向量;或对特征值进行升序排序,从序列后端依次选出大于规定阈值且满足规定数量的特征值所对应的特征向量;根据不同场景和需求,所述规定阈值和规定数量可自行设置不同的值,一般情况下规定数量小于原始样本集中特征的数量。
优选地,所述按规定对选出的特征向量进行计算,具体为:将选出的特征向量与原始样本集做积运算。
优选地,所述将特征样本集中的特征与特征类别进行相似度计算,其计算方式包括:将所述特征与特征类别进行余弦计算、将所述特征与特征类别按照向量空间模型的形式进行相似度计算。
优选地,所述根据相似度计算结果选出指定的特征,具体为:将计算得到的相似度结果进行降序排序,从序列前端依次选出与指定数量相对应的相似度结果所对应的特征;或将计算得到的相似度计算结果进行升序排序,从序列后端依次选出与指定数量相对应的相似度计算结果所对应的特征;根据不同场景和需求,所述指定数量可自行设置,一般地,该数量设置的数值越高,最终结果的精确度越高,反之最终结果的精确度越低。
优选地,所述按规定对中间特征样本集中的特征进行计算,保留满足规定条件的特征,删除不满足规定条件的特征,具体为:计算中间特征样本集中的特征间的余弦值,将余弦值进行降序/升序排序,保留余弦值满足规定范围的余弦值所对应的特征,删除余弦值不满足规定范围的余弦值所对应的特征;根据不同场景和需求,所述余弦值得规定范围可自行设置,一般地,该数值范围越大,最终结果的精确度越高,反之最终结果的精确度越低。
优选地,迭代执行下述过程,直到特征样本集中特征的数量满足预设条件,并得到最优特征集:将特征样本集中的特征与特征类别进行相似度计算,根据相似度计算结果选出指定的特征,并将指定特征存入中间特征样本集,按规定对中间特征样本集中的特征进行计算,保留满足规定条件的特征,删除不满足规定条件的特征,将满足规定条件的特征存入特征样本集;一般地,最优特征集中的特征数量不少于原始样本集中特征数量的一半。
另,当有新特征加入时,根据新进入的特征数量以及具体需求,只需进行上述一次或几次迭代过程即可,来确定新加入的特征是否可以加入最优特征集。
本发明还给出了一种基于FTS模型的病毒特征提取的系统实施例,如图2所述,包括:
原始样本集建立模块201,用于收集病毒样本文件,提取样本文件信息,建立原始样本集;
特征类别定义模块202,用于按规定定义样本集包含的特征类别;
原始样本集降维模块203,用于计算并得到原始样本集的高斯矩阵,并对高斯矩阵中心化,计算中心化后的高斯矩阵的特征值和特征向量;
特征样本集生成模块204,用于对所述特征值进行排序,选出规定特征值所对应的特征向量,并按规定对选出的特征向量进行计算,得到特征样本集;
降低特征冗余度模块205,用于将特征样本集中的特征与特征类别进行相似度计算,根据相似度计算结果选出指定的特征,并将指定特征存入中间特征样本集,按规定对中间特征样本集中的特征进行计算,保留满足规定条件的特征,删除不满足规定条件的特征;
最优特征集生成模块206,用于将所述满足规定条件的特征存入特征样本集,得到最优特征集。
优选地,所述样本文件信息包括:文件名、扩展名、文件编码格式、MD5值、KMD5值。
优选地,所述计算并得到原始样本集的高斯矩阵,具体为:将原始样本集映射到高维度线性特征空间中,计算原始样本集中各个病毒特征间的高斯函数值,得到高斯矩阵。
优选地,所述对特征值进行排序,选出规定特征值所对应的特征向量,具体为:对特征值进行降序排序,从序列前端依次选出大于规定阈值且满足规定数量的特征值所对应的特征向量;或对特征值进行升序排序,从序列后端依次选出大于规定阈值且满足规定数量的特征值所对应的特征向量;根据不同场景和需求,所述规定阈值和规定数量可自行设置不同的值,一般情况下规定数量小于原始样本集中特征的数量。
优选地,所述按规定对选出的特征向量进行计算,具体为:将选出的特征向量与原始样本集做积运算。
优选地,所述将特征样本集中的特征与特征类别进行相似度计算,其计算方式包括:将所述特征与特征类别进行余弦计算、将所述特征与特征类别按照向量空间模型的形式进行相似度计算。
优选地,所述根据相似度计算结果选出指定的特征,具体为:将计算得到的相似度结果进行降序排序,从序列前端依次选出与指定数量相对应的相似度结果所对应的特征;或将计算得到的相似度计算结果进行升序排序,从序列后端依次选出与指定数量相对应的相似度计算结果所对应的特征;根据不同场景和需求,所述指定数量可自行设置,一般地,该数量设置的数值越高,最终结果的精确度越高,反之最终结果的精确度越低。
优选地,所述按规定对中间特征样本集中的特征进行计算,保留满足规定条件的特征,删除不满足规定条件的特征,具体为:计算中间特征样本集中的特征间的余弦值,将余弦值进行降序/升序排序,保留余弦值满足规定范围的余弦值所对应的特征,删除余弦值不满足规定范围的余弦值所对应的特征;根据不同场景和需求,所述余弦值得规定范围可自行设置,一般地,该数值范围越大,最终结果的精确度越高,反之最终结果的精确度越低。
优选地,迭代运行降低特征冗余度模块与最优特征集生成模块,直到特征样本集中特征的数量满足预设条件,并得到最终的最优特征集;一般地,最优特征集中的特征数量不少于原始样本集中特征数量的一半。
另,当有新特征加入时,根据新进入的特征数量以及具体需求,只需进行上述一次或几次迭代过程即可,来确定新加入的特征是否可以加入最优特征集。
本说明书中方法的实施例采用递进的方式描述,对于系统的实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。本发明提出一种基于FTS模型的病毒特征提取方法及系统,结合FTS模型算法以及GUS、GDS思想,通过将原始非线性高维样本空间通过高斯函数的变换映射到低维度的线性样本空间,提取一些表现突出的特征作为首选特征。此过程无需任何模型参数需要训练,操作简单,降维效果绝佳。本发明能够有效降低病毒特征集的维度和特征冗余度,保障病毒特征集的精准性,并有效降低病毒特征集的资源空间占用;进一步地,当有新特征加入时,只需将新特征与特征集中的特征进行相似度计算,确定其冗余度即可,使得特征集易于维护。
虽然通过实施例描绘了本发明,本领域普通技术人员知道,本发明有许多变形和变化而不脱离本发明的精神,希望所附的权利要求包括这些变形和变化而不脱离本发明的精神。