CN111914253A - 一种入侵检测的方法、系统、设备及可读存储介质 - Google Patents
一种入侵检测的方法、系统、设备及可读存储介质 Download PDFInfo
- Publication number
- CN111914253A CN111914253A CN202010796355.1A CN202010796355A CN111914253A CN 111914253 A CN111914253 A CN 111914253A CN 202010796355 A CN202010796355 A CN 202010796355A CN 111914253 A CN111914253 A CN 111914253A
- Authority
- CN
- China
- Prior art keywords
- data
- intrusion detection
- sample
- training
- samples
- 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.)
- Granted
Links
- 238000001514 detection method Methods 0.000 title claims abstract description 86
- 238000000034 method Methods 0.000 title claims description 59
- 238000012549 training Methods 0.000 claims abstract description 104
- 238000012360 testing method Methods 0.000 claims abstract description 57
- 230000006870 function Effects 0.000 claims description 23
- 239000011159 matrix material Substances 0.000 claims description 20
- 238000002790 cross-validation Methods 0.000 claims description 15
- 230000015572 biosynthetic process Effects 0.000 claims description 9
- 238000003786 synthesis reaction Methods 0.000 claims description 9
- 238000011156 evaluation Methods 0.000 claims description 8
- 238000004590 computer program Methods 0.000 claims description 6
- 230000008030 elimination Effects 0.000 claims description 6
- 238000003379 elimination reaction Methods 0.000 claims description 6
- 230000003190 augmentative effect Effects 0.000 claims description 4
- 238000002372 labelling Methods 0.000 claims description 4
- 238000000638 solvent extraction Methods 0.000 claims description 4
- 238000004364 calculation method Methods 0.000 claims description 3
- 238000013434 data augmentation Methods 0.000 claims 1
- 230000009286 beneficial effect Effects 0.000 abstract description 2
- 230000008569 process Effects 0.000 description 12
- 238000010586 diagram Methods 0.000 description 8
- 238000004422 calculation algorithm Methods 0.000 description 6
- 238000010801 machine learning Methods 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000005457 optimization Methods 0.000 description 3
- 230000006399 behavior Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000003066 decision tree Methods 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 238000009825 accumulation Methods 0.000 description 1
- 238000013075 data extraction Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000007123 defense Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 230000001105 regulatory effect Effects 0.000 description 1
- 238000010845 search algorithm Methods 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
Images
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/554—Detecting local intrusion or implementing counter-measures involving event detection and direct action
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Computation (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Computer Security & Cryptography (AREA)
- Life Sciences & Earth Sciences (AREA)
- Computer Hardware Design (AREA)
- Medical Informatics (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本申请公开了一种入侵检测的方法,包括:对获取到的数据集中的数据进行分类,数据的类别包括大样本和小样本;对数据集中类别为小样本的数据进行数据扩充;将扩充后的数据集划分为训练集和测试集,并利用训练集对预设网络模型进行训练,利用测试集对训练后的预设网络模型进行性能评估;确定性能最佳的预设网络模型为入侵检测模型,并利用入侵检测模型对获取到的感知数据进行入侵检测。本申请通过对数据集中类别为小样本的数据进行数据扩充,避免了学习器对小样本产生欠拟合现象,提高了模型的学习效率和泛化能力,进而提高了入侵检测的准确率。本申请同时还提供了一种入侵检测的系统、设备及可读存储介质,具有上述有益效果。
Description
技术领域
本申请涉及入侵检测领域,特别涉及一种入侵检测的方法、系统、设备及可读存储介质。
背景技术
入侵检测是一种为计算机网络提供实时保护的网络安全技术,主要是对当前输入受护网络或受护主机中的数据进行检测,确定当前检测数据为合法数据还是非法数据。目前用于攻击者入侵检测的传统检测方案以正常网络行为特征或已知攻击类型特征为依据进行建模,存在一定局限性,并且采用人工方式对特征进行处理,无法保证模型对大数据量的攻击类型及时学习更新。
为了应对传统检测方案中遇到的一系列问题,近几年间基于各种机器学习算法的入侵检测方案被陆续提出。这类检测方案首先采用机器学习算法对已知攻击类型进行学习,然后利用训练模型对具有相应特征的攻击行为进行识别,可以大致分为以下两类:
(1)基于单一机器学习算法的入侵检测方案。然而,这种方案的防御场景比较有限,漏报率较高,并且构建的模型简单,无法处理大数据量,导致模型性能下降;
(2)基于集成学习算法的入侵检测方案。梯度提升树(Gradient BoostingDecision Tree,GBDT)是集成学习解决分类问题应用最多的模型,然而,这种方案通常对多个基模型进行集成学习,存在着训练集中数据分布不平衡的问题,降低了模型的学习效率和泛化能力,导致入侵检测的准确率较低。
因此,如何提高入侵检测的准确率是本领域技术人员目前需要解决的技术问题。
发明内容
本申请的目的是提供一种入侵检测的方法、系统、设备及可读存储介质,用于提高入侵检测的准确率。
为解决上述技术问题,本申请提供一种入侵检测的方法,该方法包括:
对获取到的数据集中的数据进行分类,所述数据的类别包括大样本和小样本;
对所述数据集中所述类别为小样本的数据进行数据扩充;
将扩充后的所述数据集划分为训练集和测试集,并利用所述训练集对预设网络模型进行训练,利用所述测试集对训练后的所述预设网络模型进行性能评估;
确定性能最佳的预设网络模型为入侵检测模型,并利用所述入侵检测模型对获取到的感知数据进行入侵检测。
可选的,对所述数据集中所述类别为小样本的数据进行数据扩充,包括:
获取每个所述小样本的近邻样本,并对所述小样本的近邻样本进行检测;
当所述近邻样本中所述大样本的占比为1时,将所述小样本标记为噪音数据;
当所述近邻样本中所述大样本的数据量占比大于预设值且小于1时,将所述小样本放入危险集中;
计算所述危险集中每个小样本和对应的近邻样本之间的距离;
获取随机数,并根据所述距离与所述随机数生成合成样本,将所述合成样本添加到所述数据集中。
可选的,将扩充后的所述数据集划分为训练集和测试集,包括:
按照攻击类别将扩充后的所述数据集划分为对应的数据组,每个所述数据组包括预设数量的数据子集;
依次在每个所述数据组的所有数据子集中分别抽取预设比例的数据作为测试集,将未被抽取的数据作为训练集。
可选的,利用所述训练集对预设网络模型进行训练,利用所述测试集对训练后的所述预设网络模型进行性能评估,包括:
获取每个所述训练集中所有样本的初始预测值;
确定每个所述训练集的第一协方差矩阵,并通过拟合函数拟合所述第一协方差矩阵和所述初始预测值得到对应训练集的预测值;
确定每个所述测试集的第二协方差矩阵,并通过拟合函数拟合所述第二协方差矩阵和所述预测值得到交叉验证指数;
确定所述交叉验证指数最高的一组训练集和测试集作为最优训练集和最优测试集,并利用所述最优训练集对所述预设网络模型进行训练,利用所述最优测试集对训练后的所述预设网络模型进行性能评估。
可选的,在按照攻击类别将扩充后的所述数据集划分为对应的数据组之前,还包括:
使用递归特征消除方法将扩充后的所述数据集中的冗余信息删除。
可选的,利用所述训练集对预设网络模型进行训练,包括:
获取所述预设网络模型中所有弱学习器的参数范围及步长;
根据步长动态调节策略对所述步长进行更新,并根据更新后的所述步长对所述参数范围进行调整;
对调整后的所述参数范围进行网格搜索,找到所述参数范围内的较优参数值;
重复执行根据步长动态调节策略对所述步长进行更新,并根据更新后的所述步长对所述参数范围进行调整的步骤及后续所有步骤,直至所述步长达到步长阈值或找到所述参数范围内的最优值。
本申请还提供一种入侵检测的系统,该系统包括:
分类模块,用于对获取到的数据集中的数据进行分类,所述数据的类别包括大样本和小样本;
数据扩充模块,用于对所述数据集中所述类别为小样本的数据进行数据扩充;
划分模块,用于将扩充后的所述数据集划分为训练集和测试集,并利用所述训练集对预设网络模型进行训练,利用所述测试集对训练后的所述预设网络模型进行性能评估;
入侵检测模块,用于确定性能最佳的预设网络模型为入侵检测模型,并利用所述入侵检测模型对获取到的感知数据进行入侵检测。
可选的,所述数据扩充模块包括:
检测子模块,用于获取每个所述小样本的近邻样本,并对所述小样本的近邻样本进行检测;
标记子模块,用于当所述近邻样本中所述大样本的占比为1时,将所述小样本标记为噪音数据;
存放子模块,用于当所述近邻样本中所述大样本的数据量占比大于预设值且小于1时,将所述小样本放入危险集中;
计算子模块,用于计算所述危险集中每个小样本和对应的近邻样本之间的距离;
合成子模块,用于获取随机数,并根据所述距离与所述随机数生成合成样本,将所述合成样本添加到所述数据集中。
本申请还提供一种入侵检测设备,该入侵检测设备包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如上述任一项所述入侵检测的方法的步骤。
本申请还提供一种可读存储介质,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述任一项所述入侵检测的方法的步骤。
本申请所提供入侵检测的方法,包括:对获取到的数据集中的数据进行分类,数据的类别包括大样本和小样本;对数据集中类别为小样本的数据进行数据扩充;将扩充后的数据集划分为训练集和测试集,并利用训练集对预设网络模型进行训练,利用测试集对训练后的预设网络模型进行性能评估;确定性能最佳的预设网络模型为入侵检测模型,并利用入侵检测模型对获取到的感知数据进行入侵检测。
本申请所提供的技术方案,通过对获取到的数据集中的数据进行分类,并对数据集中类别为小样本的数据进行数据扩充,避免了训练集中数据分布不平衡情况的出现,进而避免了学习器对小样本产生欠拟合现象,提高了模型的学习效率和泛化能力,进而提高了入侵检测的准确率。本申请同时还提供了一种入侵检测的系统、设备及可读存储介质,具有上述有益效果,在此不再赘述。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请实施例所提供的一种入侵检测的方法的流程图;
图2为图1所提供的一种入侵检测的方法中S102的一种实际表现方式的流程图;
图3为现有技术中K折交叉验证拆分数据过程的示意图;
图4为图1所提供的一种入侵检测的方法中S103的一种实际表现方式的流程图;
图5为图1所提供的一种入侵检测的方法中S103的另一种实际表现方式的流程图;
图6为本申请实施例所提供的一种将扩充后的数据集划分为训练集和测试集的过程示意图;
图7为本申请实施例所提供的一种入侵检测的系统的结构图;
图8为本申请实施例所提供的一种入侵检测设备的结构图。
具体实施方式
本申请的核心是提供一种入侵检测的方法、系统、设备及可读存储介质,用于提高入侵检测的准确率。
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
请参考图1,图1为本申请实施例所提供的一种入侵检测的方法的流程图。
其具体包括如下步骤:
S101:对获取到的数据集中的数据进行分类;
通过对采集到的入侵检测数据集进行分析,很容易发现原始数据集中数据分布极不均衡,如,KDD数据集中DOS攻击类型数量约为40万,约占数据总量的80%,而U2L攻击类型数量约为60,占比不到1%。在训练过程中,这一问题易引起学习器对大样本产生过拟合现象,而对小样本产生欠拟合现象,导致模型识别精确率下降。
这里提到的数据的类别包括大样本和小样本,大样本即为样本数据量多的数据类别,小样本即为样本数据量少的数据类别,在本步骤中,对获取到的数据集中的数据进行分类的目的在于,针对数据集中的小样本进行数据扩充,进而解决不平衡数据问题。
S102:对数据集中类别为小样本的数据进行数据扩充;
可选的,可以将小样本数据的具体类别输出,以使研究人员针对具体类别进行人工扩充;
可选的,可以通过使用合成少数类过采样(Synthetic Minority OversamplingTechnique,SMOTE)算法根据数据集中类别为小样本的数据生成合成样本,进而实现数据集中类别为小样本的数据的数据扩充,SMOTE算法的合成策略是对每个小样本a,从它的最近邻中随机选一个样本b,然后在a、b之间的连线上随机选一点作为新合成的小样本;
优选的,也可以通过执行图2所示的步骤实现对数据集中类别为小样本的数据的数据扩充,下面请参考图2,图2为图1所提供的一种入侵检测的方法中S102的一种实际表现方式的流程图,其具体包括以下步骤:
S201:获取每个小样本的近邻样本,并对小样本的近邻样本进行检测;
S202:当近邻样本中大样本的占比为1时,将小样本标记为噪音数据;
S203:当近邻样本中大样本的数据量占比大于预设值且小于1时,将小样本放入危险集中;
S204:计算危险集中每个小样本和对应的近邻样本之间的距离;
S205:获取随机数,并根据距离与随机数生成合成样本,将合成样本添加到数据集中。
基于上述技术方案,本申请实施例会首先对小样本的近邻样本进行检测,若近邻样本中全部为大样本,则近邻样本为噪音数据,并不对其进行处理,若大样本数据量占比大于预设值(例如50%),则将该数据放入危险集中,然后计算危险集中每个数据样本和它对应的近邻样本之间的距离,最后获取随机数,并根据距离与随机数生成合成样本,这样能够避免人工扩充所有小样本时产生过度拟合问题。
S103:将扩充后的数据集划分为训练集和测试集,并利用训练集对预设网络模型进行训练,利用测试集对训练后的预设网络模型进行性能评估;
可选的,基于原始的网格搜索算法通过设置步长调控参数的寻优范围,但初始步长设置后无法更新,以相同的步长进行参数寻优会出现以下两个弊端:步长设置过大,容易丢失最优参数;步长设置过小,调参时间会增加。为提高网格搜索参数的寻优效率,这里提到的利用训练集对预设网络模型进行训练,其具体可以通过执行如下步骤实现:
获取预设网络模型中所有弱学习器的参数范围及步长;
根据步长动态调节策略对步长进行更新,并根据更新后的步长对参数范围进行调整;
对调整后的参数范围进行网格搜索,找到参数范围内的较优参数值;
重复执行根据步长动态调节策略对步长进行更新,并根据更新后的步长对参数范围进行调整的步骤及后续所有步骤,直至步长达到步长阈值或找到参数范围内的最优值。
本申请实施例的主要目的是找出重点参数范围,并对其进一步地细致划分,在一个具体实施例中,上述技术方案可以通过执行以下步骤实现:
首先初始化根节点,估计使损失函数极小化的常数值,设置参数初始范围及步长;其次通过计算基模型的残差来估计回归树叶节点的范围Rjm,拟合残差的近似值;然后通过对目标损失函数进行二阶泰勒展开来估计叶节点区域的值,详细过程如下:
经过m次迭代后,基模型第m次的预测结果等于前m-1次的预测结果加上第m次的预测结果,此时目标函数为:
训练第m个学习器时,由于前m-1个学习器已训练结束,因此,前m-1个学习器的预测结果均为常数,则有
其中,f(X)=wq(x)为每棵树(或基模型)的数学表示形式;Ω(f)为将叶结点的输出作为复杂度度量的基本点,γ,λ为复杂度度量参数;wj为多维向量,表示叶结点的输出;
定义叶节点的样本集为:Ij={i|q(xi)=j},将目标函数按叶节点累加形式展开可得:
极小化整体损失函数更新回归树,此时对首次设置的参数训练结束,输出当前范围下较优参数取值;最后,根据步长动态调节策略对步长进行更新,并根据更新后的所述步长对所述参数范围进行调整,对新参数范围进行再训练。
S104:确定性能最佳的预设网络模型为入侵检测模型,并利用入侵检测模型对获取到的感知数据进行入侵检测。
基于上述技术方案,本申请所提供的一种入侵检测的方法,通过对获取到的数据集中的数据进行分类并对数据集中类别为小样本的数据进行数据扩充,避免了训练集中数据分布不平衡情况的出现,进而避免了学习器对小样本产生欠拟合现象,提高了模型的学习效率和泛化能力,进而提高了入侵检测的准确率。
目前,机器学习中使用最广泛的为K折交叉验证(K-Fold Cross Validation,K-FCV)方法将数据集分为训练集和测试集。K-FCV方法将数据按顺序均分为K组,每组划分为K个子集,每个子集数据分别做一次测试集,其余K-1个子集作为训练集,训练结束得到K个模型,将K个模型的分类准确率作为最终分类器的性能指标。
请参考图3,图3为现有技术中K折交叉验证拆分数据过程的示意图,如图3所示,首先采用K-FCV方法将数据集按顺序平均分为4个组group,对每组中的数据平均分为4个子集,其中每个子集分别充当一次测试集,其余子集为训练集。在4组数据集下对基模型进行训练,上述操作完成后可以得到4个子模型,4个子模型对数据的识别准确率的平均值即为分类器的准确率。但K-FCV方法存在同类class数据均为训练集或测试集的缺陷,如图3所示,每个小组中的数据按顺序均匀划分,导致小组中的训练集或测试集的数据很可能属于同一种攻击类别,而训练集中的攻击类别分布不均匀将最终导致模型对小样本识别率低,对大样本产生过拟合现象。此外,该交叉验证方法在面对高维数据特征时,无法保证对特征进行有效选择,大量冗余或不相关的数据特征将导致模型训练难度增大。
为解决此问题,针对于上述实施例的步骤S103,其中所描述的将扩充后的数据集划分为训练集和测试集,也可以通过执行图4所示的步骤实现,下面结合图4进行说明。
请参考图4,图4为图1所提供的一种入侵检测的方法中S103的一种实际表现方式的流程图。
其具体包括以下步骤:
S401:按照攻击类别将扩充后的数据集划分为对应的数据组,每个数据组包括预设数量的数据子集;
可选的,在按照攻击类别将扩充后的数据集划分为对应的数据组之前,还可以使用递归特征消除方法将扩充后的数据集中的冗余信息删除。
S402:依次在每个数据组的所有数据子集中分别抽取预设比例的数据作为测试集,将未被抽取的数据作为训练集。
在此基础上,步骤S103中提到的利用训练集对预设网络模型进行训练,利用测试集对训练后的预设网络模型进行性能评估,可以通过执行图5所示的步骤实现,下面请参考图5,图5为图1所提供的一种入侵检测的方法中S103的另一种实际表现方式的流程图。
其具体包括以下步骤:
S501:获取每个训练集中所有样本的初始预测值;
S502:确定每个训练集的第一协方差矩阵,并通过拟合函数拟合第一协方差矩阵和初始预测值得到对应训练集的预测值;
S503:确定每个测试集的第二协方差矩阵,并通过拟合函数拟合第二协方差矩阵和预测值得到交叉验证指数;
S504:确定交叉验证指数最高的一组训练集和测试集作为最优训练集和最优测试集,并利用最优训练集对预设网络模型进行训练,利用最优测试集对训练后的预设网络模型进行性能评估。
本申请实施例的目的在于降低数据特征维度,避免K-FCV方法对数据类别(攻击类别)进行不均匀分配,首先使用递归特征消除方法对数据特征信息进行处理,删除冗余信息,同时降低样本特征维度,然后使用分层抽取数据方法来保证训练集和测试集中的攻击类别等比例划分。
请参考图6,图6为本申请实施例所提供的一种将扩充后的数据集划分为训练集和测试集的过程示意图。如图6所示,本申请先初始化估计量,即确定每个模块中k个样本的初始预测值,然后获取每个训练集中所有样本的初始预测值;确定每个训练集的第一协方差矩阵,并通过拟合函数拟合第一协方差矩阵和初始预测值得到对应训练集的预测值;确定每个测试集的第二协方差矩阵,并通过拟合函数拟合第二协方差矩阵和预测值得到交叉验证指数;确定交叉验证指数最高的一组训练集和测试集作为最优训练集和最优测试集,并利用最优训练集对预设网络模型进行训练,利用最优测试集对训练后的预设网络模型进行性能评估。
与现有技术中K折交叉验证拆分数据相比,本申请实施例存在以下优点:
在特征选择方面,本申请实施例采用递归特征消除方法为每一个特征指定权重值。使用基模型对测试集数据进行多次训练,每次训练后将权重绝对值较小的特征从数据集中剔除,对剩余特征继续训练,直至达到特征阈值,提出了大量冗余或不相关的数据特征,降低了模型的训练难度。
在数据分配方面,本申请实施例通过对数据集进行处理后,对数据进行按比例划分,即每个小组中训练集中的数据属于不同的攻击类别,并且每个小组中训练集和测试集中的攻击类别比例与原始训练集中的攻击类别比例相同,避免了小组中的训练集或测试集的数据属于同一种攻击类别,也避免了训练集中的攻击类别分布不均匀,提高了模型对小样本的识别率,同时避免了对大样本产生过拟合现象。
请参考图7,图7为本申请实施例所提供的一种入侵检测的系统的结构图。
该系统可以包括:
分类模块100,用于对获取到的数据集中的数据进行分类,数据的类别包括大样本和小样本;
数据扩充模块200,用于对数据集中类别为小样本的数据进行数据扩充;
划分模块300,用于将扩充后的数据集划分为训练集和测试集,并利用训练集对预设网络模型进行训练,利用测试集对训练后的预设网络模型进行性能评估;
入侵检测模块400,用于确定性能最佳的预设网络模型为入侵检测模型,并利用入侵检测模型对获取到的感知数据进行入侵检测。
在上述实施例的基础上,在一个具体实施例中,数据扩充模块200可以包括:
检测子模块,用于获取每个小样本的近邻样本,并对小样本的近邻样本进行检测;
标记子模块,用于当近邻样本中大样本的占比为1时,将小样本标记为噪音数据;
存放子模块,用于当近邻样本中大样本的数据量占比大于预设值且小于1时,将小样本放入危险集中;
计算子模块,用于计算危险集中每个小样本和对应的近邻样本之间的距离;
合成子模块,用于获取随机数,并根据距离与随机数生成合成样本,将合成样本添加到数据集中。
在上述实施例的基础上,在一个具体实施例中,划分模块300可以包括:
划分子模块,用于按照攻击类别将扩充后的数据集划分为对应的数据组,每个数据组包括预设数量的数据子集;
抽取子模块,用于依次在每个数据组的所有数据子集中分别抽取预设比例的数据作为测试集,将未被抽取的数据作为训练集。
在上述实施例的基础上,在一个具体实施例中,划分模块300可以包括:
第一获取子模块,用于获取每个训练集中所有样本的初始预测值;
第一确定子模块,用于确定每个训练集的第一协方差矩阵,并通过拟合函数拟合第一协方差矩阵和初始预测值得到对应训练集的预测值;
第二确定子模块,用于确定每个测试集的第二协方差矩阵,并通过拟合函数拟合第二协方差矩阵和预测值得到交叉验证指数;
第三确定子模块,用于确定交叉验证指数最高的一组训练集和测试集作为最优训练集和最优测试集,并利用最优训练集对预设网络模型进行训练,利用最优测试集对训练后的预设网络模型进行性能评估。
在上述实施例的基础上,在一个具体实施例中,划分模块300还可以包括:
删除子模块,用于使用递归特征消除方法将扩充后的数据集中的冗余信息删除。
在上述实施例的基础上,在一个具体实施例中,划分模块300可以包括:
第二获取子模块,用于获取预设网络模型中所有弱学习器的参数范围及步长;
更新子模块,用于根据步长动态调节策略对步长进行更新,并根据更新后的步长对参数范围进行调整;
搜索子模块,用于对调整后的参数范围进行网格搜索,找到参数范围内的较优参数值;
重复执行子模块,用于重复执行根据步长动态调节策略对步长进行更新,并根据更新后的步长对参数范围进行调整的步骤及后续所有步骤,直至步长达到步长阈值或找到参数范围内的最优值。
由于系统部分的实施例与方法部分的实施例相互对应,因此系统部分的实施例请参见方法部分的实施例的描述,这里暂不赘述。
请参考图8,图8为本申请实施例所提供的一种入侵检测设备的结构图。
该入侵检测设备800可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(central processing units,CPU)822(例如,一个或一个以上处理器)和存储器832,一个或一个以上存储应用程序842或数据844的存储介质830(例如一个或一个以上海量存储设备)。其中,存储器832和存储介质830可以是短暂存储或持久存储。存储在存储介质830的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对装置中的一系列指令操作。更进一步地,处理器822可以设置为与存储介质830通信,在入侵检测设备800上执行存储介质830中的一系列指令操作。
入侵检测设备800还可以包括一个或一个以上电源828,一个或一个以上有线或无线网络接口850,一个或一个以上输入输出接口858,和/或,一个或一个以上操作系统841,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等等。
上述图1至图6所描述的入侵检测的方法中的步骤由入侵检测设备基于该图8所示的结构实现。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置、设备和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,功能调用装置,或者网络设备等)执行本申请各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上对本申请所提供的一种入侵检测的方法、系统、设备及可读存储介质进行了详细介绍。本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围内。
还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、物品或者设备中还存在另外的相同要素。
Claims (10)
1.一种入侵检测的方法,其特征在于,包括:
对获取到的数据集中的数据进行分类,所述数据的类别包括大样本和小样本;
对所述数据集中所述类别为小样本的数据进行数据扩充;
将扩充后的所述数据集划分为训练集和测试集,并利用所述训练集对预设网络模型进行训练,利用所述测试集对训练后的所述预设网络模型进行性能评估;
确定性能最佳的预设网络模型为入侵检测模型,并利用所述入侵检测模型对获取到的感知数据进行入侵检测。
2.根据权利要求1所述的方法,其特征在于,对所述数据集中所述类别为小样本的数据进行数据扩充,包括:
获取每个所述小样本的近邻样本,并对所述小样本的近邻样本进行检测;
当所述近邻样本中所述大样本的占比为1时,将所述小样本标记为噪音数据;
当所述近邻样本中所述大样本的数据量占比大于预设值且小于1时,将所述小样本放入危险集中;
计算所述危险集中每个小样本和对应的近邻样本之间的距离;
获取随机数,并根据所述距离与所述随机数生成合成样本,将所述合成样本添加到所述数据集中。
3.根据权利要求1所述的方法,其特征在于,将扩充后的所述数据集划分为训练集和测试集,包括:
按照攻击类别将扩充后的所述数据集划分为对应的数据组,每个所述数据组包括预设数量的数据子集;
依次在每个所述数据组的所有数据子集中分别抽取预设比例的数据作为测试集,将未被抽取的数据作为训练集。
4.根据权利要求3所述的方法,其特征在于,利用所述训练集对预设网络模型进行训练,利用所述测试集对训练后的所述预设网络模型进行性能评估,包括:
获取每个所述训练集中所有样本的初始预测值;
确定每个所述训练集的第一协方差矩阵,并通过拟合函数拟合所述第一协方差矩阵和所述初始预测值得到对应训练集的预测值;
确定每个所述测试集的第二协方差矩阵,并通过拟合函数拟合所述第二协方差矩阵和所述预测值得到交叉验证指数;
确定所述交叉验证指数最高的一组训练集和测试集作为最优训练集和最优测试集,并利用所述最优训练集对所述预设网络模型进行训练,利用所述最优测试集对训练后的所述预设网络模型进行性能评估。
5.根据权利要求3所述的方法,其特征在于,在按照攻击类别将扩充后的所述数据集划分为对应的数据组之前,还包括:
使用递归特征消除方法将扩充后的所述数据集中的冗余信息删除。
6.根据权利要求1所述的方法,其特征在于,利用所述训练集对预设网络模型进行训练,包括:
获取所述预设网络模型中所有弱学习器的参数范围及步长;
根据步长动态调节策略对所述步长进行更新,并根据更新后的所述步长对所述参数范围进行调整;
对调整后的所述参数范围进行网格搜索,找到所述参数范围内的较优参数值;
重复执行根据步长动态调节策略对所述步长进行更新,并根据更新后的所述步长对所述参数范围进行调整的步骤及后续所有步骤,直至所述步长达到步长阈值或找到所述参数范围内的最优值。
7.一种入侵检测的系统,其特征在于,包括:
分类模块,用于对获取到的数据集中的数据进行分类,所述数据的类别包括大样本和小样本;
数据扩充模块,用于对所述数据集中所述类别为小样本的数据进行数据扩充;
划分模块,用于将扩充后的所述数据集划分为训练集和测试集,并利用所述训练集对预设网络模型进行训练,利用所述测试集对训练后的所述预设网络模型进行性能评估;
入侵检测模块,用于确定性能最佳的预设网络模型为入侵检测模型,并利用所述入侵检测模型对获取到的感知数据进行入侵检测。
8.根据权利要求7所述的系统,其特征在于,所述数据扩充模块包括:
检测子模块,用于获取每个所述小样本的近邻样本,并对所述小样本的近邻样本进行检测;
标记子模块,用于当所述近邻样本中所述大样本的占比为1时,将所述小样本标记为噪音数据;
存放子模块,用于当所述近邻样本中所述大样本的数据量占比大于预设值且小于1时,将所述小样本放入危险集中;
计算子模块,用于计算所述危险集中每个小样本和对应的近邻样本之间的距离;
合成子模块,用于获取随机数,并根据所述距离与所述随机数生成合成样本,将所述合成样本添加到所述数据集中。
9.一种入侵检测设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至6任一项所述入侵检测的方法的步骤。
10.一种可读存储介质,其特征在于,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至6任一项所述入侵检测的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010796355.1A CN111914253B (zh) | 2020-08-10 | 2020-08-10 | 一种入侵检测的方法、系统、设备及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010796355.1A CN111914253B (zh) | 2020-08-10 | 2020-08-10 | 一种入侵检测的方法、系统、设备及可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111914253A true CN111914253A (zh) | 2020-11-10 |
CN111914253B CN111914253B (zh) | 2022-05-17 |
Family
ID=73283590
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010796355.1A Active CN111914253B (zh) | 2020-08-10 | 2020-08-10 | 一种入侵检测的方法、系统、设备及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111914253B (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112699368A (zh) * | 2021-01-05 | 2021-04-23 | 广东省信息安全测评中心 | 主机序列入侵检测方法 |
CN113434859A (zh) * | 2021-06-30 | 2021-09-24 | 平安科技(深圳)有限公司 | 入侵检测方法、装置、设备及存储介质 |
CN113553581A (zh) * | 2021-07-12 | 2021-10-26 | 华东师范大学 | 针对非平衡数据的入侵检测系统 |
CN113553580A (zh) * | 2021-07-12 | 2021-10-26 | 华东师范大学 | 针对非平衡数据的入侵检测方法 |
CN113922985A (zh) * | 2021-09-03 | 2022-01-11 | 西南科技大学 | 一种基于集成学习的网络入侵检测方法及系统 |
CN114629871A (zh) * | 2022-02-28 | 2022-06-14 | 杭州趣链科技有限公司 | 一种基于不平衡动态流数据分类的垃圾邮件过滤方法、设备及存储介质 |
CN116432091A (zh) * | 2023-06-15 | 2023-07-14 | 山东能源数智云科技有限公司 | 基于小样本的设备故障诊断方法、模型的构建方法及装置 |
CN117056734A (zh) * | 2023-10-12 | 2023-11-14 | 山东能源数智云科技有限公司 | 基于数据驱动的设备故障诊断模型的构建方法及装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111104510A (zh) * | 2019-11-15 | 2020-05-05 | 南京中新赛克科技有限责任公司 | 一种基于词嵌入的文本分类训练样本扩充方法 |
CN111181939A (zh) * | 2019-12-20 | 2020-05-19 | 广东工业大学 | 一种基于集成学习的网络入侵检测方法及装置 |
CN111401391A (zh) * | 2019-01-02 | 2020-07-10 | 中国移动通信有限公司研究院 | 一种数据挖掘方法、装置及计算机可读存储介质 |
-
2020
- 2020-08-10 CN CN202010796355.1A patent/CN111914253B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111401391A (zh) * | 2019-01-02 | 2020-07-10 | 中国移动通信有限公司研究院 | 一种数据挖掘方法、装置及计算机可读存储介质 |
CN111104510A (zh) * | 2019-11-15 | 2020-05-05 | 南京中新赛克科技有限责任公司 | 一种基于词嵌入的文本分类训练样本扩充方法 |
CN111181939A (zh) * | 2019-12-20 | 2020-05-19 | 广东工业大学 | 一种基于集成学习的网络入侵检测方法及装置 |
Non-Patent Citations (4)
Title |
---|
崔居福等: "Dynamics of Complex Networks: Malware Propagation Modeling and Analysis in Industrial Internet of Things", 《IEEE ACCESS》 * |
张泽: "基于数据降维和改进MEA-SKohonen的入侵检测模型", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
杨彦荣等: "基于GAN-PSO-ELM的网络入侵检测方法", 《计算机工程与应用》 * |
滕少华等: "小样本纠错的多层入侵检测分类研究", 《广东工业大学学报》 * |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112699368A (zh) * | 2021-01-05 | 2021-04-23 | 广东省信息安全测评中心 | 主机序列入侵检测方法 |
CN113434859A (zh) * | 2021-06-30 | 2021-09-24 | 平安科技(深圳)有限公司 | 入侵检测方法、装置、设备及存储介质 |
CN113434859B (zh) * | 2021-06-30 | 2023-08-15 | 平安科技(深圳)有限公司 | 入侵检测方法、装置、设备及存储介质 |
CN113553581A (zh) * | 2021-07-12 | 2021-10-26 | 华东师范大学 | 针对非平衡数据的入侵检测系统 |
CN113553580A (zh) * | 2021-07-12 | 2021-10-26 | 华东师范大学 | 针对非平衡数据的入侵检测方法 |
CN113922985A (zh) * | 2021-09-03 | 2022-01-11 | 西南科技大学 | 一种基于集成学习的网络入侵检测方法及系统 |
CN113922985B (zh) * | 2021-09-03 | 2023-10-31 | 西南科技大学 | 一种基于集成学习的网络入侵检测方法及系统 |
CN114629871A (zh) * | 2022-02-28 | 2022-06-14 | 杭州趣链科技有限公司 | 一种基于不平衡动态流数据分类的垃圾邮件过滤方法、设备及存储介质 |
CN116432091A (zh) * | 2023-06-15 | 2023-07-14 | 山东能源数智云科技有限公司 | 基于小样本的设备故障诊断方法、模型的构建方法及装置 |
CN116432091B (zh) * | 2023-06-15 | 2023-09-26 | 山东能源数智云科技有限公司 | 基于小样本的设备故障诊断方法、模型的构建方法及装置 |
CN117056734A (zh) * | 2023-10-12 | 2023-11-14 | 山东能源数智云科技有限公司 | 基于数据驱动的设备故障诊断模型的构建方法及装置 |
CN117056734B (zh) * | 2023-10-12 | 2024-02-06 | 山东能源数智云科技有限公司 | 基于数据驱动的设备故障诊断模型的构建方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN111914253B (zh) | 2022-05-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111914253B (zh) | 一种入侵检测的方法、系统、设备及可读存储介质 | |
TWI769754B (zh) | 基於隱私保護確定目標業務模型的方法及裝置 | |
JP7183385B2 (ja) | ノード分類方法、モデル訓練方法並びに、その装置、機器及びコンピュータプログラム | |
CN110135157B (zh) | 恶意软件同源性分析方法、系统、电子设备及存储介质 | |
CN106899440B (zh) | 一种面向云计算的网络入侵检测方法及系统 | |
CN110827921B (zh) | 一种单细胞聚类方法、装置、电子设备及存储介质 | |
KR20210032140A (ko) | 뉴럴 네트워크에 대한 프루닝을 수행하는 방법 및 장치 | |
CN110674865B (zh) | 面向软件缺陷类分布不平衡的规则学习分类器集成方法 | |
CN103210368A (zh) | 软件应用程序识别 | |
CN109840413A (zh) | 一种钓鱼网站检测方法及装置 | |
CN112052451A (zh) | 一种webshell检测方法和装置 | |
CN112437053A (zh) | 入侵检测方法及装置 | |
CN114332500A (zh) | 图像处理模型训练方法、装置、计算机设备和存储介质 | |
CN114692156A (zh) | 内存片段恶意代码入侵检测方法、系统、存储介质及设备 | |
CN115987552A (zh) | 一种基于深度学习的网络入侵检测方法 | |
CN115114484A (zh) | 异常事件检测方法、装置、计算机设备和存储介质 | |
CN110675382A (zh) | 基于CNN-LapsELM的铝电解过热度识别方法 | |
CN113066528B (zh) | 基于主动半监督图神经网络的蛋白质分类方法 | |
CN111783088B (zh) | 一种恶意代码家族聚类方法、装置和计算机设备 | |
CN117785993A (zh) | 图模式的挖掘方法及装置 | |
CN111581640A (zh) | 一种恶意软件检测方法、装置及设备、存储介质 | |
CN111160077A (zh) | 一种大规模人脸动态聚类方法 | |
CN115169465A (zh) | 变压器数据异常检测方法、装置、设备、介质和产品 | |
Johnpaul et al. | Representational primitives using trend based global features for time series classification | |
CN110197066B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |