CN114329474A - 一种融合机器学习和深度学习的恶意软件检测方法 - Google Patents
一种融合机器学习和深度学习的恶意软件检测方法 Download PDFInfo
- Publication number
- CN114329474A CN114329474A CN202210006038.4A CN202210006038A CN114329474A CN 114329474 A CN114329474 A CN 114329474A CN 202210006038 A CN202210006038 A CN 202210006038A CN 114329474 A CN114329474 A CN 114329474A
- Authority
- CN
- China
- Prior art keywords
- detection
- model
- features
- malicious software
- feature
- 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.)
- Pending
Links
- 238000010801 machine learning Methods 0.000 title claims abstract description 28
- 238000013135 deep learning Methods 0.000 title claims abstract description 25
- 238000001514 detection method Methods 0.000 claims abstract description 63
- 238000000034 method Methods 0.000 claims abstract description 46
- 238000012549 training Methods 0.000 claims abstract description 34
- 238000013527 convolutional neural network Methods 0.000 claims description 33
- 238000004422 calculation algorithm Methods 0.000 claims description 27
- 230000006870 function Effects 0.000 claims description 20
- 238000013528 artificial neural network Methods 0.000 claims description 17
- 239000013598 vector Substances 0.000 claims description 16
- 238000011176 pooling Methods 0.000 claims description 14
- 230000009467 reduction Effects 0.000 claims description 12
- 238000012545 processing Methods 0.000 claims description 11
- 238000012360 testing method Methods 0.000 claims description 10
- 238000003066 decision tree Methods 0.000 claims description 9
- 230000008569 process Effects 0.000 claims description 9
- 238000012216 screening Methods 0.000 claims description 7
- 230000001186 cumulative effect Effects 0.000 claims description 6
- 238000012163 sequencing technique Methods 0.000 claims description 5
- ORILYTVJVMAKLC-UHFFFAOYSA-N Adamantane Natural products C1C(C2)CC3CC1CC2C3 ORILYTVJVMAKLC-UHFFFAOYSA-N 0.000 claims description 4
- 238000003062 neural network model Methods 0.000 claims description 3
- 238000013139 quantization Methods 0.000 claims description 3
- 230000004927 fusion Effects 0.000 claims 3
- 238000000605 extraction Methods 0.000 abstract description 9
- 230000000694 effects Effects 0.000 abstract description 7
- 230000004913 activation Effects 0.000 description 6
- 238000002474 experimental method Methods 0.000 description 6
- 230000003068 static effect Effects 0.000 description 6
- 238000004458 analytical method Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 5
- 238000011160 research Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 239000000284 extract Substances 0.000 description 4
- 238000007781 pre-processing Methods 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 238000013136 deep learning model Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000018109 developmental process Effects 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000003672 processing method Methods 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 241000700605 Viruses Species 0.000 description 1
- 238000009825 accumulation Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000012512 characterization method Methods 0.000 description 1
- 238000007635 classification algorithm Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- ZXQYGBMAQZUVMI-GCMPRSNUSA-N gamma-cyhalothrin Chemical compound CC1(C)[C@@H](\C=C(/Cl)C(F)(F)F)[C@H]1C(=O)O[C@H](C#N)C1=CC=CC(OC=2C=CC=CC=2)=C1 ZXQYGBMAQZUVMI-GCMPRSNUSA-N 0.000 description 1
- 208000015181 infectious disease Diseases 0.000 description 1
- 238000012804 iterative process Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 238000003909 pattern recognition Methods 0.000 description 1
- 238000007637 random forest analysis Methods 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 238000013522 software testing Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012706 support-vector machine Methods 0.000 description 1
Images
Landscapes
- Image Analysis (AREA)
Abstract
本发明公开了一种融合机器学习和深度学习的恶意软件检测方法,采用机器学习(LightGBM)与深度学习(1D‑CNN)相结合的方法作为恶意软件检测模型的基础,该模型可以发掘语义的深度特征,发掘语义上下文关系的时空序列数据特征,同时该模型的特征提取以及模型检测相配合能够更好地进行误差传播,使训练速度更快、效果更好。同时对模型接收到检测样本进行计算,从而判别是否存在恶意软件,比传统地直接进入检测模型具有更高地准确率。此外,本发明的方法简单,检测模型更加轻量化,该模型不仅适用于Microsoft端的恶意软件检测,在移动端也有较好的效果。
Description
技术领域
本发明涉及软件测试技术领域,尤其涉及一种融合机器学习和深度学习的恶意软件检测方法。
背景技术
恶意软件(Malware)泛指计算机系统上恶意执行任务的病毒、蠕虫和木马等可执行性文件,旨在通过收集敏感信息或对计算机系统进行未经授权的访问来破坏计算机系统的正常运行,恶意软件不仅可以对受到感染的电脑或设备造成影响,与受感染设备通信的其他设备也可能受到影响。
随着互联网、个人计算机和移动平台的快速普及,各种各样的恶意软件层出不穷,恶意软件市场良好,具有庞大的市场,在网络安全机制不断更新的背景下,恶意软件仍然可以给用户造成巨大的损失,近些年恶意软件检测技术的快速发展使其成为了学术界网络安全领域中的热点问题。如何快速且准确的检测到待检测的软件是否为恶意软件,是恶意软件检测中亟待解决的问题。
恶意软件检测(Malware Detection)系统是一种用来检测恶意软件、样本是否具有恶意性并对恶意进行主动防御的网络安全技术。在恶意软件检测系统中,最重要的一环是对系统内的或已提取出的待测样本进行分析并检测出可能存在的恶意软件。目前恶意软件检测系统的研究主要分为静态检测和动态检测两部分。
1)静态检测是即不运行程序对程序本身进行分析,通常直接从待测的二进制文件中通过反汇编工具对恶意程序反汇编提取所需要的静态特征作为数据进行分析,静态特征一般包括n-gram比特序列、字符串特征、控制流图、函数调用、操作码频率等。
2)动态检测相比于静态检测具有更高的检测效率,动态分析通常会在一个受限的环境内运行程序(有的程序需特定环境,如命令行参数、满足特定条件的后门程序等)并监测他的行为,虽然可靠性较高,但是较为依赖性能、消耗较高。
随着机器学习方法的不断发展,一些机器学习的方法也被用于恶意软件检测。现有的基于机器学习的入侵检测研究研究主要将机器学习技术作为特征选择或特征提取的手段应用于恶意软件检测系统中,以期获得更能反映分类任务统计特性的特征,系统通过这些特征进行模式识别,能够有效检测恶意软件的具体类型、具体位置等,得到较高的恶意软件检测准确率。
传统机器学习算法包括决策树学习、支持向量机、随机森林和贝叶斯网络等等。但这其中也存在着模型训练时间长,特征工程获取的特征冗余度高以及数据不平衡影响检测性能等问题。同时现有研究表明单一的机器学习算法应用己经难以提高检测系统在复杂数据环境下的检测性能。因此许多研究针对这些问题提出将机器学习技术与不同的训练算法、数据处理算法、分类算法相结合的模型。
深度学习是在机器学习基础发展起来的新的人工智能方法。深度学习拥有极强的非线性拟合能力,能够从复杂的特征中提取出主要的特征。深度学习已经在图像识别、自然语言处理、推荐等领域获得了巨大的成就,在恶意软件检测领域使用深度学习的方法也有了一定的发展。
现有的技术方案,如ScaleMalNet,整体分为两个阶段:在第一阶段,采用静态和动态分析相结合的方法对恶意软件进行分类;在第二阶段,利用图像处理方法将恶意软件分为相应的恶意软件类别。该框架以分布方式从不同来源收集恶意软件样本,并以分布式方式应用预处理,实时按需处理大量恶意软件样本,ScaleMalNet框架对终端用户主机收集的恶意软件进行深入学习。检测阶段就是利用训练好的模型和提取的特征进行恶意软件检测,如果判定为恶意软件的话最终会给出恶意软件的分类。
现有技术方案主要存在两个缺点:
一是特征提取时间较长,现有的技术方法无论是直接从恶意软件exe文件或恶意代码中直接提取,本质上都是从源代码级的提取出特征,提取特征较多、时间较长,导致影响准确率的问题。
二是算法模型存在缺陷,现有算法模型大都是机器学习算法或常规的深度学习模型,在敌对环境中的稳定性难以保证。
发明内容
基于此,本发明的目的是提供一种融合机器学习和深度学习的恶意软件检测方法,一是解决需要提取全部特征而导致提取特征时间较长从而使得整体检测时间较长的问题;二是解决特征过多导致影响准确率的问题;三是提高在敌对环境中的稳定性。
为了实现上述目的,本发明提供如下技术方案:
本发明提供的一种融合机器学习和深度学习的恶意软件检测方法,包括以下步骤:
S1、对原始数据集进行特征降维处理和特征重要性排序筛选;
S2、使用训练数据对模型进行训练和微调,得到训练完的检测模型并保存;
S3、利用检测模型对测试数据进行检测,得到检测结果。
进一步地,步骤S1中特征重要性排序筛选的方法为:
1)删除大多数缺少属性值的属性;
2)删除属性值不平衡的属性;
3)填充样本中属性的缺失值,选择与样本标签相同的样本集属性的众数来填充缺失值;
4)特征属性量化编码:从0-m对离散的特征属性进行编码,其中m表示类型总数。
进一步地,步骤S1中特征降维处理的方法为:
通过LightGBM模型对特征进行训练进而对特征进行降维处理,并按照特征重要性和特征累计重要性对提取的特征进行top-k排序并输出,作为后续恶意软件检测1D-CNN神经网络模型的输入。
进一步地,步骤S1中数据特征由83维降到71维。
进一步地,步骤S1中累积重要性的设定阈值为0.95。
进一步地,LightGBM模型中,根据前向步算法,第m步的模型表示为:
fm(x)=fm-1(x)+T(x,θm) (2)
式中,T(x,θm)表示决策树,θm为决策树参数,M为树的数量;
设yi为第i个样本的真值,fm(xi)为第i个样本的预测值,取损失函数为平方损失,则损失函数表示为:
进一步地,步骤S2通过多次迭代,更新回归树,得到最终的检测模型。
进一步地,步骤S3利用检测模型的测试步骤为:将测试数据样本通过LightGBM对样本特征进行降维处理并依据特征重要性排序筛选后,输入到1D-CNN神经网络,通过1D-CNN神经网络进行检测,输出检测结果。
进一步地,1D-CNN神经网络由三个卷积层和最大池化层组成,每一层都卷成乘积层的大小为5×1、3×1、3×1。
进一步地,1D-CNN神经网络的检测过程为:经过最后扩展成尺寸为112维的特征向量,经过两层稠密连接后,输出大小为1×2获得低维稠密的向量,在进行训练时,一次训练所选取的样本数为128,优化器使用Adam算法,初始学习率为0.01,正则化系数为0.001,将得到的向量输入到1D-CNN神经网络中,对特征继续降维,由71维的特征降维至42维后进行检测,输出结果。
与现有技术相比,本发明的有益效果为:
本发明的融合机器学习和深度学习的恶意软件检测方法,采用机器学习(LightGBM)与深度学习(1D-CNN)相结合的方法作为恶意软件检测模型的基础,该模型可以发掘语义的深度特征,发掘语义上下文关系的时空序列数据特征,同时该模型的特征提取以及模型检测相配合能够更好地进行误差传播,使训练速度更快、效果更好。同时对模型接收到检测样本进行计算,从而判别是否存在恶意软件,比传统地直接进入检测模型具有更高地准确率。此外,本发明的方法简单,检测模型更加轻量化,该模型不仅适用于Microsoft端的恶意软件检测,在移动端也有较好的效果。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的融合机器学习和深度学习的恶意软件检测方法的流程图;
图2为本发明实施例提供的特征重要性图;
图3为本发明实施例提供的特征累计重要性图;
图4为本发明实施例提供的1D-CNN基本结构图;
图5为本发明实施例提供的1D-CNN神经网络架构图;
图6为本发明实施例提供的使用检测模型检测的流程图。
具体实施方式
下面结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提供了一种融合机器学习和深度学习的恶意软件检测方法,检测流程如图1所示。
首先对原始数据集进行特征筛选和特征处理,按照7:3划分训练集与测试集,使用训练数据对模型进行训练和微调,得到训练完的检测模型并保存,利用检测模型对测试集(测试数据)进行预测,得到预测结果并进行结果的分析。经过申请人研究,按照7:3划分训练集与测试集,是最好的比例,既可以保证训练时训练集的数量,也会避免过拟合,同时又可以保证测试集的数量,避免偶然性。
具体步骤如下。
步骤1:数据预处理
(1)首先人为操作为4步:
1)删除大多数缺少属性值的属性,例如有些数据缺少大部分评分较高的特征,由于缺失值太多,不仅没有参考价值,输入到模型中还会影响准确率;
2)删除属性值不平衡的属性;例如有些数据的特征在某项评分中特别高,则可以断定属于某类感染,则无需进行训练和检测;
3)填充样本中属性的缺失值,选择与样本标签相同的样本集属性的众数来填充缺失值,而不是选择所有样本属性的众数,以保证数据的有效性;
4)特征属性量化编码:从0-m对离散的特征属性进行编码,其中m表示类型总数。特征属性量化编码采用特征工程技术对特征进行删除、填充、排序、筛选,然后再采用深度学习技术进行检测,减少了无关特征对深度学习模型检测的干扰。
(2)接着最重要的是:本发明通过LightGBM模型对特征进行训练,对特征进行降维处理(由83维降到71维,经实验证明71效果最好),并按照特征重要性和特征累计重要性对提取的特征进行top-k排序并输出,作为后续恶意软件检测1D-CNN神经网络模型的输入。
本发明在进行特征提取时,填充完特征后只提取部分特征进行训练,并只通过提取到的部分特征输入到一维卷积神经网络(Convolutional Neural Network,CNN)检测,此方法可以在提高检测效率的同时提高准确度。
本发明采用基于决策树算法的分布式梯度提升框架(Light Gradient BoostingMachine,LightGBM),LightGBM是一种梯度提升框架,它的核心是梯度决策提升树(Gradient Boosting Decision Tree,GBDT)算法。GBDT是一种基于迭代构建的决策树算法,可用于回归和分类任务。它使用分类回归树模型作为弱学习器,按照前一个学习器的损失函数梯度下降的方向构建新的学习器,通过不断迭代训练模型。在迭代过程中每一轮的预测值与实际值之间存在残差。下一轮将根据残差进行预测,最后将所有预测相加作为最终结论。GBDT如公式(1)所示:
由于当前所有问题解决方案所包含的数据量都聚合在一起,单一的GBDT算法的精度和计算效率已经不能满足需求,因此本发明引入LightGBM算法,LightGBM如公式(2)所示,式中,T(x,θm)表示决策树,θm为决策树参数,M为树的数量。根据前向步算法,第m步的模型可以表示为:
fm(x)=fm-1(x)+T(x,θm) (2)
设yi为第i个样本的真值,fm(xi)为第i个样本的预测值,取损失函数为平方损失,则损失函数可表示为:
通过多次迭代,更新回归树,得到最终的模型。
LightGBM使用基于直方图的分割算法来代替传统的预排序遍历算法。与传统的GBDT算法相比,LightGBM算法通过以下几个方面来提高算法的效率:
1、更快的训练速度和更高的效率:LightGBM使用基于直方图的算法将连续特征值存储在离散框中以加快训练过程。
2、较低的内存使用量:LightGBM将连续值替换为离散的bin,从而降低内存使用量。
3、比任何其他boosting算法更准确:与传统策略相比,LightGBM使用leaf-wisegrowth策略,每生长一个叶子,可以减少损失,并且需要设置额外的参数以避免过拟合。
4、LightGBM使用特征捆绑方法,高维数据中存在多个特征值,特征值之间存在信息冗余的问题。特征捆绑方法将上述特征值放入一个稀疏空间以降低计算复杂度。
综上所示,LightGBM具有更快的训练速度和更高的效率,同时占用较低的内存,并且具有更高的精确度。
LightGBM在模型训练时,经过多次实验,采用的参数如表1所示。
表1预处理参数设置
改良树型 | GBDT |
树的数量 | 12000 |
训练特征抽样率 | 0.611 |
L1正则化系数 | 0.632 |
L2正则化系数 | 0.631 |
学习率 | 0.0106 |
最大深度 | -1(Unlimited depth) |
训练样本抽样率 | 0.82 |
每棵树的最大叶节点数 | 160 |
LightGBM在将原来的特征降维度的同时对特征重要性、特征累计重要性进行排序,特征重要性图以及特征累计重要性图2、图3所示,图2为单个数据中每个特征重要性排序,图3为所有数据中特征重要性的排序,后续实验根据重要性的排序选取特征进行模型的训练以便后续检测。
步骤二:检测模型:检测模型的整体结构如图4所示。
首先,数据集的样本经过LightGBM的特征工程降维(由83降维降到71维)、依据重要性排序、选取top-k特征,输入到1D-CNN神经网络,本发明中,选取所有累积重要性达到设定阈值(本发明实施例中设置阈值为0.9-0.95)的特征作为1D-CNN的输入特征。阈值的选择是影响结果的关键因素,如图2所示,如果阈值太小,有很多特征无法选取到,例如选择0.6,如图2所示,0.6-0.9范围内有很多特征,这些评分又高、数量又多,却无法选取,会对实验造成很大影响,很容易剔除对判断有帮助的相关特征。如果阈值太大,如0.95以上的特征基本对实验没有太大帮助,很容易引入更多不相关的特征,例如0.95以上的“本地英文名信息”,常识可知主机的名称和是否被攻击没有关系。
接下来,通过1D-CNN模型进行检测。将文本序列转换成数字向量之前将其转换成字节码序列,此方法能够较好的解决的神经网络的过拟合问题,挖掘更深层次的代码关联关系。本实验所使用的1D-CNN网络主要由三个卷积层+最大池化层组成,每一层都卷成乘积层的大小为5×1、3×1、3×1,经过最后扩展成尺寸为112维的特征向量。经过两层稠密连接后,输出大小为1×2获得低维稠密的向量。在进行训练时一次训练所选取的样本数为128,优化器使用Adam算法,初始学习率为0.01,正则化系数为0.001,将输入到1D-CNN神经网络中的71维的特征继续降维至42维后进行检测,输出结果。
1D-CNN是一种特殊的神经网络,用于处理序列数据。它由卷积层、池化层和全连接层组成。其基本结构如图5所示,卷积层可以通过训练得到一组满足最小损失函数的最优卷积核,并利用卷积核实现自动特征提取。池化层可以从卷积层中提取最重要的特征,在时间维度上进行降维操作。卷积层和池化层的叠加形成了深层网络结构,通过逐层抽象提取高层序列特征。
X=[x1,x2,...,xt,...,xs]T作为模型输入传递给输入层,其中x∈Rs×d为特征序列,s为特征序列的长度,d为特征值个数,xt表示第t个特征值向量,xt的维数为d。序列数据通过一维卷积运算映射为卷积层,如公式(5)、公式(6)所示:
fr(z)=max(z,0) (6)
式中:*表示一维卷积运算;表示卷积核生成的第j个特征图;j∈[1,nc],nc代表卷积核的个数;卷积核为权重矩阵,其中m为卷积核的大小,对于特征序列,代表提取特征时的局部窗口宽度,b为Bias;fr(z)为激活函数,用于对卷积运算后的数据进行非线性化处理。
本发明使用深度学习中的主流激活函数ReLu,可以加速模型的收敛,增强模型的稀疏表示。
Pooling用于捕捉卷积层的序列特征最有用的信息,形成池化层。池化操作通常是最大池化(max-pooling),如式(7)所示,序列长度可以减半。当最后一次使用池化操时,使用全局最大池化,如公式(8)所示,捕获最有用的全局时序信息,并将序列长度减少到1。
全连接层与传统的神经网络结构一致,由多个隐藏层组成。全连接层进一步对全局特征进行抽象和组合,输出如下:
式中:Wfc∈Rnfc为全连接层的权重矩阵;nfc是隐藏单元的数量。激活函数fr(z)也是ReLu。对于二分类问题,输出单元数为1,全连接后输出分类结果:
本发明实施例所用1D-CNN神经网络架构如图5所示。1D-CNN细节如下:
a、结构:1D-CNN网络主要由三个卷积层+最大池化层组成,每一层都卷成乘积层的大小为5×1、3×1、3×1
b、连接方式:全连接。
c、卷积层激活函数:ReLU。
d、输出层激活函数:Softmax
d、损失函数:Categorical cross-entropy。
f、优化器:Adam。
g、训练算法:反向传播算法。
h、Dropout:Dropout=0.1
此模块使用训练好的模型对目标样本进行恶意软件检测,这里会给出代码是否存在恶意软件、存在什么样的恶意软件等信息。目前绝大多数使用CNN构造的恶意软件检测模型大多是二维的,二维CNN在恶意软件检测领域以及图像领域已取得巨大成功,但1D-CNN的研究甚少,本模型证明1D-CNN同样适用于恶意软件检测领域。
本发明的融合机器学习和深度学习的恶意软件检测流程如图6所示。具体为:通过获取原始数据(如机器状态码),对原始数据进行预处理生成样本集合,成批次的输入到检测模型中,通过LightGBM对样本特征进行降维处理,经过LightGBM处理并依据特征重要性排序筛选过后的样本特征输入到1D-CNN检测模块进行检测,输出检测结果。
对于输出结果的分析方法,可使用softmax分类器对输出进行分类,得到最终预测结果。
本发明采用机器学习(LightGBM)与深度学习(1D-CNN)相结合的方法作为恶意软件检测模型的基础,该模型可以发掘语义的深度特征,发掘语义上下文关系的时空序列数据特征,同时该模型的特征提取以及模型检测相配合能够更好地进行误差传播,使训练速度更快、效果更好。模型接收到检测样本进行计算,从而判别是否存在恶意软件,比传统地直接进行检测模型具有更高地准确率。同时本发明的模型更加轻量化,该模型不仅适用于Microsoft端的恶意软件检测,在移动端也有较好的效果。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例、电子设备实施例、计算机可读存储介质实施例和计算机程序产品实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述实施例,仅为本申请的具体实施方式,用以说明本申请的技术方案,而非对其限制,本申请的保护范围并不局限于此,尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特殊进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本申请实施例技术方案的精神和范围。都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应所述以权利要求的保护范围为准。
Claims (10)
1.一种融合机器学习和深度学习的恶意软件检测方法,其特征在于,包括以下步骤:
S1、对原始数据集进行特征降维处理和特征重要性排序筛选;
S2、使用训练数据对模型进行训练和微调,得到训练完的检测模型并保存;
S3、利用检测模型对测试数据进行检测,得到检测结果。
2.根据权利要求1所述的融合机器学习和深度学习的恶意软件检测方法,其特征在于,步骤S1中特征重要性排序筛选的方法为:
1)删除大多数缺少属性值的属性;
2)删除属性值不平衡的属性;
3)填充样本中属性的缺失值,选择与样本标签相同的样本集属性的众数来填充缺失值;
4)特征属性量化编码:从0-m对离散的特征属性进行编码,其中m表示类型总数。
3.根据权利要求1所述的融合机器学习和深度学习的恶意软件检测方法,其特征在于,步骤S1中特征降维处理的方法为:
通过LightGBM模型对特征进行训练进而对特征进行降维处理,并按照特征重要性和特征累计重要性对提取的特征进行top-k排序并输出,作为后续恶意软件检测1D-CNN神经网络模型的输入。
4.根据权利要求3所述的融合机器学习和深度学习的恶意软件检测方法,其特征在于,步骤S1中数据特征由83维降到71维。
5.根据权利要求3所述的融合机器学习和深度学习的恶意软件检测方法,其特征在于,步骤S1中累积重要性的设定阈值为0.95。
7.根据权利要求6所述的融合机器学习和深度学习的恶意软件检测方法,其特征在于,步骤S2通过多次迭代,更新回归树,得到最终的检测模型。
8.根据权利要求1所述的融合机器学习和深度学习的恶意软件检测方法,其特征在于,步骤S3利用检测模型的测试步骤为:将测试数据样本通过LightGBM对样本特征进行降维处理并依据特征重要性排序筛选后,输入到1D-CNN神经网络,通过1D-CNN神经网络进行检测,输出检测结果。
9.根据权利要求8所述的融合机器学习和深度学习的恶意软件检测方法,其特征在于,1D-CNN神经网络由三个卷积层和最大池化层组成,每一层都卷成乘积层的大小为5×1、3×1、3×1。
10.根据权利要求9所述的融合机器学习和深度学习的恶意软件检测方法,其特征在于,1D-CNN神经网络的检测过程为:经过最后扩展成尺寸为112维的特征向量,经过两层稠密连接后,输出大小为1×2获得低维稠密的向量,在进行训练时,一次训练所选取的样本数为128,优化器使用Adam算法,初始学习率为0.01,正则化系数为0.001,将得到的向量输入到1D-CNN神经网络中,对特征继续降维,由71维的特征降维至42维后进行检测,输出结果。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210006038.4A CN114329474A (zh) | 2022-01-05 | 2022-01-05 | 一种融合机器学习和深度学习的恶意软件检测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210006038.4A CN114329474A (zh) | 2022-01-05 | 2022-01-05 | 一种融合机器学习和深度学习的恶意软件检测方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114329474A true CN114329474A (zh) | 2022-04-12 |
Family
ID=81024249
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210006038.4A Pending CN114329474A (zh) | 2022-01-05 | 2022-01-05 | 一种融合机器学习和深度学习的恶意软件检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114329474A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116401659A (zh) * | 2023-02-17 | 2023-07-07 | 安芯网盾(北京)科技有限公司 | 一种基于深度学习的多模型融合计算机病毒检测方法 |
CN117077141A (zh) * | 2023-10-13 | 2023-11-17 | 国网山东省电力公司鱼台县供电公司 | 一种智能电网恶意软件检测方法及系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111901340A (zh) * | 2020-07-28 | 2020-11-06 | 四川大学 | 一种面向能源互联网的入侵检测系统及其方法 |
CN111914254A (zh) * | 2020-06-24 | 2020-11-10 | 中国科学院信息工程研究所 | 一种基于弱耦合sgan的恶意软件家族分类器生成方法、装置及可读存储介质 |
US20200380301A1 (en) * | 2019-06-01 | 2020-12-03 | Apple Inc. | Techniques for machine language model creation |
CN113706285A (zh) * | 2021-07-08 | 2021-11-26 | 长江大学 | 一种信用卡欺诈检测方法 |
-
2022
- 2022-01-05 CN CN202210006038.4A patent/CN114329474A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20200380301A1 (en) * | 2019-06-01 | 2020-12-03 | Apple Inc. | Techniques for machine language model creation |
CN111914254A (zh) * | 2020-06-24 | 2020-11-10 | 中国科学院信息工程研究所 | 一种基于弱耦合sgan的恶意软件家族分类器生成方法、装置及可读存储介质 |
CN111901340A (zh) * | 2020-07-28 | 2020-11-06 | 四川大学 | 一种面向能源互联网的入侵检测系统及其方法 |
CN113706285A (zh) * | 2021-07-08 | 2021-11-26 | 长江大学 | 一种信用卡欺诈检测方法 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116401659A (zh) * | 2023-02-17 | 2023-07-07 | 安芯网盾(北京)科技有限公司 | 一种基于深度学习的多模型融合计算机病毒检测方法 |
CN116401659B (zh) * | 2023-02-17 | 2024-01-30 | 安芯网盾(北京)科技有限公司 | 一种基于深度学习的多模型融合计算机病毒检测方法 |
CN117077141A (zh) * | 2023-10-13 | 2023-11-17 | 国网山东省电力公司鱼台县供电公司 | 一种智能电网恶意软件检测方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Chawla et al. | Host based intrusion detection system with combined CNN/RNN model | |
CN111371806B (zh) | 一种Web攻击检测方法及装置 | |
CN108965245B (zh) | 基于自适应异构多分类模型的钓鱼网站检测方法和系统 | |
CN108388651B (zh) | 一种基于图核和卷积神经网络的文本分类方法 | |
CN112257066B (zh) | 面向带权异质图的恶意行为识别方法、系统和存储介质 | |
CN110704840A (zh) | 一种基于卷积神经网络cnn的恶意软件检测方法 | |
CN107683469A (zh) | 一种基于深度学习的产品分类方法及装置 | |
CN112364638B (zh) | 一种基于社交文本的人格识别方法 | |
CN109918505B (zh) | 一种基于文本处理的网络安全事件可视化方法 | |
CN114329474A (zh) | 一种融合机器学习和深度学习的恶意软件检测方法 | |
CN113221112B (zh) | 基于弱相关集成策略的恶意行为识别方法、系统和介质 | |
CN115147864B (zh) | 一种基于协同异质深度学习网络的红外人体行为识别方法 | |
EP3874412A1 (en) | Computer architecture for multiplier-less machine learning | |
CN113705099A (zh) | 基于对比学习的社交平台谣言检测模型构建方法及检测方法 | |
Jeyakarthic et al. | Optimal bidirectional long short term memory based sentiment analysis with sarcasm detection and classification on twitter data | |
CN111144453A (zh) | 构建多模型融合计算模型的方法及设备、网站数据识别方法及设备 | |
Pham et al. | Exploring efficiency of GAN-based generated URLs for phishing URL detection | |
Chandran et al. | Optimal deep belief network enabled malware detection and classification model | |
CN112613032B (zh) | 基于系统调用序列的主机入侵检测方法及装置 | |
CN117938477A (zh) | 网络入侵检测方法、装置、终端设备以及存储介质 | |
CN113283519A (zh) | 一种基于离散系数的深度神经网络近似模型分析方法 | |
CN117879934A (zh) | 一种基于网络数据包上下文的sql注入攻击检测方法 | |
Jere et al. | Principal component properties of adversarial samples | |
CN111782811A (zh) | 一种基于卷积神经网络和支持向量机的电子政务敏感文本检测方法 | |
CN114817516A (zh) | 零样本条件下基于逆向匹配的画像映射方法、装置和介质 |
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 |