CN110348481B - 一种基于近邻样本万有引力的网络入侵检测方法 - Google Patents
一种基于近邻样本万有引力的网络入侵检测方法 Download PDFInfo
- Publication number
- CN110348481B CN110348481B CN201910488254.5A CN201910488254A CN110348481B CN 110348481 B CN110348481 B CN 110348481B CN 201910488254 A CN201910488254 A CN 201910488254A CN 110348481 B CN110348481 B CN 110348481B
- Authority
- CN
- China
- Prior art keywords
- sample
- samples
- test sample
- training
- positive
- 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
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/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
- G06F18/2413—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on distances to training or reference patterns
- G06F18/24147—Distances to closest patterns, e.g. nearest neighbour classification
Landscapes
- Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Complex Calculations (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种面向不平衡网络入侵检测的基于熵和万有引力的动态半径近邻分类器,包括通过利用信息熵和样本不平衡率,定义不同分布的样本具有不同的质量;通过利用一范数距离动态的计算每一个测试样本的近邻候选集半径,得到测试样本的近邻候选集;通过计算测试样本的候选集中正、负类样本对测试样本的万有引力,将测试样本分为万有引力较大的那一类。本发明弥补了现有的近邻分类器忽视不平衡问题本身的特性的缺陷,能很好地用于不平衡数据分类,且分类器算法复杂度较低。
Description
技术领域
本发明涉及一种基于近邻样本万有引力的网络入侵检测方法,属于数据分类技术领域。
背景技术
随着基于计算机网络的服务和网络敏感信息的迅猛发展,网络安全问题越来越受到人们的重视。计算机网络安全在现代计算机系统中起着重要的战略作用,而网络入侵检测系统已成为网络安全基础设施的重要组成部分。网络入侵检测是指用于隔离针对计算机和网络的攻击的一组技术,即网络入侵检测系统用于检测网络中的敌对活动。除了检测攻击之外,这样的系统还必须防止其恶意影响,或协助人类在系统或网络管理员中扮演预防角色。随着互联网的进一步发展,尽管已有很多复杂且高效的网络入侵检测系统,但由于网络入侵攻击利用了系统和应用软件中始终包含的未知弱点或漏洞,网络安全是很难保证的。
目前现有的网络攻击检测方法可分为三类:1)基于规则的检测方法,该方法高度依赖现有规则数据库,无法及时更新以应对新的网络攻击手段,因此很容易造成较大的损失;2)基于网络流特征分布的检测方法,由于这种检测方式具有很强的随机性,使得一部分网络入侵手段能够巧妙避开;3)基于机器学习的入侵检测方法,该方法利用机器学习中的一些算法对网络数据进行预测,从而有效地及时应对一些网络攻击。常用机器学习算法如支持向量机,随机森林,神经网络等。基于机器学习网络入侵检测方法能够较有效应对未知的网络攻击,然而,从高度不平衡的网络入侵数据集中学习出高效的模型是一个不可忽视的内在问题,传统的机器学习方法难以高效地解决不平衡的网络入侵问题。
在不平衡数据中,更受人们关注的一类问题的样本数量往往少于其他类,且由于少数类的特殊性和较高的研究价值,使得少数类更值得重视。然而,传统模型分类超平面的设计通常是为了提高总体分类精度,因此少数类样本的重要性被忽视。研究发现,用传统的分类算法处理不平衡数据时,不平衡的数据常常导致决策边界的偏差。
本发明通过构造近邻学习算法来解决不平衡的网络入侵检测问题。KNN是一种简单而有效的经典近邻方法,然而,其准则函数和选择参数K的过程对于不平衡数据并不适用。首先,KNN的预测结果可能被测试样本周围的多数类所误导;其次,参数K是难以调节的,因为它具有很强的数据依赖性。通过引入万有引力的思想,近邻模型能够较好地用于不平衡数据分类。在基于万有引力的算法中,每个样本都被看作是数据空间中的一个对象,在任何两个数据对象之间都存在一种称为数据万有引力的力,这种模型通过比较不同类样本间的万有引力进行分类。本发明首次将万有引力的分类思想引入不平衡网络入侵检测的模型设计中,且所发明的模型能够高效地解决不平衡网络入侵数据。
发明内容
为了提高基于万有引力的近邻模型对不平衡的网络入侵数据的分类性能,本发明提出了一种基于近邻样本万有引力的网络入侵检测模型。所述模型利用一范数计算样本间的距离。同时,利用信息熵的特性,所述模型根据样本的分布即类的确定性赋予不同样本不同的质量权重。此外,为每一个测试样本动态地计算万有引力半径,使得分布在训练样本中不同位置的测试样本能够得到不同的万有引力半径,从而使分类结果更加合理准确。
本发明解决其技术问题所采用的技术方案:首先根据具体问题描述,将采集到的样本转化成可供该系统处理的向量模型,并且对离散特征进行one-hot编码;其次,根据输入训练样本计算不平衡率和每个训练样本的信息熵,即得到了每个训练样本的质量权重;在测试过程中,利用一范数计算测试数据到每个训练数据的距离,从而计算该测试样本的候选集半径和所对应的候选集。最后,根据候选集中每类样本对测试样本的万有引力的大小对测试样本进行分类,其中万有引力的计算公式为本发明提出的修正的数据万有引力公式。
本发明解决其技术问题所采用的技术方案还可以进一步细化。所述技术方案中第二阶段中为了得到训练样本的质量权重,需要计算样本的信息熵,本发明通过每个样本在一定范围内近邻样本的类别概率来计算该样本的信息熵。另外,所述测试过程中采用修正的数据万有引力公式计算测试样本受到的万有引力,其中在修正的万有引力公式中,本发明采用距离的4次幂作为测试样本到每个候选样本的距离的权重,但对于不同数据集,所述权重可根据交叉验证的实验结果进行调整。
本发明有益的效果是:通过设计一个基于近邻样本万有引力的网络入侵检测模型;将近邻算法推广至不平衡网络入侵检测问题。所述通过考虑每个测试样本在所有训练样本中的实际分布,根据每个测试样本与所有训练样本之间的一范数距离动态地计算每个测试样本对应的万有引力半径,从而有效地解决不平衡网络入侵检测问题。
附图说明
图1为本发明应用于不平衡数据分类问题的系统框架图;
图2是本发明在训练步骤的详细描述;
图3是本发明在测试步骤的流程图;
具体实施方式
下面结合附图和实施例对本发明作进一步介绍:本发明的方法共分三个模块。
第一部分:输入模块
输入数据为现实的不平衡网络入侵样本的数据转化,生成向量形式的数据集便于后续模块进行处理。对于一个输入样本i,其向量表示向量xi,向量的维度d,如下所示:
xi=[xi,1,xi,2,...,xi,d]∈Rd
第二部分:训练模块
在这个模块中,对不平衡数据的训练样本集进行学习,计算样本不平衡率和信息熵,得到训练样本的质量。主要步骤如下:
2)计算训练样本的信息熵半径r
信息熵用来描述信息源的确定性,信息熵越大表明信息越不确定。当样本处于分类边界时,通常很难对其进行正确分类,显然,边界样本的类确定性是较低的。在不平衡问题中,决策边界附近的样本往往受到更多的关注,即靠近决策边界的样本的信息熵越大,就越需要更多关注。对于训练集Xtrain中的训练样本x,首先得到用于计算信息熵的候选集的半径r。r的定义如下:
其中r是训练集的平均向量到每个训练样本的距离的最大值,r的设计是为避免在半径为r的范围内选择到的样本数为0的情况,也尽可能合理地利用训练样本的全局信息和局部信息。函数d(.)被定义为两个样本之间的距离,本发明中距离的计算采用L1-范数,并且可以写成:
其中m是样本x的特征维数。
3)在计算了信息熵计算半径r之后,选择的样本xi的信息熵候选集可以确定为:
从而,xi的信息熵计算如下:
E(xi)=-pi+ln(pi+)-pi-ln(pi-)
其中ln(.)是自然对数函数。
第三部分:测试模块
在这个模块中,主要步骤如下:
1)计算测试样本的近邻候选集半径R
本发明考虑测试样本在所有训练样本中的实际分布,动态地计算万有引力的候选集半径R,以选择测试样本的近邻候选样本,只有这些候选样本参与测试样本的万有引力的计算。半径R可以计算如下:
计算得到测试样本的候选集R后,从训练样本中由半径R选出的候选集为:
Candi|Candi∈Xtrain,d(Candi,Xtest)<R
2)计算万有引力并分类
为确保算法的简洁性,本发明假设所有的候选样本都位于一条直线上,从而不考虑重力的方向,只是简单地计算万有引力的大小,通过将不同类别候选样本对测试样本产生的万有引力合力进行比较来分类。候选集中样本对测试样本的万有引力计算如下:
其中G是万有引力常数,my是测试样本y的质量,由于G和my对分类结果没有影响,因此将它们设置为1。此外,是候选样本中的第i个样本的质量,d(y,xi)是测试样本到候选集中第i个样本的距离。d(y,xi)n中的n用于调整测试样本与训练样本之间距离的权重,本发明中n取值为4,因此上式可写为:
3)输出测试样本类别号
候选集中正、负类样本对测试样本的万有引力大小,得到测试样本的类标号为:
实验设计
实验数据集选取:该实验选择了开源网站Extraction based on EvolutionaryLearning(KEEL)中的三个不平衡的网络入侵检测数据集“KDD CUP 99数据集”。“KDD CUP99数据集”是网络入侵检测领域的标准,为基于计算智能的网络入侵检测研究奠定基础。而不同种类的网络攻击数据在数量上有着明显的不平衡现象,这也就构成了影响分类性能的主要因素。该实验选择了来自KEEL数据库的3个不平衡KDD Cup 99数据集分别为:’rootkit-imap_vs_back’,guess_passwd_vs_satan’和’buffer_overflow_vs_back’。这三个数据集的信息如下表,其中数据中的离散特征均以one-hot方法表示。
名称 | guess_passwd_vs_satan | buffer_overflow_vs_back | rootkit-imap_vs_back |
特征数 | 41 | 41 | 41 |
样本数 | 1642 | 2233 | 2225 |
正类数 | 53 | 30 | 22 |
负类数 | 1589 | 2203 | 2203 |
不平衡率 | 29.98 | 73.43 | 100.13 |
正类名 | guess_passwd | buffer_overflow | rootkit-imap |
负类名 | satan | back | back |
上表中的正、负类名的实际意义如下表所示:
Satan | 为Probe攻击类型,表示监视和其他探测活动 |
Guess_passwd | 为R2L攻击类型,表示来自远程机器的非法访问 |
Buffer_overflow | 为U2R攻击类型,表示普通用户对本地超级用户特权的非法访问 |
Back | 为DOS攻击类型,表示拒绝服务攻击 |
Rootkit-imap | 为U2R攻击类型,表示普通用户对本地超级用户特权的非法访问 |
所有使用的数据集均采用五折交叉方式处理,即将数据集随机分为大致均匀的五份,每一次选择其中一份作为测试数据,另外四份为训练数据,总共进行五轮实验。
对比算法:发明所使用的核心算法,即基于熵和万有引力的动态半径近邻模型,简称为EGDRNN。另外,我们选择KNN、固定半径的万有引力近邻分类器GFRNN和基于代价敏感的SVM(CS-SVM)为基准算法。
参数选择:KNN中选择K=7;CS-SVM使用RBF核,其松弛系数C和核半径σ取值均为{0.01,0.1,1,10,100},特征采样率均选自{0.5,0.7,0.9}。
性能度量方法:实验统一使用少数类准确率与多数类准确率率的平均值(AAcc),来记录不同方法对各数据集的分类结果。结果均为对应算法在该数据集上使用最优参数配置时获得的结果,即最优结果。AAcc的计算公式为:
其中TP为真正类率,FP为假正类率,TN为真负类率,FN为假负类率。四个指标的关系如下表:
真预测值 | 假预测值 | |
正类 | TP | FN |
负类 | FP | TN |
实验结果
EGDRNN与对比算法在各KDD网络攻击数据集上的AAcc结果如下表所示,std表示五折交叉验证结果的方差,表中的最后一行表示三个数据集上的平均AAcc。为了突出显示,每个数据集的最好结果标记为粗体。结果如下表:
由上表可知,EGDRNN在所列三个数据集中的三个数据集上取得最高AAcc值,且在三个数据集上的平均AAcc值最高,说明它的性能超过了其他对比算法。特别是在’rootkit-imap_vs_back’和’buffer_overflow_vs_back’数据集上,所提EGDRNN模型具有明显的优势。此外,所提EGDRNN模型在每个数据集上AAcc的方差较低,且平均方差最低,表明所述模型对KDD网络攻击数据有着更稳定的分类效果。
Claims (1)
1.一种基于近邻样本万有引力的网络入侵检测方法,其特征在于,所述网络入侵检测方法包括以下步骤:
1)预处理第一步:通过网络数据采集工具构建网络攻击特征,将采集的样本集特征转为适于后续处理的数据矩阵,并对所有离散特征进行one-hot的转换;
2)训练第一步:对一个包括正、负类样本的不平衡网络入侵数据的训练样本集进行学习,得到每个训练样本的质量,每个训练样本的质量的计算过程包括以下步骤:
通过训练样本中正、负类样本的比值,得到样本不平衡率IR,其中IR为所述正负类样本的不平衡率,表示正、负类样本与正类样本的比值;nneg为负类样本的个数,npos为正类样本的个数;
对于训练集Xtrain中的训练样本x,通过计算训练样本两两之间的距离,得到一个计算信息熵的候选样本半径r:
通过选择到当前训练样本距离小于r的训练样本,得到所述训练样本信息熵的候选样本:
将不平衡率和样本的信息熵E(xi)的乘积作为训练样本的质量;
3)测试第一步:通过利用一范数距离动态的计算测试样本到所有训练样本的距离,得到测试样本的近邻候选集半径R:
其中:
npos和nneg分别对应于所有训练样本集中正、负类样本的数目;和分别指测试样本y与所述测试样本y的近邻候选集中正、负类训练样本中的第i、j个样本的一范数距离;所述一范数距离为:y,x为两个样本,d(·)表示样本y和x之间的距离,m是样本y和x的特征维度,yi和xi分别是样本y和x在第i个特征维度上的值;
4)测试第二步:通过前述测试样本的近邻候选集半径R选择到测试样本的距离小于所述近邻候选集半径R的样本,得到测试样本的近邻候选集;
Candi|Candi∈Xtrain,d(Candi,y)<R
5)测试第三步:通过计算测试样本的近邻候选集中正、负类样本对测试样本的万有引力为:
其中:
FC是指候选集中C类样本对测试样本的万有引力的合力;是样本xi的候选集中的C类样本,是候选样本中的第i个样本的质量,d(y,xi)是测试样本到候选集中第i个样本的距离,d(y,xi)n中的n用于调整测试样本与训练样本之间距离的权重,本发明中n取值为4;
通过比较所述候选集中正、负类样本对测试样本的万有引力大小,得到测试样本的类标号,
其中表示样本y的类标号,表示测试样本y属于正类,表示测试样本y属于负类;最终测试样本属于万有引力较大的一类,即得到了对应测试样本属于哪一种网络入侵方式。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910488254.5A CN110348481B (zh) | 2019-06-05 | 2019-06-05 | 一种基于近邻样本万有引力的网络入侵检测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910488254.5A CN110348481B (zh) | 2019-06-05 | 2019-06-05 | 一种基于近邻样本万有引力的网络入侵检测方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110348481A CN110348481A (zh) | 2019-10-18 |
CN110348481B true CN110348481B (zh) | 2023-04-28 |
Family
ID=68181549
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910488254.5A Active CN110348481B (zh) | 2019-06-05 | 2019-06-05 | 一种基于近邻样本万有引力的网络入侵检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110348481B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111914061B (zh) * | 2020-07-13 | 2021-04-16 | 上海乐言科技股份有限公司 | 文本分类主动学习的基于半径的不确定度采样方法和系统 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106127223A (zh) * | 2016-06-13 | 2016-11-16 | 江苏科技大学 | 一种基于万有引力定律的分类方法 |
CN107092927A (zh) * | 2017-04-01 | 2017-08-25 | 华东理工大学 | 一种基于边界消解伪逆算法的不平衡数据分类系统 |
-
2019
- 2019-06-05 CN CN201910488254.5A patent/CN110348481B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106127223A (zh) * | 2016-06-13 | 2016-11-16 | 江苏科技大学 | 一种基于万有引力定律的分类方法 |
CN107092927A (zh) * | 2017-04-01 | 2017-08-25 | 华东理工大学 | 一种基于边界消解伪逆算法的不平衡数据分类系统 |
Non-Patent Citations (4)
Title |
---|
一个新的入侵检测分类算法;夏竹青等;《微计算机信息》;20100825(第24期);61-63 * |
基于引力模型的多标签分类算法;李兆玉等;《计算机应用》;20180725(第10期);61-65+75 * |
基于影响函数的分类;张婷等;《小型微型计算机系统》;20160315(第03期);45-49 * |
基于测地距离的GIDGC-KNN不平衡数据分类器;张立旺等;《计算机工程与设计》;20160216(第02期);117-123 * |
Also Published As
Publication number | Publication date |
---|---|
CN110348481A (zh) | 2019-10-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Zhou et al. | M-AdaBoost-A based ensemble system for network intrusion detection | |
Tesfahun et al. | Intrusion detection using random forests classifier with SMOTE and feature reduction | |
CN106973057B (zh) | 一种适用于入侵检测的分类方法 | |
CN108769079A (zh) | 一种基于机器学习的Web入侵检测技术 | |
CN113780443B (zh) | 一种面向威胁检测的网络安全态势评估方法 | |
CN111695597B (zh) | 基于改进式孤立森林算法的信贷欺诈团伙识别方法和系统 | |
CN108647707B (zh) | 概率神经网络创建方法、故障诊断方法及装置、存储介质 | |
CN110324178B (zh) | 一种基于多经验核学习的网络入侵检测方法 | |
JP7331369B2 (ja) | 異常音追加学習方法、データ追加学習方法、異常度算出装置、指標値算出装置、およびプログラム | |
CN108718291A (zh) | 一种基于大数据的恶意url检测方法 | |
CN112039903A (zh) | 基于深度自编码神经网络模型的网络安全态势评估方法 | |
CN113542241A (zh) | 一种基于CNN-BiGRU混合模型的入侵检测方法及装置 | |
CN115801374A (zh) | 网络入侵数据分类方法、装置、电子设备及存储介质 | |
CN110348481B (zh) | 一种基于近邻样本万有引力的网络入侵检测方法 | |
US20220327394A1 (en) | Learning support apparatus, learning support methods, and computer-readable recording medium | |
YANG et al. | Phishing website detection using C4. 5 decision tree | |
CN110097120A (zh) | 网络流量数据分类方法、设备及计算机存储介质 | |
CN115086070B (zh) | 工业互联网入侵检测方法及系统 | |
CN115660101A (zh) | 一种基于业务节点信息的数据服务提供方法及装置 | |
Zhou et al. | Applying machine learning to service assurance in network function virtualization environment | |
KR20230076938A (ko) | 효율적인 악성 위협 탐지를 위한 valuable alert 선별 방법 | |
CN114118680A (zh) | 一种网络安全态势评估方法及系统 | |
CN117792933B (zh) | 一种基于深度学习的网络流量优化方法及系统 | |
CN111581640A (zh) | 一种恶意软件检测方法、装置及设备、存储介质 | |
Wang et al. | Conductor galloping prediction on imbalanced datasets: Svm with smart sampling |
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 |