用于异常检测的深度神经网络模型融合

在当今的数字时代,网络安全至关重要,因为全球数十亿台计算机通过网络连接。近年来,网络攻击的数量大幅增加。因此,网络威胁检测旨在通过观察一段时间内的流量数据来检测这些攻击,并将异常行为与正常流量区分开来 [ 1 ]。

网络异常检测 (NAD) 是一种通过基于流量异常模式的威胁检测来促进网络安全的技术。NAD 通过持续监控网络的异常事件或趋势 [ 1 ] 来运作。因此,NAD 通常是网络行为分析 (NBA) 不可或缺的一部分,其中网络安全由防病毒软件、防火墙、间谍软件检测软件和入侵检测系统等反威胁应用程序提供 [ 2 ]。

随着 Internet 技术的进步,网络攻击急剧增加。因此,网络入侵检测成为提高系统检测网络安全攻击能力的重要领域。入侵威胁是蓄意访问和操纵信息以使系统不可靠的尝试。例如,拒绝服务 (DoS) [ 3 ]。

基于异常的入侵检测是用于查找网络流量中与预期的网络正常流量不匹配的不合格模式的过程。这些异常模式是异常、异常值或异常[ 4、5 ]。NAD 已广泛用于许多应用,例如网络安全入侵检测和信用卡欺诈检测 [ 3 ]。

多年来,基于统计算法 [ 6 ]、数据挖掘方法 [ 7 ] 和机器学习 [ 8 ] 开发了异常检测系统。大多数 NAD 方法通常依赖于为正常行为开发模型,因此开发的模型可以检测任何异常模式 [ 8 ]。NAD 系统中有许多类型的模式学习,例如监督学习、半监督学习和无监督学习 [ 9 ]。

近年来,深度学习方法受到了广泛关注,因为深度神经网络能够直接从网络流量数据中学习异常的复杂模式 [ 10 ]。然而,现实世界的交通数据规模庞大、标签嘈杂且类别不平衡。换句话说,交通数据有数以百万计的样本,分布不均匀,很少有异常,而正常的交通数据太多。大多数现有网络数据集不符合现实条件,不适合现代网络。此外,传统数据集如 kddcup99 [ 11 ] 和 UNSW-NB15 [ 12 ]] 已在文献中进行了大量调查。利用这些数据集的方法能够提供高性能。因此,在本文中,我们使用ZYELL的数据集 [ 13、14 ]重点关注大规模(百万级)和高度不平衡的交通数据问题,以训练、验证和测试所提出的解决方案。

本文提出的新解决方案是在 NAD 的混合方法下考虑的。两个深度神经网络 (DNN) 的模型融合用于检测攻击并将其映射到特定类别。第一个端到端 DNN 用于从流量数据中学习模式以进行正常/攻击二元分类。第二个端到端 DNN 用于从流量数据中学习模式,以对四种类型的攻击进行分类,例如 DDOS smurf、探测 IP 扫描、探测端口扫描和探测 NMAP。本文给出的结果表明,所提出的方法在 Fβ 分数和误报率方面优于传统的单一深度神经网络。

将分类数据转换为数字表示

应用程序名称列是分类的,有 45 个唯一的字符串值,如下 [ 13 ]:

['其他', '域', 'https', 'snmp', 'icmp', 'http', 'microsoft-ds', 'ssdp', 'netbios-ssn', 'netbios-dgm', 'ssh' , 'netbios-ns', 'ftp', 'syslog', 'igmp', 'h323', 'real-audio', 'pop3', 'telnet', 'smtp', 'rtsp', 'pptp', ' auth', 'roadrunner', 'bgp', 'isakmp', 'rexec', 'rcmd', 'finger', 'bootps', 'sql-net', 'vdolive', 'irc', 'nntp', '目标'、'rlogin'、'msn'、'新闻'、'bootpc'、'snmp-trap'、'tftp'、'nfs'、'tacacs'、'icq'、'sftp']。

这些唯一值中的每一个都以不同的方式在交通记录中重复。例如,https 重复了 1,577,502 次,而 sftp 只重复了 8 次。图 1显示了应用程序名称列中的 45 个唯一值以及每个值的出现频率。应用程序名称列中的字符串值已转换为数值以供进一步处理。具有 45 个唯一值的列的单热编码导致具有大量零的稀疏矩阵。因此,为避免内存问题,未对该列进行编码。然而,它被重新缩放和裁剪。

图。1

条形图说明应用程序名称列中唯一值的频率

全尺寸图片

标签列也是分类的,具有高度不平衡的五个类别。图 2说明了标签列中的五个唯一值以及每个值的频率。使用一个热编码器对标签列中的值进行编码并转换为二进制形式。

图 2

条形图说明标签类别的频率

全尺寸图片

此数据集中很少有数字列(例如 cnt_src)具有离散数字和几十个唯一值。图 3显示了 cnt_src 列中的值以及每个值的频率。值 1 在此列中重复了超过 600 万次,而值 2 和 10 之间的值重复了 100 到 800 十万次。相反,其他值(例如 20 到 40 之间的值)的频率小于 200。

图 3

cnt_src 列值的频率

全尺寸图片

相关性

本节计算交通样本特征之间的相关性和相关度。每对特征之间的相关矩阵以图形方式表示为带有颜色编码的热图,如图 4所示. 相关系数衡量变量之间关系的强度,值范围在 − 1.0 和 1.0 之间。换句话说,- 1.0 的相关性表示完全负相关,而 1.0 的相关性表示完全正相关(这对特征高度相关)。另一方面,零或接近零的相关值表明这对特征是弱相关的。相关矩阵的意义与特征选择有关,特征选择是分类前的主要阶段。当两个特征高度相关时,可以丢弃这两个特征之一。

图 4

交通特征之间的相关热图

全尺寸图片

从图 4中可以明显看出,应该预测的标签(输出)与流量的任何输入特征都没有高度相关。此外,该功能与其后缀为“_slow”和“_conn”的版本之间只有中等相关性 (0.5–0.8)。例如,cnt_src 与 cnt_src_slow 和 cnt_src_conn 具有中等相关性。因此,没有流量特征被丢弃,因为没有人与其他人具有高相关性。

提出的模型融合

在本节中,描述了所提出的模型融合方法。模型融合包含两个深度神经网络。二元模型 1 包括特征预处理和 DNN。DNN 用作二元分类器,通过将流量数据分为两类来检测任何攻击:正常和攻击。为了组成新的攻击流量集,将包括 DDOS smurf、IP 探测、PORT 探测和 NMAP 探测在内的四种类型的攻击组合为一组,如图 5所示。两组新的攻击流量和正常流量被馈送到二进制 DNN。

图 5

拟议模型的框图

全尺寸图片

多类模型 2 包括特征预处理和 DNN。DNN 被用作多类分类器,在去除正常流量数据后将攻击分为四类,如图 5所示. 只有当模型 1 产生攻击类别时,多类模型 2 才会运行。否则,当模型 1 的输出产生正常流量时,模型 2 不会运行。最后一个密集层在正常/攻击 DNN 中有 2 个类,在多重攻击 DNN 中有 4 个类。另一方面,将提出的模型融合方法与基线模型进行了比较。基线是一个单一的深度神经网络,它已经对包括正常流量和四种攻击流量在内的五类数据进行了训练,将流量数据分为 5 类。基线方法中的 DNN 与建议方法中使用的两个 DNN 中的每一个都具有相同的架构,如表5所示。

结论和未来的工作

在本文中,为了网络安全目的,提出了一种新的异常检测和分类策略。展示了一种模型融合,它结合了二元正常/攻击 DNN 来检测任何攻击的可用性和多重攻击 DNN 来对攻击进行分类。此外,本文解决了百万规模和高度不平衡的交通数据问题。所提出的解决方案已使用真实世界的 ZYELL 数据集进行了训练、验证和测试,结果令人鼓舞。结果发现,我们的解决方案在 Fβ 分数方面优于基准解决方案 17%。此外,所提出的解决方案在将大多数 NAD 系统的误报率降低 5.3% 方面发挥了重要作用。通常,误报会降低 NAD 系统的可靠性。所以,降低误报率可以使 NAD 系统更加健壮和可靠。然而,所提出的解决方案中的低误报率并没有降低检测真实攻击的能力。

对于未来的工作,我们的目标是通过使用其他类型的深度学习模型(例如一维卷积神经网络(CNN)来学习空间特征和长短期记忆(LSTM)来学习时间特征)来提高性能。此外,LSTM 自动编码器的无监督学习也是这个百万级数据集的一个有前途的候选解决方案。

用于异常检测的深度神经网络模型融合相关推荐

  1. 深度神经网络模型压缩与加速研究综述

    深度神经网络模型压缩与加速研究综述 文章目录 深度神经网络模型压缩与加速研究综述 前言 介绍 PARAMETER PRUNING AND SHARING A. quantization and bin ...

  2. Auto Encoder用于异常检测

    对基于深度神经网络的Auto Encoder用于异常检测的一些思考 from:https://my.oschina.net/u/1778239/blog/1861724 一.前言 现实中,大部分数据都 ...

  3. 【火炉炼AI】深度学习003-构建并训练深度神经网络模型

    [火炉炼AI]深度学习003-构建并训练深度神经网络模型 (本文所使用的Python库和版本号: Python 3.6, Numpy 1.14, scikit-learn 0.19, matplotl ...

  4. 深度神经网络模型剪枝

    深度神经网络模型剪枝 神经网络剪枝 Neural Network Pruning 下面是我对剪枝的一点点理解,如有理解不到位,请大家指正 ▶剪枝只是将模型中权重比较小,对输出影响不大的神经元参数置0, ...

  5. Rich Caruana:压缩深度神经网络模型让你兼得可解释性与准确性!

    来源: 微软研究院AI头条 本文共1757字,建议阅读5分钟. 本文讲述了在机器学习的世界里,准确性和可解释性总是不可兼得:复杂的模型准确但令人费解,简单的模型容易理解也容易出错. [ 导读 ]微软研 ...

  6. 基于空间方法的图神经网络模型_用于时空图建模的图神经网络模型 Graph WaveNet | 课程上新...

    课程概要 本课程来自集智学园图网络论文解读系列活动. 是对论文<Graph WaveNet for Deep Spatial-Temporal Graph Modeling>的解读. 时空 ...

  7. 六、25个深度神经网络模型

    文章目录 1. 引言 1. 引言 在深度学习十分火热的今天,不时会涌现出各种新型的人工神经网络,想要实时了解这些新型神经网络的架构还真是不容易.光是知道各式各样的神经网络模型缩写(如:DCIGN.Bi ...

  8. 深度神经网络模型有哪些,深度神经网络预测模型

    神经网络.深度学习.机器学习是什么?有什么区别和联系? 深度学习是由深层神经网络+机器学习造出来的词.深度最早出现在deepbeliefnetwork(深度(层)置信网络).其出现使得沉寂多年的神经网 ...

  9. 「物联网架构」MQTT 传感器数据流异常检测的深度学习KSQL UDF

    用于传感器分析的KSQL UDF.利用KSQL的新的API特性,用Java轻松地构建UDF / UDAF函数,从而使用Apache Kafka进行连续流处理.用例:联网汽车--使用深度学习的实时流媒体 ...

最新文章

  1. java 带参数的构造函数_java – mockito模拟一个带参数的构造函数
  2. python 排序算法
  3. 图像处理直方图匹配-巴氏系数原理及实现
  4. SAP Spartacus 中 Angular json pipe 的工作原理
  5. 基于云存储网关的Veeam备份归档上云方案
  6. (软件工程复习核心重点)第八章面向对象方法学习题
  7. Transformer-XL语言模型:超长上下文依赖
  8. Firefox 97.0.2 修复两个已遭利用的0day
  9. 初学jQuery之选择器
  10. Tomcat配置文件server.xml(转)
  11. 使用python模拟实现PID控制算法
  12. tmb100a linux,天猫魔盒Tmb100系列_LetvUi_YYF终极版
  13. 一文看懂DCDC拓扑原理
  14. 【技术贴】解决福昕阅读器pdf打印横向打印不居中,页面有空白
  15. AppCan TreeView
  16. Flutter Sliver系列组件入门
  17. uNo面板L灯一直闪_怎样选购一款合适的LED面板灯
  18. 【C++】关于日期的计算
  19. iphone html 手机震动,​苹果手机震动器在哪里?如何设置与关闭?
  20. 无序列表举例html,HTML中的无序列表讲解(菜鸟)

热门文章

  1. 多线程设计模式总结(二)
  2. SpringBoot13:集成SpringSecurity 全部使用 安全*
  3. python基础:猴子吃桃问题
  4. 可变数据软件如何批量打印合格证
  5. 白胶浆在印花中的应用
  6. ELK实践系列-测试环境环境搭建
  7. 让ICT飞鸟,长出数字能源的翅膀
  8. 【COCI2013】slasticar
  9. 借力大数据、AI,机智云能否在物联网PaaS平台上更胜一筹?
  10. 站长选择广告联盟的建议:比较谷歌Adsense、百度联盟、阿里妈妈