当前位置: 首页 > 专利查询>河海大学专利>正文

一种基于加权Word2vec的漏洞自动分类方法及系统技术方案

技术编号:33391088 阅读:18 留言:0更新日期:2022-05-11 23:08
本发明专利技术公开了一种基于加权Word2vec的漏洞自动分类方法及系统,包括:步骤1:对原始漏洞文本进行预处理,形成漏洞文本信息词集;步骤2:采用Word2vec模型对漏洞文本信息词集中的每个词进行词向量化,得到词向量;步骤3:使用T

【技术实现步骤摘要】
一种基于加权Word2vec的漏洞自动分类方法及系统


[0001]本专利技术涉及一种基于加权Word2vec的漏洞自动分类方法及系统,属于自然语言处理和信息安全领域。

技术介绍

[0002]近些年以来,随着许多行业信息化程度的提高,网络信息安全问题也变得越来越严重。而这些安全问题主要是由软件漏洞引起的。漏洞是计算机信息系统在需求、设计、实现﹑配置、运行等过程中,有意或无意产生的缺陷。一旦信息系统的漏洞被不法分子恶意攻击利用,那么信息系统的安全性将会有很大的风险,可能会造成不可估量的后果。近些年来,漏洞的种类和数量逐渐增多,因此对软件漏洞的管理和分析变得越来越重要。如果能够对漏洞进行有效地分类管理,不但可以提高漏洞的修复和管理的效率,也可以减少系统被攻击和破坏的风险,对系统的安全性能尤为重要。
[0003]近年来,机器学习算法被广泛应用于各个研究领域,并取得了进展,同样将机器学习应用于软件漏洞分类上形成了自动漏洞分类方法,并取得了较好的效果。Davari等人提出了一种基于激活漏洞条件的自动漏洞分类框架,使用不同的机器学习技术(随机森林、C4.5决策树、逻辑回归和朴素贝叶斯)来构造具有最高F度量的分类器。并使用Firefox项目中的580个软件安全漏洞来评估分类的有效性。Dumidu Wijayasekara等研究人员通过使用所获得的漏洞描述数据,对朴素贝叶斯分类器实施了分类实验,并且分析表明了朴素贝叶斯分类方法根据漏洞文本数据实现漏洞分类的可实施性。但随着漏洞数据越来越多,并且漏洞描述文本简短且生成的词向量空间具有高维和稀疏的特征,导致这些方法分类效果不理想。因此,越来越多的研究将深度学习应用到漏洞的自动化分类中。
[0004]Singh S.K等人证明了深度神经网络模型可以提高软件漏洞分类的正确性。刘烊侨等人提出了一种漏洞自动分类模型,用NVD上的数据集比较了Word2Vec

CNN模型与三个基线深度学习模型(One

hot

CNN,One

hot

RNN和Word2Vec

RNN)和传统的机器学习算法(神经网络、贝叶斯算法)在单个漏洞属性上的分类效果,接着比较了Word2Vec

CNN模型与三个基线深度学习模型在漏洞类别上的分类效果。在这两方面的综合评价指标上,Word2Vec

CNN模型取得的效果更好﹐展示了Word2Vec

CNN在漏洞分类中的有效性。
[0005]Word2vec模型虽然可以利用词的上下文信息将一个词转化成一个低维实数向量,但是缺乏考虑词语本身区分类别的能力,而相关研究发现,词语的权重会对分类效果产生极大的影响。因此,如何运用Word2vec词向量高效地表达文本很关键。

技术实现思路

[0006]专利技术目的:为解决Word2vec模型缺乏考虑词语本身区分类别的能力问题,本专利技术提出了一种基于加权word2vec算法的漏洞自动分类方法及系统,通过引入改进的TFIDF对Word2vec词向量进行加权,实现加权的Word2vec分类模型,可以更好的实现漏洞的自动分类,提高分类的准确性。
[0007]技术方案:一种基于加权word2vec算法的漏洞自动分类方法,包括以下步骤:
[0008]步骤1:对原始漏洞文本进行预处理,形成漏洞文本信息词集;
[0009]步骤2:采用Word2vec模型对漏洞文本信息词集中的每个词进行词向量化,得到词向量;
[0010]步骤3:使用T

MI算法对每一个词向量进行加权,得到加权后的词向量;
[0011]步骤4:将加权后的词向量组成的文本向量输入至训练好的CNN中进行漏洞分类,得到漏洞分类结果;
[0012]其中,所述的T

MI算法为将TF

IDF算法与互信息算法结合得到的算法。
[0013]进一步的,步骤1中,所述的对原始漏洞文本进行预处理,包括:对原始漏洞文本进行分词、词性还原以及停用词过滤。
[0014]进一步的,所述TF

IDF算法表示为:
[0015]TF

IDF=TF
i,j
×
IDF
i
(3)
[0016]其中:
[0017][0018][0019]式中,TF
i,j
表示文档j中单词i的重要性,i和j都是正整数,n
i,j
表示单词i在文档j中出现的频数,∑
k
n
k,j
表示所有词的词频之和;IDF
i
表示单词i的逆向文档频率,|D|表示语料库中的文档总数,|j:t
i
∈d
j
|表示包含词语t
i
的文档数目;
[0020]所述互信息算法表示为:
[0021][0022]MI(t)=M
ax
(MI(t,c
i
))(5)
[0023]式中,p(t)表示特征词t在文本语料出现的文本占语料文本的比例,p(c
i
)表示c
i
类文本占语料总文本的比例,p(t,c
i
)表示特征词出现的c
i
类文本占语料文本的比例,N表示语料的文本总数,A表示包含特征词t且属于类别c
i
的文本数量,B表示包含特征词t且不属于类别c
i
的文本数量,C表示不包含特征词t且属于类别c
i
的文本数量;
[0024]将TF

IDF算法与互信息算法结合得到T

MI算法,表示为:
[0025]TF

IDF

MI(t)=TF

IDF
×
MI(t)(6)
[0026]其中,TF

IDF为公式(3),MI(t)为公式(5)。
[0027]进一步的,步骤3中,使用T

MI算法对每一个词向量进行加权,得到加权后的词向量,表示为:
[0028]TFMW(t)=T

MI(t)
×
Word2vec(t)(7)
[0029]其中,t为特征词,T

MI(t)为公式(6),Word2vec(t)为步骤2中得到的词向量。
[0030]进一步的,所述步骤4包括:
[0031]在输入层中,将加权后的词向量组成的文本向量表示矩阵作为CNN的输入;
[0032]在卷积层中,使用卷积核提取文本特征;
[0033]在池化层中,对卷积后得到的较大维度特征向量进行池化操作;
[0034]在输出层中,使用softmax本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于加权word2vec算法的漏洞自动分类方法,其特征在于:包括以下步骤:步骤1:对原始漏洞文本进行预处理,形成漏洞文本信息词集;步骤2:采用Word2vec模型对漏洞文本信息词集中的每个词进行词向量化,得到词向量;步骤3:使用T

MI算法对每一个词向量进行加权,得到加权后的词向量;步骤4:将加权后的词向量组成的文本向量输入至训练好的CNN中进行漏洞分类,得到漏洞分类结果;其中,所述的T

MI算法为将TF

IDF算法与互信息算法结合得到的算法。2.根据权利要求1所述的一种基于加权word2vec算法的漏洞自动分类方法,其特征在于:步骤1中,所述的对原始漏洞文本进行预处理,包括:对原始漏洞文本进行分词、词性还原以及停用词过滤。3.根据权利要求1所述的一种基于加权word2vec算法的漏洞自动分类方法,其特征在于:所述TF

IDF算法表示为:TF

IDF=TF
i,j
×
IDF
i
(3)其中:其中:式中,TF
i,j
表示文档j中单词i的重要性,i和j都是正整数,n
i,j
表示单词i在文档j中出现的频数,∑
k
n
k,j
表示所有词的词频之和;IDF
i
表示单词i的逆向文档频率,|D|表示语料库中的文档总数,|j:t
i
∈d
j
|表示包含词语t
i
的文档数目;所述互信息算法表示为:MI(t)=Max(MI(t,c
i
))(5)式中,p(t)表示特征词t在文本语料出现的文本占语料文本的比例,p(c
i
)表示c
i
类文本占语料总文本的比例,p(t,c
i
)表示特征词出现的c
i
类文本占语料文本的比例,N表示语料的文本总数,A表示包含特征词t且属于类别c
i
的文本数量,B表示包含特征词t且不属于类别c
i
的文本数量,C表示不包含特征词t且属于类别c
i
的文本数量;将TF

IDF算法与互信息算法结合得到T

MI算法,表示为:TF

IDF

MI(t)=TF

IDF
×
MI(t)(6)其中,TF

IDF为公式(3),MI(t)为公式(5)。4.根据权利要求3所述的一种基于加权word2vec算法的漏洞自动分类方法,其特征在于:步骤3中,使用T

MI算法对每一个词向量进行加权,得到加权后的词向量,表示为:TFMW(t)=T

MI(t)
×
Word2vec(t)(7)其中,t为特征词,T

MI(t)为公式(6),Word2vec(t)为步骤2中得到的词向量。5.根据权利要求3所述的一种基于加权word2vec算法的漏洞自动分类方法,其特征在
于:所述步骤4包括:在输入层中,将加权...

【专利技术属性】
技术研发人员:周晓峰吴雪峰
申请(专利权)人:河海大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1