1.一种基于大数据的恶意代码检测方法,其特征在于,包括:获取未标注的代码文本数据U,将未标注的代码文本数据U转换为灰度图像输入到训练好的恶意代码分类模型中,得到代码文本数据的分类结果;
所述恶意代码分类模型的训练过程包括:S1、获取标注的代码文本数据T,采用基于Word2Vec模型的训练方法将代码文本T数据转换为灰度图像D;
S11、将代码文本T按函数进行切分,转换为多个代码文本序列T′;
S12、使用所有的代码文本序列T′训练Word2Vec模型,同时设置词向量维度为k,得到代码文本数据中每个单词的词编码表示w;
设置词向量维度为k,包括:
计算代码文本序列T′中每个词的TF‑IDF值,设置阈值α,词向量维度k等于TF‑IDF值大于阈值α 的词的数量,其中,α 为通过文本长度和信息熵计算出的一个阈值,S3、将增强后的灰度图像数据D′输入Swin‑Transformer模型,得到代码文件的特征向量表示H,使用全连接神经网络对特征向量H进行分类;
S4、根据编码器、解码器和分类器的输出构建模型的损失函数,并采用图像标签优化损失函数,当损失函数最小时完成训练,得到训练好的恶意代码分类模型。
2.根据权利要求1所述的一种基于大数据的恶意代码检测方法,其特征在于,将图像D′输入辨别器进行解码器和辨别器的对抗学习,包括:解码器的目标是最小化辨别器对生成图像的辨别能力,使生成图像更接近真实样本,判别器的目标是最大化其对真实图像和生成图像的辨别能力。
3.根据权利要求1所述的一种基于大数据的恶意代码检测方法,其特征在于,将增强数据输入Swin‑Transformer模型,得到代码文件的特征向量表示H,包括:S31、将图像数据D′输入Swin‑Transformer模型,得到模型每个Stage输出的特征向量hi,将hi经过全连接层将维度映射到768后,进行拼接得到特征向量h;
S32、对特征向量h进行维度的动态融合,得到模型的输出特征向量表示H。
4.根据权利要求3所述的一种基于大数据的恶意代码检测方法,其特征在于,对特征向量h进行维度的动态融合,包括:H=Softmax(θ)h其中,θ表示融合权重向量。
5.根据权利要求1所述的一种基于大数据的恶意代码检测方法,其特征在于,所述模型的损失函数,包括:S41、将编码器的输入图像与解码器的生成图像转换为形状为H×W的向量,其中H、W分别表示图像的长和宽,使用加权二进制交叉熵损失函数计算输入图像与生成图像之间的重构损失;其中,所述重构损失,包括:其中,表示重构损失,N表示样本的总数,xi第i个输入图像,表示第i个解码器生成图像;
S42、根据编码器输出的潜在空间的均值μ和方差σ2计算KL散度损失;其中,所述KL散度损失,包括:其中,表示KL散度损失,μ2表示均值的平方,σ2表示方差;
S43:根据辨别器的输出,计算辨别损失;其中所述辨别损失,包括:其中,表示辨别损失,D( )表示辨别器输出,G( )表示解码器输出,x解码器生成的图像,z表示潜在特征向量,E( )表示求期望值操作;
S44、将重构损失、KL散度损失、判别损失以及模型分类损失的加权组合成总体损失;其中,所述总体损失,包括:其中,表示模型最终的总体损失,表示Swin Transformer模型分类的损失,表示重构损失,表示KL散度损失,表示辨别损失。