CN116401659B - 一种基于深度学习的多模型融合计算机病毒检测方法 - Google Patents
一种基于深度学习的多模型融合计算机病毒检测方法 Download PDFInfo
- Publication number
- CN116401659B CN116401659B CN202310180346.3A CN202310180346A CN116401659B CN 116401659 B CN116401659 B CN 116401659B CN 202310180346 A CN202310180346 A CN 202310180346A CN 116401659 B CN116401659 B CN 116401659B
- Authority
- CN
- China
- Prior art keywords
- model
- virus
- output
- probability
- inputting
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 241000700605 Viruses Species 0.000 title claims abstract description 155
- 230000004927 fusion Effects 0.000 title claims abstract description 50
- 238000001514 detection method Methods 0.000 title claims abstract description 47
- 238000013135 deep learning Methods 0.000 title claims abstract description 27
- 238000012549 training Methods 0.000 claims abstract description 48
- 238000000034 method Methods 0.000 claims abstract description 31
- 238000012360 testing method Methods 0.000 claims abstract description 24
- 230000006870 function Effects 0.000 claims abstract description 23
- 239000011159 matrix material Substances 0.000 claims description 51
- 239000013598 vector Substances 0.000 claims description 31
- 238000003062 neural network model Methods 0.000 claims description 23
- 238000004364 calculation method Methods 0.000 claims description 14
- 230000008447 perception Effects 0.000 claims description 12
- 238000011176 pooling Methods 0.000 claims description 11
- 238000007781 pre-processing Methods 0.000 claims description 11
- 230000003612 virological effect Effects 0.000 claims description 4
- 238000006243 chemical reaction Methods 0.000 claims description 3
- 230000008569 process Effects 0.000 abstract description 13
- 230000006399 behavior Effects 0.000 description 9
- 238000004590 computer program Methods 0.000 description 8
- 238000004458 analytical method Methods 0.000 description 5
- 238000013528 artificial neural network Methods 0.000 description 5
- 230000004913 activation Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 230000005284 excitation Effects 0.000 description 3
- ORILYTVJVMAKLC-UHFFFAOYSA-N Adamantane Natural products C1C(C2)CC3CC1CC2C3 ORILYTVJVMAKLC-UHFFFAOYSA-N 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000013527 convolutional neural network Methods 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 230000001988 toxicity Effects 0.000 description 2
- 231100000419 toxicity Toxicity 0.000 description 2
- 244000035744 Hura crepitans Species 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 238000000137 annealing Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 230000010485 coping Effects 0.000 description 1
- 230000002596 correlated effect Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000009795 derivation Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 238000007499 fusion processing Methods 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000007500 overflow downdraw method Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000009827 uniform distribution Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/56—Computer malware detection or handling, e.g. anti-virus arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/18—Complex mathematical operations for evaluating statistical data, e.g. average values, frequency distributions, probability functions, regression analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02A—TECHNOLOGIES FOR ADAPTATION TO CLIMATE CHANGE
- Y02A90/00—Technologies having an indirect contribution to adaptation to climate change
- Y02A90/10—Information and communication technologies [ICT] supporting adaptation to climate change, e.g. for weather forecasting or climate simulation
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Data Mining & Analysis (AREA)
- Mathematical Physics (AREA)
- Computer Security & Cryptography (AREA)
- General Health & Medical Sciences (AREA)
- Mathematical Analysis (AREA)
- Computer Hardware Design (AREA)
- Life Sciences & Earth Sciences (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Optimization (AREA)
- Computational Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Computational Biology (AREA)
- Operations Research (AREA)
- Probability & Statistics with Applications (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Algebra (AREA)
- Virology (AREA)
- Databases & Information Systems (AREA)
- Artificial Intelligence (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Evolutionary Computation (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Image Analysis (AREA)
- Measuring Or Testing Involving Enzymes Or Micro-Organisms (AREA)
Abstract
本发明的实施例公开了一种基于深度学习的多模型融合计算机病毒检测方法,包括:采集病毒样本,得到病毒样本文件;将病毒样本文件输入预设的第一模型进行测试,得到从第一模型输出的病毒有害性概率的第一输出值;将病毒样本文件输入预设的第二模型进行测试,得到从第二模型输出的病毒有害性概率的第二输出值;将第一模型和第二模型的输出加权融合,得到输出病毒有害性概率的融合函数。本发明的多模型相较于单个模型,训练过程不容易过拟合,在有限的样本前提下,扩充了样本集大小,突出有害性特征,防止模型学习无关特征,防止模型过拟合,增强模型的泛化能力在检测未知病毒时具有鲁棒性,大大提高检测准确率。
Description
技术领域
本发明涉及计算机病毒样本分析技术领域,特别涉及一种基于深度学习的多模型融合计算机病毒检测方法。
背景技术
传统病毒检测与分析主要基于文件特征匹配的方式,具有以下缺点:(1)滞后性,只能对目前已存在的病毒进行检测,对未知病毒无能为力;(2)维护特征库成本高,病毒检出能力与特征库丰富程度正相关,要想获得优秀检测效果,需要耗费大量人力维护特征库;(3)错误检测率较高,易将普通文件误报为病毒文件。
如今,随着病毒加壳、加密技术的发展,基于文件特征的病毒检测流程复杂,应对未知病毒能力差。基于样本行为的检测方法应运而生,通过对样本行为进行监控与检测,将敏感行为汇总为行为点列表,将样本表现出的行为点与行为列表匹配,从而判断是否为病毒文件。基于样本行为的病毒检测方法,相较于文件特征检测,在未知病毒文件检测方面有所改善,但检测错误率仍然较高,需要将检测结果结合人工判断,不能够直接、准确地做出是否为病毒文件的判断。
深度学习是机器学习领域中一个新的研究方向,其学习样本数据的内在规律和表示层次,最终目标是让机器能够像人一样具有分析学习能力,能够识别文字、图像和声音等数据。目前,深度学习在自然语言处理,计算机视觉,语音,推荐等领域取得了很多成果。现有技术中存在利用单卷积神经网络模型进行病毒检测的尝试,但单模型结构简单,不能够学习到病毒文件的深层特征,以及目前病毒文件样本集数量少,单模型训练极易过拟合。而且,单模型存在预测结果不可解释,预测准确率低的问题,对未知病毒检测效果不佳。
发明内容
有鉴于此,本发明实施例的目的在于提供一种基于深度学习的多模型融合计算机病毒检测方法,基于多层感知机检测模型和增加注意力模块的残差神经网络检测模型,将两者融合,能够对病毒文件进行准确地检测。
第一方面,本发明实施例提供了一种基于深度学习的多模型融合计算机病毒检测方法,其中,包括:
采集病毒样本,得到病毒样本文件。
将病毒样本文件输入预设的第一模型Y2进行测试,得到从第一模型输出的病毒有害性概率的第一输出值y2。
将病毒样本文件输入预设的第二模型Y1进行测试,得到从第二模型输出的病毒有害性概率的第二输出值y1。
将第一模型和第二模型的输出加权融合,得到输出病毒有害性概率的融合函数其中,w1为第一输出值的权重,0<w1<1,w2为第二输出值的权重,0<w2<1,w1+w2=1。
结合第一方面,本发明实施例提供了第一方面的第一种可能的实施方式,其中,所述第一模型包括多层感知输出模型,所述方法还包括,将病毒样本文件输入第一模型Y2进行测试前,对多层感知输出模型进行训练:
将病毒样本文件、病毒附属文件和普通文件组成完整的训练集。
将训练集中的向量输入多层感知检测模型进行训练,得到训练后的第一模型Y2。
结合第一方面,本发明实施例提供了第一方面的第二种可能的实施方式,其中,所述将病毒样本文件输入第一模型Y2进行测试,输出病毒有害性概率的第一输出值y2,包括:
在训练集中选取10个样本向量,作为模型的输入数据,X=[X1,X2,X3,...X1x],X∈R10×N,其中,R为大于0的实数,N表示输入的节点数目,取大于0的实数。
分别将10个样本向量输入到多层感知机模型中,input Xi2=X0,Xi2∈R1×n,其中,i取大于0的实数。
多层感知机模型进行前向计算,经过sigmod函数计算得到病毒有害性概率的第一输出值y2,output y2,y2∈R1×1。
结合第一方面,本发明实施例提供了第一方面的第三种可能的实施方式,其中,所述第二模型包括残差神经网络模型,所述将病毒样本文件输入第二模型Y1进行测试,输出病毒有害性概率的第二输出值y1,包括:
对所述病毒样本文件进行数据预处理,将二进制的病毒样本文件转换为三维矩阵病毒数据。
所述第二模型Y1采用残差神经网络模型。
将所述三维矩阵病毒数据输入残差神经网络模型,输出病毒有害性概率的第二输出值y1。
结合第一方面,本发明实施例提供了第一方面的第四种可能的实施方式,其中,所述对病毒样本文件进行数据预处理,将二进制的病毒样本文件转换为三维矩阵病毒数据,包括:
获取病毒样本文件的原始大小n,将病毒样本文件转换为长度为n的字节向量X0。
将字节向量X0的长度截断为N2,其中N=max(a),a2<=n,得到长度为N2的字节向量X1。
将字节向量X1转换为(N,N)二维矩阵X2,矩阵中每一个元素代表一个字节,
将二维矩阵X2进行自适应平均池化操作得到二维矩阵X3,矩阵中一个元素代表N2/10242个字节的均值,
对二维矩阵X3进行数据增强,对X3分别进行水平翻转和垂直翻转操作,得到相同维度的二维矩阵X4和X5,最终得到三维矩阵病毒数据[X3,X4,X5]。
结合第一方面,本发明实施例提供了第一方面的第五种可能的实施方式,其中,所述将所述三维矩阵病毒数据输入残差神经网络模型,输出病毒有害性概率的第二输出值y1,包括:
将所述三维矩阵病毒数据[X3,X4,X5]作为一个样本输入到残差网络模型中,其特征维度为(1024,1024,3),input Xi1=[X3,X4,X5],Xi1∈R1024×1024×3,其中,i取大于0的实数,R为大于0的实数。
残差神经网络模型经过计算得到第二输出值y1,output y1,y1∈R1×1。
结合第一方面,本发明实施例提供了第一方面的第六种可能的实施方式,其中,所述残差神经网络模型经过计算得到第二输出值y1,包括:
对输入的样本进行前向计算,得到初步输出模型Y′,output Y′,Y′R7×7×2048。
将初步输出模型Y′输入到全局池化层中进行池化操作,得到池化输出模型Y′’,output Y′’,Y′’∈R1×1×2048。
将池化输出模型Y′’输入到全连接层中进行操作,经过sigmod函数计算得到第二输出值y1,output y1, y1∈R1×1。
结合第一方面,本发明实施例提供了第一方面的第七种可能的实施方式,其中,所述输出病毒有害性概率的融合函数的输出值为yo,根据输出病毒有害性概率的融合函数,得到输出值yo后,以概率p丢弃输入,其中x为融合函数计算得到的病毒有害性概率值。
第二方面,本发明实施例还提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如前所述的基于深度学习的多模型融合计算机病毒检测方法。
第三方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如权前所述的基于深度学习的多模型融合计算机病毒检测方法。
本发明实施例的有益效果是:
针对现有的计算机病毒检测准确性低、检测具有滞后性等问题,本发发明采用深度学习多模型融合的方法进行计算机病毒文件检测。模型一运用多层感知机根据病毒文件完整内容进行分类;模型二为采用注意力模块的残差神经网络,将病毒文本文件转换为(Height,Width,Channel)的三维矩阵向量向量,作为数据输入到残差网络中,相较于未采用注意力模块的卷积神经网络,该模型能够突出有害特征,使得模型正确地学习有害抽象特征。多模型相较于单个模型,训练过程不容易过拟合,在检测未知病毒时具有鲁棒性,大大提高检测准确率。
在训练过程中,首先将两种模型采用不同的训练集单独训练,直到模型在测试集上准确率不再提高后,将两种模型的输出加权,融合两个输出,对两个模型共同训练,将原有模型一与模型二训练集组合,输入到融合模型中训练。待融合模型训练完成后,将样本文件输入到融合模型中,得出文件的有害性分析结果。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本发明基于深度学习的多模型融合计算机病毒检测方法的流程图;
图2为本发明基于深度学习的多模型融合计算机病毒检测方法中多层感知输出模型训练的流程图;
图3为本发明基于深度学习的多模型融合计算机病毒检测方法中残差神经网络模型训练的流程图;
图4为本发明基于深度学习的多模型融合计算机病毒检测方法的多模型融合检测流程图;
图5为本发明基于深度学习的多模型融合计算机病毒检测方法的实施例示意图;
图6为多层感知输出模型的示意图;
图7为结合注意力模块的残差神经网络模型的示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件能够以各种不同的配置来布置和设计。
本发明实施例中提到的多层感知输出模型如图6所示,
多层感知输出模型由线性层、隐藏层、激活层三部分组成,其中隐藏层由两层线性层实现,激活层采用ReLU激活函数,以使模型在训练过程中迅速收敛。
模型的训练过程分为以下阶段:
(1)读入训练集样本(普通文件与病毒文件、病毒附属文件)完整向量。
(2)选择批量大小为10个样本,作为模型的输入数据,=[X1,X2,X3,...X20],X∈R10 ×N,输入到模型中。
(3)采用Adam算法(自适应矩估计)与CosineAnnealing(余弦退火)学习率调整策略进行模型训练。
(4)将现有样本划分为训练集和测试集两部分,训练集送入模型中进行训练后,在测试集上作预测,直到测试集准确率不再增加,模型收敛。
本发明实施例中提到的残差神经网络模型如图7所示,
所述残差神经网络模型采用注意力模块的残差神经网络(ResNet With Squeezeand Excitation)。模型选择上,我们选择ResNet 50作为主干网络,在原有模型基础上增添了注意力模块。
注意力机制,是将特征向量(H,W,C)中H与W维度进行压缩,例如,一张RGB图片向量(1920,1080,3),空间分辨率为1920*1080,共有三个通道,每个通道代表着模型学习到的特征。为了突出特征病毒分析贡献度高的特征,我们将二维空间压缩为一个常数,每个通道具有一个权重。
注意力模块首先将中间层输入特征向量二维空间压缩,这个压缩由全局池化卷积实现,压缩后的1×1×C向量经过全连接层与激活层,得到最终每个通道的激励值,最终将原有特征向量与得到的激励值权重相乘,即将原有重要特征进行放大,降低其他特征的显著性。
残差神经网络模型的训练方式同多层感知输出模型。首先对数据进行预处理,读取病毒二进制文件为二维字节向量,随后将读取的文件向量Reshape为(H,W,C)三维矩阵,进行数据增强操作,将其输入到模型中进行训练,直到模型收敛。
待两个模型训练完毕后,保留参数,将两个模型的输出后添加全连接层,采用加权平均方式融合输出结果,将融合模型训练至收敛。训练完成后,向程序中输入样本,程序对样本文件作数据预处理,输入到模型中,经过前向计算,采用Sigmoid函数计算二分类概率,得到是否有害的预测结果。
请参照图1和图4,本发明的第一个实施例提供一种基于深度学习的多模型融合计算机病毒检测方法,包括:
S100,采集病毒样本,得到病毒样本文件。
S200,将病毒样本文件输入预设的第一模型Y2进行测试,得到从第一模型输出的病毒有害性概率的第一输出值y2。
S300,将病毒样本文件输入预设的第二模型Y1进行测试,得到从第二模型输出的病毒有害性概率的第二输出值y1。
S400,将第一模型和第二模型的输出加权融合,得到输出病毒有害性概率的融合函数其中,w1为第一输出值的权重,0<w1<1,w2为第二输出值的权重,0<w2<1,w1+w2=1。
具体的,所述第一模型包括多层感知输出模型,所述方法还包括,将病毒样本文件输入第一模型Y2进行测试前,对多层感知输出模型进行训练:
将病毒样本文件、病毒附属文件和普通文件组成完整的训练集。
将训练集中的向量输入多层感知检测模型进行训练,得到训练后的第一模型Y2。
具体的,所述将病毒样本文件输入第一模型Y2进行测试,输出病毒有害性概率的第一输出值y2,包括:
在训练集中选取10个样本向量,作为模型的输入数据,X=[X1,X2,X3,...X10],X∈R10×N,其中,R为大于0的实数,N表示输入的节点数目,取大于0的实数。
分别将10个样本向量输入到多层感知机模型中,input Xi2=X0,Xi2∈R1×n,其中,i取大于0的实数。
多层感知机模型进行前向计算,经过sigmod函数计算得到病毒有害性概率的第一输出值y2,output y2,y2∈R1×1。
具体的,所述第二模型包括残差神经网络模型,所述将病毒样本文件输入第二模型Y1进行测试,输出病毒有害性概率的第二输出值y1,包括:
对所述病毒样本文件进行数据预处理,将二进制的病毒样本文件转换为三维矩阵病毒数据。
所述第二模型Y1采用残差神经网络模型。
将所述三维矩阵病毒数据输入残差神经网络模型,输出病毒有害性概率的第二输出值y1。
具体的,所述对病毒样本文件进行数据预处理,将二进制的病毒样本文件转换为三维矩阵病毒数据,包括:
获取病毒样本文件的原始大小n,将病毒样本文件转换为长度为n的字节向量X0。
将字节向量X0的长度截断为N2,其中N=max(a),a2<=n,得到长度为N2的字节向量X1。
将字节向量X1转换为(N,N)二维矩阵X2,矩阵中每一个元素代表一个字节,
将二维矩阵X2进行自适应平均池化操作得到二维矩阵X3,矩阵中一个元素代表N2/10242个字节的均值,
对二维矩阵X3进行数据增强,将二维矩阵X3视为二维灰度图像矩阵,对X3分别进行水平翻转和垂直翻转操作,得到相同维度的二维矩阵X4和X5,最终得到三维矩阵病毒数据[X3,X4,X5]。
具体的,所述将所述三维矩阵病毒数据输入残差神经网络模型,输出病毒有害性概率的第二输出值y1,包括:
将所述三维矩阵病毒数据[X3,X4,X5]作为一个样本输入到残差网络模型中,其特征维度为(1024,1024,3),input Xi1=[X3,X4,X5],Xi1∈R1024×1024×3,其中,i取大于0的实数,R为大于0的实数。
残差神经网络模型经过计算得到第二输出值y1,output y1,y1∈R1×1。
具体的,所述残差神经网络模型经过计算得到第二输出值y1,包括:
对输入的样本进行前向计算,得到初步输出模型Y′,output Y′,Y′∈R7×7×2048。
将初步输出模型Y′输入到全局池化层中进行池化操作,得到池化输出模型Y′’,output Y′′,Y′∈R1×1×2048。
将池化输出模型Y′’输入到全连接层中进行操作,经过sigmod函数计算得到第二输出值y1,output t1,y1∈R1×1。
具体的,所述输出病毒有害性概率的融合函数的输出值为yo,根据输出病毒有害性概率的融合函数,得到输出值yo后,以概率p丢弃输入,其中x为融合函数计算得到的病毒有害性概率值。
本发明的第二个实施例提供一种模型训练过程,本发明的模型训练过程分为两个阶段,阶段一为两个模型单独训练,阶段二为融合模型的训练。
模型单独训练过程如图2和图3所示,包括:
(1)采用均匀分布方式初始化模型参数,学习率初始为0.001;
(2)将训练集划分为同等批量大小,经过数据预处理后批量输入到模型中;
(3)模型前向计算,卷积层抽象、提取样本特征,全连接层计算出样本有害的概率α,将预测结果与样本标记结果计算交叉熵损失。
(4)模型反向链式求导,通过Adam优化方法调整模型参数,采用余弦退火算法动态调整学习率,优化降低交叉熵损失。
(5)优化参数后,在测试集上进行样本有害性判断,计算预测准确率。
(6)重复以上过程,直到在测试集上预测准确率不再增加,模型收敛。
模型融合过程包括:
本发明采用加权平均的方式进行模型融合。多层感知机输出为y2,残差神经网络输出为y1。在两个模型后增加全连接层,在单独模型与全连接层之前,增加dropout层,以概率p丢弃输入,增加模型的泛化性,以此将多个输出加权得到一个输出值yo。
模型融合后,再次按照单模型训练流程,采用相同训练集训练融合模型,直到融合模型在测试集上的检测准确率不再上升后,认为融合模型已经收敛,停止模型训练流程,保存融合模型参数。
本发明的第三个实施例提供一种模型检测方法,模型经过训练后进行样本检测的流程包括:
(1)读取保存后的融合模型参数;
(2)将模型融合部分的dropout层去除,将模型参数加载到模型中;
(3)将待检测样本经过数据预处理过程,输入到预测融合模型中;
(4)融合模型前向计算输出预测样本恶意性概率,得出结果。
如图5所示,本发明的第四个实施例提供一种本发明基于深度学习的多模型融合计算机病毒检测方法对有一定数量的可疑行为,沙箱基于行为检测无毒的恶意样本文件进行检测的方法。将样本文件输入到本发明的程序中,经过模型前向运算,最终通过sigmoid函数输出有害性概率为72.1%,判断该文件为恶意样本文件。
本发明的第五个实施例提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如前所述的基于深度学习的多模型融合计算机病毒检测方法。
本发明的第六个实施例提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如权前所述的基于深度学习的多模型融合计算机病毒检测方法。
本发明实施例旨在保护一种多模型融合计算机病毒检测方法及装置,具备如下效果:
本发明将样本二进制文件转换为模型输入所需的三维矩阵数据,并将输入数据通过池化操作提取高维特征,降低了输入矩阵特征维度。在数据预处理基础上创新性地采用矩阵翻转的数据增强方式,将原二维矩阵和翻转后的矩阵作为三维矩阵中的通道。经过数据增强后得到三维矩阵,相比二维矩阵输入,在有限的样本前提下,扩充了样本集大小,突出有害性特征,防止模型学习无关特征,防止模型过拟合,增强模型的泛化能力。
本发明实施例所提供的基于深度学习的多模型融合计算机病毒检测方法及装置的计算机程序产品,包括存储了程序代码的计算机可读存储介质,程序代码包括的指令可用于执行前面方法实施例中的方法,具体实现可参见方法实施例,在此不再赘述。
具体地,该存储介质能够为通用的存储介质,如移动磁盘、硬盘等,该存储介质上的计算机程序被运行时,能够执行上述多模型融合计算机病毒检测方法,从而能够对病毒文件进行准确地检测。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个处理器可执行的非易失的计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-OnlyMemory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上所述实施例,仅为本发明的具体实施方式,用以说明本发明的技术方案,而非对其限制,本发明的保护范围并不局限于此,尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。
Claims (6)
1.一种基于深度学习的多模型融合计算机病毒检测方法,其特征在于,包括:
采集病毒样本,得到病毒样本文件;
将病毒样本文件输入预设的第一模型Y2进行测试,得到从第一模型输出的病毒有害性概率的第一输出值y2;
将病毒样本文件输入预设的第二模型Y1进行测试,得到从第二模型输出的病毒有害性概率的第二输出值y1;
将第一模型和第二模型的输出加权融合,得到输出病毒有害性概率的融合函数其中,w1为第二输出值的权重,0<w1<1,w2为第一输出值的权重,0<w2<1,w1+w2=1;
所述第一模型包括多层感知输出模型,所述方法还包括,将病毒样本文件输入第一模型Y2进行测试前,对多层感知输出模型进行训练:
将病毒样本文件、病毒附属文件和普通文件组成完整的训练集;
将训练集中的向量输入多层感知输出模型进行训练,得到训练后的第一模型Y2;
所述将病毒样本文件输入第一模型y2进行测试,输出病毒有害性概率的第一输出值y2,包括:
在训练集中选取10个样本向量,作为模型的输入数据,
M=[M1,M2,M3,…M10],M∈R10×N,其中,R为大于0的实数,N表示输入的节点数目,取大于0的实数;
分别将10个样本向量输入到多层感知输出模型中,input Xi2,Xi2∈R1×n,其中,i取大于0的实数;Xi2表示第一模型的输入数据,其中下标i表示input,1表示第一输入;n表示病毒样本文件的长度;
多层感知输出模型进行前向计算,经过sigmod函数计算得到病毒有害性概率的第一输出值y2,
output y2,y2∈R1×1。
2.根据权利要求1所述的基于深度学习的多模型融合计算机病毒检测方法,其特征在于,所述第二模型包括残差神经网络模型,所述将病毒样本文件输入第二模型Y1进行测试,输出病毒有害性概率的第二输出值y1,包括:
对所述病毒样本文件进行数据预处理,将二进制的病毒样本文件转换为三维矩阵病毒数据;
所述第二模型Y1采用残差神经网络模型;
将所述三维矩阵病毒数据输入残差神经网络模型,输出病毒有害性概率的第二输出值y1。
3.根据权利要求2所述的基于深度学习的多模型融合计算机病毒检测方法,其特征在于,所述对病毒样本文件进行数据预处理,将二进制的病毒样本文件转换为三维矩阵病毒数据,包括:
获取病毒样本文件的原始大小n,将病毒样本文件转换为长度为n的字节向量X0;
将字节向量X0的长度截断为N2,其中N=max(a),a2<=n,得到长度为N2的字节向量X1;
将字节向量X1转换为(N,N)二维矩阵X2,矩阵中每一个元素代表一个字节,
将二维矩阵X2进行自适应平均池化操作得到二维矩阵X3,矩阵中一个元素代表N2/10242个字节的均值,
对二维矩阵X3进行数据增强,对X3分别进行水平翻转和垂直翻转操作,得到相同维度的二维矩阵X4和X5,最终得到三维矩阵病毒数据[X3,X4,X5]。
4.根据权利要求3所述的基于深度学习的多模型融合计算机病毒检测方法,其特征在于,所述将所述三维矩阵病毒数据输入残差神经网络模型,输出病毒有害性概率的第二输出值y1,包括:
将所述三维矩阵病毒数据[X3,X4,X5]作为一个样本输入到残差网络模型中,其特征维度为(1024,1024,3),
input Xi1=[X3,X4,X5],Xi1∈R1024×1024×3,其中,i取大于0的实数,R为大于0的实数;
残差神经网络模型经过计算得到第二输出值y1,
output y1,y1∈R1×1。
5.根据权利要求4所述的基于深度学习的多模型融合计算机病毒检测方法,其特征在于,所述残差神经网络模型经过计算得到第二输出值y1,包括:
对输入的样本进行前向计算,得到初步输出模型Y′,
output Y′,Y′∈R7×7×2048;
将初步输出模型Y′输入到全局池化层中进行池化操作,得到池化输出模型Y′’,
output Y′’,Y′’∈R1×1×2048;
将池化输出模型Y′’输入到全连接层中进行操作,经过sigmod函数计算得到第二输出值y1,
output y1,y1∈R1×1。
6.根据权利要求1所述的基于深度学习的多模型融合计算机病毒检测方法,其特征在于,所述输出病毒有害性概率的融合函数的输出值为y0,根据输出病毒有害性概率的融合函数,得到输出值yo后,以概率p丢弃输入,
其中x为融合函数计算得到的病毒有害性概率值。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310180346.3A CN116401659B (zh) | 2023-02-17 | 2023-02-17 | 一种基于深度学习的多模型融合计算机病毒检测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310180346.3A CN116401659B (zh) | 2023-02-17 | 2023-02-17 | 一种基于深度学习的多模型融合计算机病毒检测方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116401659A CN116401659A (zh) | 2023-07-07 |
CN116401659B true CN116401659B (zh) | 2024-01-30 |
Family
ID=87011346
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310180346.3A Active CN116401659B (zh) | 2023-02-17 | 2023-02-17 | 一种基于深度学习的多模型融合计算机病毒检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116401659B (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110363003A (zh) * | 2019-07-25 | 2019-10-22 | 哈尔滨工业大学 | 一种基于深度学习的Android病毒静态检测方法 |
CN110378430A (zh) * | 2019-07-23 | 2019-10-25 | 广东工业大学 | 一种基于多模型融合的网络入侵检测的方法及系统 |
CN111967343A (zh) * | 2020-07-27 | 2020-11-20 | 广东工业大学 | 基于简单神经网络和极端梯度提升模型融合的检测方法 |
CN112528284A (zh) * | 2020-12-18 | 2021-03-19 | 北京明略软件系统有限公司 | 恶意程序的检测方法及装置、存储介质、电子设备 |
CN113705619A (zh) * | 2021-08-03 | 2021-11-26 | 广州大学 | 一种恶意流量检测方法、系统、计算机及介质 |
CN114091020A (zh) * | 2021-10-25 | 2022-02-25 | 北京信息科技大学 | 基于特征分组和多模型融合的对抗攻击防御方法及系统 |
CN114329474A (zh) * | 2022-01-05 | 2022-04-12 | 北京邮电大学 | 一种融合机器学习和深度学习的恶意软件检测方法 |
CN115314239A (zh) * | 2022-06-21 | 2022-11-08 | 中化学交通建设集团有限公司 | 基于多模型融合的隐匿恶意行为的分析方法和相关设备 |
-
2023
- 2023-02-17 CN CN202310180346.3A patent/CN116401659B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110378430A (zh) * | 2019-07-23 | 2019-10-25 | 广东工业大学 | 一种基于多模型融合的网络入侵检测的方法及系统 |
CN110363003A (zh) * | 2019-07-25 | 2019-10-22 | 哈尔滨工业大学 | 一种基于深度学习的Android病毒静态检测方法 |
CN111967343A (zh) * | 2020-07-27 | 2020-11-20 | 广东工业大学 | 基于简单神经网络和极端梯度提升模型融合的检测方法 |
CN112528284A (zh) * | 2020-12-18 | 2021-03-19 | 北京明略软件系统有限公司 | 恶意程序的检测方法及装置、存储介质、电子设备 |
CN113705619A (zh) * | 2021-08-03 | 2021-11-26 | 广州大学 | 一种恶意流量检测方法、系统、计算机及介质 |
CN114091020A (zh) * | 2021-10-25 | 2022-02-25 | 北京信息科技大学 | 基于特征分组和多模型融合的对抗攻击防御方法及系统 |
CN114329474A (zh) * | 2022-01-05 | 2022-04-12 | 北京邮电大学 | 一种融合机器学习和深度学习的恶意软件检测方法 |
CN115314239A (zh) * | 2022-06-21 | 2022-11-08 | 中化学交通建设集团有限公司 | 基于多模型融合的隐匿恶意行为的分析方法和相关设备 |
Also Published As
Publication number | Publication date |
---|---|
CN116401659A (zh) | 2023-07-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111753881B (zh) | 一种基于概念敏感性量化识别对抗攻击的防御方法 | |
CN107679572B (zh) | 一种图像判别方法、存储设备及移动终端 | |
KR102093275B1 (ko) | 악성코드 감염 유도정보 판별 시스템, 프로그램이 기록된 저장매체 및 방법 | |
CN113596007B (zh) | 一种基于深度学习的漏洞攻击检测方法和设备 | |
CN112182585B (zh) | 源代码漏洞检测方法、系统及存储介质 | |
CN112861945B (zh) | 一种多模态融合谎言检测方法 | |
CN113691542B (zh) | 基于HTTP请求文本的Web攻击检测方法及相关设备 | |
CN111651762A (zh) | 一种基于卷积神经网络的pe恶意软件检测方法 | |
CN111428557A (zh) | 基于神经网络模型的手写签名的自动校验的方法和装置 | |
CN116994069B (zh) | 一种基于多模态信息的图像解析方法及系统 | |
CN113360912A (zh) | 恶意软件检测方法、装置、设备及存储介质 | |
CN110647916A (zh) | 基于卷积神经网络的色情图片识别方法及装置 | |
CN114821823A (zh) | 图像处理、人脸防伪模型的训练及活体检测方法和装置 | |
CN114548274A (zh) | 一种基于多模态交互的谣言检测方法及系统 | |
CN117131348B (zh) | 基于差分卷积特征的数据质量分析方法及系统 | |
CN113723070A (zh) | 文本相似度模型训练方法、文本相似度检测方法及装置 | |
CN111353514A (zh) | 模型训练方法、图像识别方法、装置及终端设备 | |
CN116401659B (zh) | 一种基于深度学习的多模型融合计算机病毒检测方法 | |
Su et al. | Boosting image steganalysis under universal deep learning architecture incorporating ensemble classification strategy | |
CN117113163A (zh) | 基于双向时域卷积网络和特征融合的恶意代码分类方法 | |
CN111400715B (zh) | 分类引擎诊断方法、装置及计算机可读存储介质 | |
CN115761332A (zh) | 烟雾和火焰检测方法、装置、设备及存储介质 | |
CN115510900A (zh) | 电路故障自动诊断方法及其诊断系统 | |
CN115292701A (zh) | 一种基于主动与被动相结合的恶意代码检测方法及系统 | |
CN114844682A (zh) | 一种dga域名检测方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |