CN112070131A - 一种基于部分深度学习理论的入侵检测方法 - Google Patents
一种基于部分深度学习理论的入侵检测方法 Download PDFInfo
- Publication number
- CN112070131A CN112070131A CN202010865356.7A CN202010865356A CN112070131A CN 112070131 A CN112070131 A CN 112070131A CN 202010865356 A CN202010865356 A CN 202010865356A CN 112070131 A CN112070131 A CN 112070131A
- Authority
- CN
- China
- Prior art keywords
- data
- training
- data set
- intrusion
- pca
- 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
Images
Classifications
-
- 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/213—Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods
- G06F18/2135—Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods based on approximation criteria, e.g. principal component analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
-
- 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/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- 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
- G06N3/084—Backpropagation, e.g. using gradient descent
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/01—Dynamic search techniques; Heuristics; Dynamic trees; Branch-and-bound
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Evolutionary Computation (AREA)
- Life Sciences & Earth Sciences (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Computing Systems (AREA)
- Computational Linguistics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Evolutionary Biology (AREA)
- Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Image Analysis (AREA)
Abstract
本发明涉及一种利用部分深度学习理论检测网络数据的入侵检测方法,包括以下步骤:准备数据集:选取经过预处理后的训练数据集和测试数据集;建立CNN并训练CNN,利用经过预处理后的训练数据集训练CNN;建立决策树DT,利用第一步的经过预处理后的训练数据集来训练DT,以实现对测试数据进行第一次二分类;主成分分析法PCA降维处理:对于DT分类后结果为正常数据的测试数据,引入PCA对数据进行降维处理;对经过PCA降维处理的正常数据的测试数据,再利用已经训练好的DNN进行第二次二分类。
Description
技术领域
本发明属于深度学习与网络安全领域,特别是涉及一种利用部分深度学习理论检测网络数据的入侵检测方法。
背景技术
伴随着时代的不断进步,互联互通的网络使人们的生活更加便利,购物出行所需要的仅仅是一部可以联网的手机。这种便利的代价却是几乎每个人的身份信息、社会关系、个人财产都牢牢地与网络绑定在一起,在将网络作为社会交互的桥梁的同时所需要思考的一个问题就是“桥梁”的稳固性,也即网络的安全问题。通信系统与网络入口时时刻刻都面临着来自于外部甚至于其系统内部的网络攻击,且不似网络未成熟时期的单一攻击,如今的绝大多数入侵行为种类多样并且呈混合态势发展,防御起来愈发困难。当今入侵检测领域作为一个重要领域,虚警率高、检测率低、处理速度慢、特征维度高等问题在困扰着从事这一领域的专家学者。机器学习作为近几年非常热门的一种算法工具,理所应当的有专家学者尝试其在入侵检测方面的应用。Thaseen[1]等人提出利用主成分分析PCA降维后用支持向量机来检测入侵,虽然检测速度较快,但是整体准确率较差。丁龙斌[2]等人利用集成深度森林EDF来进行入侵检测,检测速度较快,但检测精度较低。刘敬浩[3]等人提出了一种基于独立成分分析ICA与深度神经网络DNN的入侵检测模型ICA-DNN,入侵检测与深度学习方法的结合赋予了该模型更好的特征学习能力和更精确的分类能力,但是该模型预测时间并未进行具体评估,模型实时性较差。
考虑到上述方法中的检测精度与检测速度二者不可得兼的问题,本发明提出一种结合多种深度学习理论的入侵检测方法,能够在实现相对高的检测率的同时具有更加迅速的检测速度,有效解决了入侵检测的实时性问题。
参考文献:
[1]Thaseen,Sumaiya.Improving Accuracy of Intrusion Detec-tion ModelUsing PCA and optimized SVM[J].Journal of Computing and InformationTechnology.2016,24:133-148
[2]丁龙斌,伍忠东,苏佳丽.基于集成深度森林的入侵检测方法[J].计算机工程,2020,46(3):144-150
[3]刘敬浩,毛思平,付晓梅.基于ICA算法与深度神经网络的入侵检测模型[J].信息网络安全,2019,(03):1-10
发明内容
本发明提供了一种基于部分深度学习理论的入侵检测方法,在保障检测准确率的基础上极大提升了训练以及检测速度,技术方案如下:
一种利用部分深度学习理论检测网络数据的入侵检测方法,包括以下步骤:
第一步,准备数据集:
采用用于入侵检测的NSL-KDD数据集,数据包含41种特征,分为TCP连接基本特征、主机上的操作特征、基于时间的网络流量统计特征、基于主机的网络流量统计特征这四个大特征类,首先按照其数据集自带标签将其标定为入侵数据或者正常数据,其次将数据集的字符串值按照其特征转换为计算机可识别的离散值或连续值;之后进行数据集预处理,先将连续数据归一化,其次对离散取值的数据进行编码,离散取值的数据使用one-hot编码;选取经过预处理后的训练数据集和测试数据集;
第二步,建立CNN并训练CNN,利用经过预处理后的训练数据集训练CNN,利用DNN反向传播算法计算出隐藏层与输出层的线性关系系数矩阵和偏倚向量后,完成DNN的训练,训练中采用神经网络计算过程的ReLU激活函数以及收敛速度更快的adam优化算法;
第三步,建立决策树DT,利用第一步的经过预处理后的训练数据集来训练DT,以实现对测试数据进行第一次二分类,DT选用以信息增益为分裂特征的ID3算法,分类结果包括正常数据的测试数据和入侵数据的测试数据;用PCA降维后利用DNN二次分类,分类结果为入侵数据的数据直接判定为入侵数据;DT的深度不宜过深,以防止数据分类错误后影响最终准确率;
第四步,主成分分析法PCA降维处理:对于DT分类后结果为正常数据的测试数据,引入PCA对数据进行降维处理,由此降低数据特征维度之间的相关性与数据冗余度,训练数据进行白化使其特征之间的相关性减低并且所有特征具有相同的方差;
第五步,对经过PCA降维处理的正常数据的测试数据,再利用已经训练好的DNN进行第二次二分类。
第六步,对测试数据进行检测:用训练过后的DT对预处理后的测试数据集初次分类,将易于筛选的数据筛选出来,DT检测为入侵的数据添加入侵标签并存入临时训练样本,检测为正常数据的测试数据进行降维处理,DNN对PCA降维处理后正常数据进行分类,分类结果不论是否为入侵,皆添加相应标签后存入临时训练样本,由于入侵检测过程是逐条数据进行的,在检测过程中将测试数据集的原本数据类型与所对应数据所添加标签的比对结果进行量化,量化值累积到设定阈值后利用刚才积累的数据对DT以及DNN做一次再训练微调。
本发明首先利用决策树DT对数据初步分类以缩小整体数据量达到加快处理速度的目的,判别为入侵的数据存入临时样本集以优化DT以及深度神经网络DNN,判别为正常的数据用主成分分析PCA进行降低数据维度后DNN进行二次处理,实现相对高的检测率的同时具有更加迅速的检测速度的目标。
附图说明
图1为本发明提供的一种入侵检测方法的流程图
图2为本发明测试结果与其他方法的检测精度与检测速度的对比图
具体实施方式
为使本发明的技术方案更加清楚,下面结合附图对本发明做进一步阐述。
本发明提供了一种利用部分深度学习理论检测网络数据的入侵检测方法。具体实现步骤如下:
第一步,准备数据集:
(1)准备训练与测试所需数据。本发明所用数据集未经预处理的用于入侵检测的NSL-KDD数据集。数据集训练集共有125937条数据,测试集共有数据22544条。有41种特征,分为TCP连接基本特征、主机上的操作特征、基于时间的网络流量统计特征、基于主机的网络流量统计特征这四个大特征类。首先按照其数据集自带标签将其标定为入侵数据或者正常数据,其次将数据集的字符串值按照其特征转换为计算机可识别的离散值或连续值。
(2)数据集预处理,先将连续数据归一化,其次对离散取值的数据进行编码。离散取值的数据使用one-hot编码后,数据维度由41上升至122。
优选地,连续数据归一化采用如下具体形式:
数据集中有条m数据,每条数据都有n维特征,则式中x为归一化前第i条数据的第j维特征值,min为归一化前这m条数据第j维特征中的最小值,max为归一化前这m条数据第j维特征中的最大值,x*为归一化后第i条数据的第j维特征值。
第二步,模型训练:
(1)建立决策树DT。用经过预处理后的训练数据集来训练DT。DT的功能是对测试数据进行第一次二分类,分类结果为正常数据的数据用PCA降维后利用DNN二次分类,分类结果为入侵数据的数据直接判定为入侵数据。由于DT的作用并不是尽可能多地识别出入侵数据,而是在尽可能少地将正常数据误判为入侵数据,所以选用浅层结构以防止过多正常数据被判定为入侵数据导致后续DNN二次处理时不能有效提高整体准确率。依据选取不同分裂特征有三种判决依据,分别为信息增益,增益率,基尼指数。此处DT的最大深度为2,随机状态取值为392。建立的DT即可用于处理未知数据。
优选地,此处我们选用以信息增益为分裂特征的ID3算法,具体为:
S依据某具有M个可能取值的离散属性f进行数据划分,生成M个子节点,第i个子节点内包括样本集合S在属性f上取值为fi的所有样本,记为Si,|Si|表示Si中的样本个数,|S|表示样本集合总样本数。
(2)PCA降维处理。DT分类后结果为正常数据的测试数据为需要PCA处理的数据。由于DNN对高维数据进行处理需要比较大的隐藏层层数,而隐藏层越多,训练DNN所耗时间呈指数式增长,与我们的实验目标不符,所以引入PCA对数据进行降维处理,由此降低数据特征维度之间的相关性与数据冗余度。具体地,首先将原数据矩阵化后零均值化,其次求出其协方差矩阵以及协方差矩阵的特征值和特征向量,将特征向量按对应特征值大小从上到下按行排列,提取前k行组成矩阵,该矩阵即为降维后矩阵,k即为所降至维度大小。此处将122维的训练数据降维至11维,并对训练数据进行白化使其特征之间的相关性减低并且所有特征具有相同的方差。
(3)训练DNN。DT分类结果为正常的测试数据经PCA处理后为训练好的DNN的输入,输出为测试数据判定为正常数据或者入侵数据的结果。训练DNN所用训练数据集为第一步经过预处理的训练数据集,利用DNN反向传播算法计算出隐藏层与输出层的线性关系系数矩阵和偏倚向量后,即完成了DNN的训练。DNN采用简化神经网络计算过程的ReLU激活函数以及收敛速度更快的adam优化算法,以加快模型训练速度。
优选地,所述激活函数ReLU具体为:
f(x)=max(0,x)
DNN引入两个隐藏层,第一层神经元个数为140,第二层神经元个数为70。
第三步,利用所建立模型对测试数据进行检测:
用训练过后的DT对预处理后的测试数据集初次分类,DT这一层相当于过滤网,将易于筛选的数据筛选出来。DT检测为入侵的数据添加入侵标签并存入临时训练样本,检测为正常的数据进行PCA降维处理。DNN对数据进行一次前向传播即可对PCA处理后所输出的低维正常数据进行分类,分类结果不论是否为入侵,皆添加相应标签后存入临时训练样本。在利用临时训练样本对PCA再训练以优化其维度及主成分时,因PCA属于无监督学习,故不使用我们在第一步与第二步中所给定的标签;而DT与DNN则不同,由于这两者属于监督学习,所以在利用临时训练样本集再训练时需要用到我们所赋予数据的标签。由于入侵检测过程是逐条数据进行的,在检测过程中将测试数据集的原本数据类型与所对应数据所添加标签的比对结果进行量化,量化值累积到设定阈值后利用刚才积累的数据对DT以及DNN做一次再训练微调。若干次的微调之后,所发明方法效果达到最优。
Claims (1)
1.一种利用部分深度学习理论检测网络数据的入侵检测方法,包括以下步骤:
第一步,准备数据集:
采用用于入侵检测的NSL-KDD数据集,数据包含41种特征,分为TCP连接基本特征、主机上的操作特征、基于时间的网络流量统计特征、基于主机的网络流量统计特征这四个大特征类,首先按照其数据集自带标签将其标定为入侵数据或者正常数据,其次将数据集的字符串值按照其特征转换为计算机可识别的离散值或连续值;之后进行数据集预处理,先将连续数据归一化,其次对离散取值的数据进行编码,离散取值的数据使用one-hot编码;选取经过预处理后的训练数据集和测试数据集;
第二步,建立CNN并训练CNN,利用经过预处理后的训练数据集训练CNN,利用DNN反向传播算法计算出隐藏层与输出层的线性关系系数矩阵和偏倚向量后,完成DNN的训练,训练中采用神经网络计算过程的ReLU激活函数以及收敛速度更快的adam优化算法;
第三步,建立决策树DT,利用第一步的经过预处理后的训练数据集来训练DT,以实现对测试数据进行第一次二分类,DT选用以信息增益为分裂特征的ID3算法,分类结果包括正常数据的测试数据和入侵数据的测试数据;用PCA降维后利用DNN二次分类,分类结果为入侵数据的数据直接判定为入侵数据;DT的深度不宜过深,以防止数据分类错误后影响最终准确率;
第四步,主成分分析法PCA降维处理:对于DT分类后结果为正常数据的测试数据,引入PCA对数据进行降维处理,由此降低数据特征维度之间的相关性与数据冗余度,训练数据进行白化使其特征之间的相关性减低并且所有特征具有相同的方差;
第五步,对经过PCA降维处理的正常数据的测试数据,再利用已经训练好的DNN进行第二次二分类。
第六步,对测试数据进行检测:用训练过后的DT对预处理后的测试数据集初次分类,将易于筛选的数据筛选出来,DT检测为入侵的数据添加入侵标签并存入临时训练样本,检测为正常数据的测试数据进行降维处理,DNN对PCA降维处理后正常数据进行分类,分类结果不论是否为入侵,皆添加相应标签后存入临时训练样本,由于入侵检测过程是逐条数据进行的,在检测过程中将测试数据集的原本数据类型与所对应数据所添加标签的比对结果进行量化,量化值累积到设定阈值后利用刚才积累的数据对DT以及DNN做一次再训练微调。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010865356.7A CN112070131A (zh) | 2020-08-25 | 2020-08-25 | 一种基于部分深度学习理论的入侵检测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010865356.7A CN112070131A (zh) | 2020-08-25 | 2020-08-25 | 一种基于部分深度学习理论的入侵检测方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112070131A true CN112070131A (zh) | 2020-12-11 |
Family
ID=73659426
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010865356.7A Pending CN112070131A (zh) | 2020-08-25 | 2020-08-25 | 一种基于部分深度学习理论的入侵检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112070131A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112291220A (zh) * | 2020-12-25 | 2021-01-29 | 天津大学 | 一种基于一维二态量子游走的入侵检测方法 |
CN112784499A (zh) * | 2021-03-05 | 2021-05-11 | 云南电网有限责任公司电力科学研究院 | 一种基于深度学习替代有限元分析的电抗器磁场仿真方法 |
CN113934719A (zh) * | 2021-10-15 | 2022-01-14 | 吉林大学 | 基于d-n的工业互联网入侵检测数据集处理方法 |
CN115616204A (zh) * | 2022-12-21 | 2023-01-17 | 金发科技股份有限公司 | 一种聚对苯二甲酸乙二醇酯再生料的鉴别方法及系统 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110213287A (zh) * | 2019-06-12 | 2019-09-06 | 北京理工大学 | 一种基于集成机器学习算法的双模式入侵检测装置 |
CN111431849A (zh) * | 2020-02-18 | 2020-07-17 | 北京邮电大学 | 一种网络入侵检测方法及装置 |
-
2020
- 2020-08-25 CN CN202010865356.7A patent/CN112070131A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110213287A (zh) * | 2019-06-12 | 2019-09-06 | 北京理工大学 | 一种基于集成机器学习算法的双模式入侵检测装置 |
CN111431849A (zh) * | 2020-02-18 | 2020-07-17 | 北京邮电大学 | 一种网络入侵检测方法及装置 |
Non-Patent Citations (2)
Title |
---|
CHUAN等: "APTGuard:AdvancedPersistent Threat(APT)Detections and Predictions using Android Smartphone", 《COMPUTATIONAL SCIENCE AND TECHNOLOGY》 * |
文艺数学君: "KDD99数据集与NSL-KDD数据集介绍", 《HTTPS://MATHPRETTY.COM/10244.HTML#%E5%9F%BA%8E%E6%97%B6%E9%B4%E7%9A%84%E7%BD%91E7%BB%9C%E6%B5%81%E9%87%8F%E7%BB%9F%E8%AE%A1%E7%89%B9%E5%BE%81》 * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112291220A (zh) * | 2020-12-25 | 2021-01-29 | 天津大学 | 一种基于一维二态量子游走的入侵检测方法 |
CN112784499A (zh) * | 2021-03-05 | 2021-05-11 | 云南电网有限责任公司电力科学研究院 | 一种基于深度学习替代有限元分析的电抗器磁场仿真方法 |
CN113934719A (zh) * | 2021-10-15 | 2022-01-14 | 吉林大学 | 基于d-n的工业互联网入侵检测数据集处理方法 |
CN113934719B (zh) * | 2021-10-15 | 2024-04-19 | 吉林大学 | 基于d-n的工业互联网入侵检测数据集处理方法 |
CN115616204A (zh) * | 2022-12-21 | 2023-01-17 | 金发科技股份有限公司 | 一种聚对苯二甲酸乙二醇酯再生料的鉴别方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Zhang et al. | Discovering new intents with deep aligned clustering | |
CN112070131A (zh) | 一种基于部分深度学习理论的入侵检测方法 | |
CN108632279B (zh) | 一种基于网络流量的多层异常检测方法 | |
Mirza | Computer network intrusion detection using various classifiers and ensemble learning | |
Zhang et al. | Walking on the edge: Fast, low-distortion adversarial examples | |
Janczura et al. | Classification of particle trajectories in living cells: Machine learning versus statistical testing hypothesis for fractional anomalous diffusion | |
CN107392241B (zh) | 一种基于加权列抽样XGBoost的图像目标分类方法 | |
CN111126576B (zh) | 一种深度学习的训练方法 | |
CN112069310A (zh) | 基于主动学习策略的文本分类方法及系统 | |
CN111556016B (zh) | 一种基于自动编码器的网络流量异常行为识别方法 | |
CN109871749B (zh) | 一种基于深度哈希的行人重识别方法和装置、计算机系统 | |
CN114579743B (zh) | 基于注意力的文本分类方法、装置及计算机可读介质 | |
Bouguila | A model-based approach for discrete data clustering and feature weighting using MAP and stochastic complexity | |
Lin et al. | Effective feature space reduction with imbalanced data for semantic concept detection | |
CN110008699B (zh) | 一种基于神经网络的软件漏洞检测方法及装置 | |
CN112529638B (zh) | 基于用户分类和深度学习的服务需求动态预测方法及系统 | |
CN111859010A (zh) | 一种基于深度互信息最大化的半监督音频事件识别方法 | |
CN115811440B (zh) | 一种基于网络态势感知的实时流量检测方法 | |
Aziguli et al. | A robust text classifier based on denoising deep neural network in the analysis of big data | |
Alalyan et al. | Model-based hierarchical clustering for categorical data | |
CN110246509B (zh) | 一种用于语音测谎的栈式去噪自编码器及深度神经网络结构 | |
CN115577357A (zh) | 一种基于堆叠集成技术的Android恶意软件检测方法 | |
Disha et al. | A Comparative study of machine learning models for Network Intrusion Detection System using UNSW-NB 15 dataset | |
CN114331731A (zh) | 基于pca与rf的区块链异常检测方法及相关装置 | |
CN113179276B (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 | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20201211 |