基于GAN的特征选择的过采样入侵检测技术

本文对现有过采样方法的设计原理和不足进行了综述和分析,在此基础上,从入侵检测数据集不平衡和高维的角度出发,提出了一种基于生成对抗网络和特征选择的过采样技术
具体而言,本文基于WANG-GP对攻击的复杂高维分布建模,生成额外的攻击样本,然后根据方差分析选择代表整个数据集的特征子集,最终生成一个重新平衡的低维数据集用于机器学习训练。

文章的主要贡献:

  • 1:针对入侵检测中类不平衡问题,提出了一种新的过采样方法GAN-FS。构建基于WANG-GP的攻击生成模型,生成攻击样本,然后利用方差分析对数据进行特征选择,获得重新平衡的低维数据集,永远也训练入侵检测模型
  • 2:基于三种流行的入侵检测数据集,我们对几种机器学习检测模型进行了实验。实验结果表明,该方法能有效提高入侵检测模型的性能。并且,与多种流行的方法相比,我们的方法取得了更好的效果。
  • 3.我们讨论并分析了我们的方法对不同数据集和不同机器学习检测模型的影响。

过采样技术GAN-FS

建立的基于WANG-GP的攻击生成模型,可以生成更高质量的样本

GAN-FS总共包含五个步骤:

框架分为五个步骤:数据预处理、数据划分、罕见类过采样、特征选择和训练测试ML模型。
(i)步骤1:对数据集进行预处理,将数据集分为训练集和测试集。
(ii)步骤2:通过数据分区将训练集分为稀有类数据和其他类数据。
(iii)步骤3:GAN模型使用稀有类数据生成样本。
(iv)步骤4:将过采样数据与步骤2中获得的其他类数据进行组合,然后进行特征选择。
(e)在特征选择步骤中得到最优特征子集和相应的新的低维训练集。
(v)步骤5:最后,使用新的训练集对机器学习(ML)模型进行训练,使用测试集对模型进行测试。

预处理

在预处理过程中有数字化和归一化:在入侵检测数据中通常包含非数字特征,例如协议和状态,需要将非数字特征转换为数字特征,非数字特征被映射到0或者s-1之间,s是符号的数字变量。归一化采用最大最小归一化

数据分区

WANG-GP的结构为:

表示为:

:数据分布;

:由隐式定义的模型分布 (生成器的输入z采样自一些简单的噪声分布)

定义了从数据分布中采样的点对生成的分布之间沿直线的均匀采样,

对随机样本的梯度范数进行惩罚这样,发生器和鉴频器可以在相同的速度下进行改进,避免模式崩溃,从而使训练效果和神经网络的权重得到优化,在一定程度上提高了WGAN的训练效果。

在生成样本的过程中,利用噪声和罕见类攻击训练WGAN-GP。
(训练过程开始于固定鉴别器和训练生成器模拟真实数据的分布。当鉴别器不能正确区分样本是来自真正的攻击集还是来自生成器时,固定生成器并开始训练鉴别器。
当鉴别器通过连续训练能够正确区分样本时,将鉴别器与训练生成器固定。按照这个过程进行迭代训练,最后使用生成器生成攻击样本。
(生成的攻击样本最终被添加到训练集中

特征选择

ANOVA(analysis of variance) F -test (方差分析f检验是一种常用的特征选择的方法)

使用f检验来确定某些组的平均数是否不同,并在统计上检验平均数是否相等,对于每个特征我们假设其在正类和负类样本中具有相同的均值,,然后有:

代表分量和组内偏差

分别计算各个特征的F_value,最后根据特征的重要性对特征进行排序,得到最优子集。

训练和测试机器学习模型

数据集不平衡影响了基于机器学习的入侵检测模型的分析能力,使其分类结果偏向正常活动,导致高虚警率和漏警率。
基于WGAN-GP算法对训练集中的罕见类攻击进行过采样,然后利用方差分析特征选择方法对训练集进行下采样,最终得到一个低维重平衡训练集。
在这一步中,我们使用重平衡的低维数据集来训练机器学习模型。
当模型训练完成后,我们使用基于特征子集的测试集来测试其性能

结论

本文从入侵检测中数据集不平衡和高维的角度,提出了一种基于GAN和特征选择的过采样入侵检测技术。
首先,我们的方法提出专注于对罕见类型的攻击样本进行过采样,以提高入侵检测的有效性。
另一方面,我们使用ANOVA特征选择方法只集中于攻击样本的必要特征。
(即,获得的低维重平衡数据集用于训练入侵检测分类器。

实验结果表明,该方法提高了入侵检测模型的检测性能,优于其他基线方法。

A GAN and Feature Selection-Based Oversampling Technique for Intrusion Detection相关推荐

  1. Feature Selection Based on Mutual Information:Criteria of Max-Dependency, Max-Relevance,and Min-Redu

    Feature Selection Based on Mutual Information:Criteria of Max-Dependency, Max-Relevance,and Min-Redu ...

  2. 读论文-基于循环gan特征增强的夜间车辆检测 Feature Enhancement Based on CycleGAN forNighttime Vehicle Detection

    摘要 现有的夜间车辆检测方法主要是通过检测前灯或尾灯来检测车辆.然而,复杂的道路照明环境对这些特性产生了不利的影响.本文提出了一种具有特征转换增强(feature translate enhancem ...

  3. 文章解读:Feature selection based on FDA and F-score for multi-class classification

    原文出处 F-score是一种简单的特征选择技术,但它只适用于两个类. 文中提出了一种基于Fisher判别分析(FDA)和F-score的新颖特征排序方法,表示为FDAF评分,考虑了多维特征空间中类的 ...

  4. Feature Selection Techniques

    Table of Contents 1  Feature Selection Techniques特征选择技术 1.1  Agenda 1.2  Introduction to Feature Sel ...

  5. Feature Selection: A Data Perspective --阅读笔记2 传统数据的特征选择算法

    论文的前一部分 FEATURE SELECTION ON CONVENTIONAL DATA Similarity based Methods Laplacian Score SPEC FEATURE ...

  6. Java机器学习库ML之二Feature Selection(特征选择)

    机器学习中训练模型的前提必备工作就是特征选择,起到降维和降低计算开销的目的,当然在获取尽可能小的特征子集的同时,应不显著降低分类精度.不影响类分布.保持特征子集的稳定适应性强等. ML库提供了特征选择 ...

  7. Feature selection

    原文:http://scikit-learn.org/stable/modules/feature_selection.html The classes in the sklearn.feature_ ...

  8. R语言的特征选择(Feature Selection)包:Boruta和caret

    转载自:http://www.zhizhihu.com/html/y2011/3188.html 对于大数据的分析,特征选择Feature Selection和降维是必不可少的,R有很多做FS的包,这 ...

  9. R语言使用caret包的findCorrelation函数批量删除相关性冗余特征、实现特征筛选(feature selection)、剔除高相关的变量

    R语言使用caret包的findCorrelation函数批量删除相关性冗余特征.实现特征筛选(feature selection).剔除高相关的变量 目录

最新文章

  1. JavaScript 的简单学习2
  2. 一种压缩图片的方法---Machine learning 之 K-Means
  3. js 嵌入php_PHP快速入门第一讲:什么是PHP
  4. Hadoop基础--HDFS/Yarn/MapReduce概述
  5. 用于Elasticsearch数据可视化和分析的强大工具
  6. Python回调函数的实现
  7. Keepalived 安装配置
  8. 解决Android 音频Xrun问题
  9. Web开发:Apache2.2.x+Tomcat6.x+jk2.x做集群配置
  10. python colorbar刻度_matplotlib画3D图修改X,Y,Z,colorbar的刻度值
  11. JAVA文件传输原理及介绍—狂神说
  12. 提高系统可用性的那些架构策略
  13. 【3D模型分享】柴油机MMZ D-260柴油发动机
  14. 2021年系统架构设计师考试上午真题与答案
  15. 软文成功案例,给企业带来的价值不可限量
  16. 自制android摇一摇闹钟,摇一摇闹钟
  17. kile中*** ERROR L104: MULTIPLE PUBLIC DEFINITIONS SYMBOL: WEEK是什么意思。
  18. Shadowing, Overriding, Hiding and Obscuring
  19. 《江南百景图》为什么火了?和主创团队聊完之后,我跪了
  20. M1芯片的Mac安装Centos !

热门文章

  1. Python调用FFmpeg库——PyAV
  2. android电瓶车控制系统设计,基于Android的WIFI遥控电动滑板车的硬件系统设计
  3. 程序人生 - 不要触犯法律,编写安全爬虫的几点建议
  4. Java知识体系最强总结(2020版) (转载)
  5. 物联网卡在智能井盖管理系统中的应用
  6. word2019很多文件不开的解决办法
  7. 基于ADCensus视差的多视点转换
  8. MySQL 动态行转列
  9. 【假设检验】MATLAB实现K-S检验
  10. 不了解FPGA工作原理?看看世界第一颗FPGA芯片级拆解