目录
基于深度学习的车联网入侵检测系统设计与实现 I
摘要 I
Abstract II
1 绪论 1
1.1研究背景 1
1.1.1入侵检测系统的发展 1
1.1.2深度学习技术的出现 1
1.2研究现状 2
1.3 问题的提出及研究的意义 2
2 相关理论及技术研究 4
2.1入侵检测概述 4
2.1.1入侵检测系统 4
2.1.2入侵检测技术及其分类 4
2.1.3入侵检测通用框架 5
2.2车联网入侵检测技术 6
2.2.1车联网简介 6
2.2.2车联网CAN网络介绍 7
2.3深度学习模型 8
2.3.1深度学习概述 8
2.3.2神经网络模型 9
2.3.3卷积神经网络 11
2.3.4 Focalloss损失函数 12
2.4 本章小结 13
3 基于深度学习的入侵检测模型 14
3.1 基于深度学习的入侵检测模型 14
3.1.1 KDDCUP99数据集 14
3.1.2数据预处理 14
3.1.3网络入侵检测模型的构建 15
3.2 仿真实验 16
3.2.1实验数据 16
3.2.2模型参数设置 16
3.2.3模型评价 17
3.3 实验结果与分析 18
3.4 本章小结 19
4 车联网入侵检测模型的研究 21
4.1特征处理 21
4.1.1数据集设置 21
4.1.2目标与评估 22
4.1.3 特征工程 24
4.2 基于自编码网络 AutoEncoder 的入侵检测数据降维 27
4.2.1 数据降维技术研究介绍 27
4.2.2 自编码网络 AutoEncoder 降维建模 29
4.2.3 自编码网络 AutoEncoder 结构寻优 30
4.2.4 实验对比 31
4.3车联网入侵检测核心模型研究与实验 35
4.3.1基于统计机器学习的入侵检测模型 35
4.3.2基于深度学习的入侵检测模型 37
4.3.3深度模型融合 40
5 车载终端入侵检测系统设计与实现 43
5.1车联网入侵检测系统框架 43
5.2模块设计与实现 44
5.2.1数据采集模块 44
5.2.2 模型检测模块 50
5.3系统测试与验证 52
5.3.1实验环境 52
5.3.2实验设计 52
5.3.3性能测试 53
5.4本章小结 56
6 总结与展望 57
参考文献 58
1 绪论
随着时代的发展和移动服务的普及,互联网已成为人们日常生活中不可或缺的一部分,计算机网络的安全也因此成为一个主要问题,在此上下文中,创建了检测入侵(ID)功能。它最早由Anderson在20世纪80年代提出,此后引起了学术界和工业界的关注,成为动态安全保护的基本技术之一。根据行业定义,任何试图威胁计算机或网络资源的机密性、完整性和可用性的行为都可能成为违规行为。顾名思义,入侵检测是检测和应对入侵的过程,入侵检测系统(IDS)是一个补充入侵检测功能的独立系统。
1.1研究背景
本部分将对入侵检测的发展和深度学习的现状做一个全面的研究分析,为下文内容的引出做铺垫。
1.1.1入侵检测系统的发展
人们对入侵检测的研究起始于20世纪中后期,它首次于《计算机安全威胁的监控与检测》报告中提出,安德森将此定义为未经授权的信息访问和操作以及使系统不稳定和不可靠的行为。随后,入侵侦查研究也有所增加。1987年,Denning提出了一种入侵检测的抽象模型。20世纪90年代,Heberlin将这一抽象模型付诸实践,并开发了第一个入侵检测系统。直到那时,入侵检测系统才真正为所有人所知,作为网络安全领域的核心组成部分,入侵检测系统的作用是从计算机网络或计算机系统中的一些重要节点收集和检查信息,确定是否存在可疑行为,并准备针对其的补救措施或报告。
1.1.2深度学习技术的出现
按照目前的要求,大部分入侵检测系统都是不完美的,甚至大多数入侵检测都不能满足的要求。主要问题是,入侵数据不断复杂且具有多样性,这导致了高误报率、高误报率和较差的适应性(即很难发现新的攻击)。为了弥补这些不足,科学家们正在使用不同的方法来提高入侵检测系统的性能,入侵检测系统主要分为两个方向:分布式和智能化。分布式入侵检测系统以分层结构为基础思想,整体集成了不同的检测策略,从各个方面对关键节点进行了有针对性的监视和防御,从而具有更高的检测精度和更宽的检测范围。为了提高入侵检测系统的适应性和灵活性,如上所述,该行业集成了机器学习方法,并取得了良好的效果。同时,由于真实环境中关于入侵的数据的复杂性,数据特征空间具有高维和非线性特征,传统的机器学习方法往往受制于时间和空间的复杂性,极易受到“维爆炸”问题的影响。因此,针对高维和非线性特征空间的特征学习成为入侵检测系统中必不可少的一步。目前,特征学习或降低特征的维数是处理高维数据的主要方法之一。
1.2研究现状
入侵检测技术是对传统安全机制的补充,以智能监控、实时检测和及时响应为特点,现已成为网络安全的主要研究和发展方向。目前,国外对入侵检测的研究和开发已逐渐进入成熟阶段。许多研究机构已经针对不同的操作系统开发了各种典型的入侵检测设备。这些设备通常是服务器或基于网络的,并使用静态异常模型和基于规则的误用模型来评估入侵。网络安全系统的Cisco RealISE~和Network Associates的CyberCop的NetRanger是一个代表性产品。我国对入侵检测技术的研究与国外相比相对较晚,与国外同类产品相比仍有一定差距。在提高产品质量和性能方面,仍有很大的发展空间。近年来,随着国家网络的快速发展,入侵检测技术也迅速发展,达到了世界级水平。同时,深度学习由欣顿教授提出的深度信念网络进行,随后大量杰出科学家加入深度学习研究,特别是蒙特利尔大学的Bengio研究小组和斯坦福大学的Ng研究小组。Bengio研究小组的一项重要贡献是提出一种基于AutoEncoder(AE)的深度学习网络。
1.3 问题的提出及研究的意义
网络的普及和快速发展使网络安全问题得到了很多关注。虽然入侵检测系统的出现和发展在某种意义上符合时代的趋势,但由于生产标准的不确定性和设计理念的延迟,它暴露了许多问题。
(1)数据量大难以处理
分布式拒绝服务攻击防盗检测系统的出现是一个巨大的挑战,在现实生活中,针对特定主机的分布式拒绝服务攻击可以在一分钟半内产生100000次攻击,这对系统性能提出了很高的要求。
(2)对新型攻击难以检测
网络中不同攻击的持续发生导致突破性诊断系统的变化顺序。由于攻击发生后预防措施始终到位,因此在替换新的攻击时,检测系统似乎是无用的。
(3)漏报率和误报率较高
误报率和报警率过高这是入侵检测系统面临的最严重的问题。由于在线环境的复杂性和不可预见的攻击,检测系统总是有不同程度的误报。
2 相关理论及技术研究
本章首先对入侵检测进行概述和分类,然后介绍了对在线突破分析领域的攻击,最后解释了深度学习的思想,并解释了工作方法和损失工作的重要性。
2.1入侵检测概述
2.1.1入侵检测系统
入侵检测系统`(intrusiondetectionsystem,简称“IDS")这是人们积极面对未知网络攻击的一次伟大尝试。该系统可以实时监控网络端口和各种移动,并在检测到异常情况时采取主动措施。20世纪80年代,入侵检测系统(IDS)出现并迅速引入研究,相关研究人员甚至声称其作用可以被防火墙取代,IDS结构如图2.1所示。
图2.1 经典IDS结构示意
2.1.2入侵检测技术及其分类
入侵检测技术通过收集和评估来自相关端口和系统进程的数据信息,可以将信息或相关字符分类到不符合安全机制的相关节点中,并监控信息人的各种主观或客观渗透或破坏行为。因此,通常需要同时检测网络和主机。在确定相关恶意行为正在发生后,可以及时向管理者发送提醒或警告,以维护相关人员信息的正常使用和相对安全,功能叠加在防火墙上,相互补充。传统的入侵检测技术根据其功能可分为三类:
(1)基于主机的检测:主机操作者角色增加,因为日志注册的范围与操作员设置相关。这通常需要注册与系统交互的程序参数。此外,早期的入侵并没有形成,如果消除攻击,可以防止适当的入侵。它的主要特点是效率高,不需要额外的硬件。应优先考虑管理员建立的系统中的常见表单。如果与管理员先前建立的表单有任何差异,这意味着可能存在闯入。
(2)基于网络的检测:漏洞这是网络安全的一个重要突破。这是攻击者通过漏洞进入系统的常见技能。端口扫描器的出现表明入侵者的路径。因为适配器必须能够监听网络上的任何数据包,所以它可以将符合目标地址的数据包发送到下一层。此时,如果入侵者伪造了适当的适配器,那么它可以在传输中获得数据包,因此下一层防火墙上的入侵检测系统就有了自己的位置。
(3)基于内核的检测:开开源操作系统的能力是应用内核监控的前提。操作系统的核心是中央支柱。通过提取和分析内核数据,可以有效地识别内核中错误数据的类型。这种检测方法利用数据源的可靠性作为其优势。
常规入侵检测技术按方法可分两类:
1)基于行为的检测:基于行为的检测不是基于常规意义上某些行为的发生,而是基于行为发生时的资源规划情况是否不正确或是否符合例外规则。首先,分析正常行为数据的特征。如果在适当的行为过程中有一些与正常行为的偏差,则可以将其识别为入侵。同时,入侵行为可以被概括和概念化,而不需要特定的相关信息,但此种方法相对误报率较高。
2)基于知识的检测:顾名思义,这种方法是一种相对被动的检测方法,它只能根据现有的集合知识改进适当的模式,通常称为入侵模式,然后评估适当的模式是否似乎过滤检测。描述描述检测模式通常基于一系列信息和其时间节点,可以说这些时间节点利用了系统漏洞。由于现有知识相对恒定,其检测方法相对恒定,但随着特征库的改进,其检测能力将提高,从而获得较低的误报率。对于已经分析和记录的攻击模式,该方法具有良好的效果。缺点是它在面对未知攻击时的性能:如果函数库停止更新,其检测能力就会随攻击类型的衍化而下降。
2.1.3入侵检测通用框架
人侵检测的主要目的是识别对计算机设备,计算机网络,操作系统等攻击,干扰其正常运行或窃取隐私信息的行为CAF是一个众所周知的通用入侵检测框架(见图2.2),其中表示入侵检测数据源的外部数据可以是托管的过程数据或网络数据包。CAF由四个部分组成,一个事件生成器,负责收集原始数据并对数据进行一些预处理,然后将原始数据发送到事件数据库以存储和分析事件。事件分析器作为决策核心,可以根据规则进行评估,也可以通过异常检测方法进行识别。然后发送事件数据库和响应单元以供进一步处理。响应单位负责采取某些措施防止人员闯入,例如断开适当的连接等。事件数据库负责存放检测的数据。
图2.2 CIDF框架
2.2车联网入侵检测技术
2.2.1车联网简介
物联网IoT领域的这一发展促进了传统VANET向车联网(IoV)的转变。VANET的缺点是,由于连接的车辆数量和车辆移动性有限,它只能创建一个小型移动网络。随着城市的逐步发展,交通拥堵、高楼信号屏蔽和复杂的道路交通网络等特征逐渐显现。在VANET的情况下,连接的车辆是临时的、随机的和不稳定的,并且处理的信息仅是本地信息,例如,它不能获得全局拥塞信息。在过去的几十年中,VANET没有取得任何技术突破,也没有得到资本市场的支持,正逐渐退出历史舞台。与VANET不同,IoV有两个主要技术方向:
(1)车辆网络Vehicles’s Networking
(2)车辆智能Vehicles’s Intelligentialize
在IoV中,网络包括VANET网络、车辆与基础设施设备之间的交互网络以及车辆与互联网之间的连接网络。车辆智能是指通过利用当前的人工智能深度学习技术,并将其作为一个整体配备更多的人工智能能力,实现驾驶和车辆的集成。这就是为什么IoV专注于人、车辆、环境和设备的智能集成,并通过全球网络和大数据分析在大城市甚至在家中提供更好、更智能的道路交通服务。IoV架构如图2.3所示:
图2.3 Io V架构
IoV的主要应用包括:安全驾驶、交通管制、碰撞预警服务方便。本文着重于在安全和隐私方面提高IoV,并将机器学习应用于入侵检测系统。根据车辆网络的特点优化模型,创新性地提出改进外包的安全和计算架构,加强模型操作环境的安全性和入侵检测系统的数据安全性。
2.2.2车联网CAN网络介绍
车联网IoV的网络大体上可以简以及便民服务等方面,本文着重于在安全和隐私方面提高IoV,并将机器学习应用于入侵检测系统。根据车辆网络的特点,优化并创新性地提出了该模型,以改进外包的安全性和计算架构。入侵检测系统和数据安全增强的模型操作环境分为两部分:车内网络和车外网络。车外网络与传统移动互联网之间的差异正在逐渐缩小,而车载网络主要指CAN网络。目前,车内公交车的主要结构所示。
CAN总线与一般互联网的不同特点主要如下:
(1) 无地址访问。在互联网上,根据TCP/IP协议,所有互联网设备都有一个IP地址,通过该地址可以准确地发送消息。然而,CAN总线中没有固定的地址概念,每个节点都标有统一的标识形式。ECU不需要知道工作室中的信息来自何处。
(2)非破坏性仲裁。当没有收到节点消息时,它将不会被淹没,将等待优先处理,发送错误后可以自动发送数据。
(3)基于事件触发。可以在任何事件中发送有关所有节点的信息,而无需设置特定的侦听事件序列。
(4)速度慢。低速125kb/s、高速5OOkb/s和互联网速度不是一个数量级。
(5)性能稳定,成本低。CAN总线已经开发了三十年,几乎是随着汽车电子技术的发展而发展的,其可靠性和多功能性已经得到充分验证。CAN总线的低成本是不可避免的,这也是CAN总线网络的低速度仍然是汽车中绝对主流的重要原因。
CAN帧格式如图2.4所示。最开始是起始位(SOF),接着是绿色的标志位;黄色是数据长度代码表示数据的字节数;红色是数据的所有设备),接下来是一面绿色旗帜;黄色是表示数据字节数的数据长度代码;红色表示所有数据设备)。传统汽车制造商一直对开放CAN总线许可持谨慎态度,下次有循环冗余校验CRC时;最后一部分是框架的最后一部分。随着连接到互联网的智能汽车数量的增加,对CAN总线的攻击也在增加。此外,由于CAN总线的特殊性(可以控制整个车辆不专注于针对CAN总线攻击车内网络的入侵检测技术,而是研究和实施针对车内终端和车外网络的更接近移动互联网的入侵检测技术。
图2.4 汽车内主流CAN总线架构
图2.5 CAN帧格式
2.3深度学习模型
2.3.1深度学习概述
深度学习是机器学习在各领域延伸的成果,它可以理解为神经网络复杂可靠结构的行为。“深度”的概念可以看作是多层次和丰富的。然而,大多数传统的机器学习算法都不够可靠。在深度学习中,前面和后面的层次是明亮而有序的。迄今为止,数百层深度学习模型也随处可见。下层的输出可以被认为是上层网络特性的抽象输入。使用“功能提取层”来描述多架构的深度学习网络是非常合适的。深度学习的能力不仅体现在其分类能力上,还体现在特征的提取上。提取特征的过程不需要人工干预,并且是自动化的。网络训练过程是向网络显示大量标记的数据特征,参数调整的目的是提高节点之间的权重比,以实现错误检测后的优化效果。循环此过程以在微调后获得优秀的网络。一旦构建了模型,优化的网络就可以用来客观地评估尚未评估的数据。提取神经网络特征的能力体现为在各种变量中创建连接,将其打包并分类为新特征。深度学习执行自动功能工程。自动学习的能力是深度学习的优势,尤其是在处理非结构化数据(图像等)时。同时,训练的复杂性和对人工神经网络数据的依赖性很大,对输入函数的可靠性要求更高,其概念层次如图2.6所示:
图2.6 深度学习概念
2.3.2神经网络模型
神经网络是一种脱胎于数学的模型,它的连接体是大量的神经元或神经结构,可以称为节点。当一个神经元连接到除输入节点之外的其神经元时,可以将其视为数学运算(函数运算),也称为激励函数。节点之间的关系可以被认为是当前节点在逐层移动后的“内存”的比率,称为权重。由于存在不同的权重和激励函数,它们的输出结果往往非常不同,这可以被认为是某种数学函数的近似,并包括适当的映射属性。当顶层神经元退出时,它将被视为通过任何一层神经元的入口,它将继续通过适当的功能操作传递给下一层神经元,其结构如图2.7所示。
图2.7 神经网络结构示意
在神经元的输入和输出间有一个激活函数可以确定每个神经元的激活状态。在每个神经元接收数据的情况下,激活函数可以确定它是否向下传输。非线性激活特性在这里具有独特的优势:它可以赋予整个网络架构解决非线性和更复杂问题的能力。有四种常见的激活功能:tanh, softmax , sigmoid和ReLu .
l)sigmoid函数:是一种广义线性回归函数,它可以起到二进制分类的作用。网络架构位置的隐藏输出节点。值的范围是(0.1),其功能是将数据映射到一个有限的小范围。函数曲线平滑,原点简单,但不能直接应用于深度神经网络,否则梯度会消失。公式如下:
其中x为输入向量。
将上述公式延伸为求导公式:
2)tanh函数与sigmoid函数将输入投射于(0,1)区间不同,其投射范围为(-1,1)。同样是将数据放缩到极小值,缺点较为突出,由于本身也为非线性函数也存在梯度衰落的缺陷。同时,过大的计算也会影响的训练表现。然而,它具有明显增强特征的优点,特别是在特征之间存在明显差异的情况下。公式如下:
其中x为输入向量。
其求导公式为:
3)softmax函数又被叫做归一化指数函数,可视为、igmoid函数作用的延伸,是常见激活器中唯一的多分类函数,其输出不是像其激活器那样的缩放间隔,而是某个概率值(必须为0或正数),所有概率值的总和为1。具有最高概率值的结果通常被视为输出。公式如下:
假设X为一个数组,其中xi为X中的第i个元素。
4)ReLu函数激活函数中的不饱和函数,它可以弥补梯度损失的缺陷。除了独特的分段结构外,计算速度也显著提高。因此,它可以用于具有更深结构的人工神经网络。其表现形式如下:
其中:x为输入向量。
根据公式可见该函数只会体现大于零部分的函数值,而小于零部分的函数值统一为0,过拟合被尽可能减少。
2.3.3卷积神经网络
卷积神经网络(Convolutional Neural Networks)它在20世纪80年代左右开始增长。LeNet-5是其早期型号。此后,对流神经网络的更多变体逐渐出现,如AlexNet、VGG、GoogleNet,这推动了各个领域的快速发展,特别是在图像和声音识别领域。卷积神经网络是推动深度学习研究进展的典型网络之一。这是一个神经网络。它的特点是它包含会话,具有很好的代表性学习能力,当翻译有关级别的信息时,它的分类不能改变,经典卷积神经网络结构如图2.8所示:
图2.8 卷积神经网络结构示意
隐藏层中包含的卷积层和池化层、采样层,这是提取特征的主要层。使用梯度下降法中的最小损失函数逐层调整网络质量参数。同时,模型的精度将在多次迭代中得到提高。在低级架构中,缠绕层和采样层交替执行,而高级是具有逻辑回归分类功能的全链路层分类器。总共有两个完整的连接层。全接头的第一层使用缠绕层和子样本层来获得描述特征的图像。全连接的第二层仅将必要的参数传输到全连接的顶层。输出层起到分类的作用,其激活功能是灵活的。通常,可以使用各种激活功能。
2.3.4 Focalloss损失函数
(1)概念
Focal loss损失函数为一步检测中阳性和阴性样本的严重失衡提供了补救措施。此函数可以最大限度地减少大量简单样本的影响,并强调少量困难样本的特征。
(2)函数基础形式
对交叉嫡损失函数进行优化就得到了Focal loss,明确在二分类交叉上损失:
在交叉的公共函数的区间(0,1),初始损失和正样本输出的概率呈现负相关趋势。如果是负样本,输出的概率越低,输出损失越小。大量简单样本的影响逐渐减缓了损失函数的影响,结果往往不令人满意。
(3)添加调节因子γ
基于焦点损失函数γ(调节因子),γ>0可以减少容易分类的样本的损失。此时,该函数更关注复杂和难以定义的样本。因此,应该注意不可区分的样本。该方法有效地减少了简单样本的影响,同时提高了预测结果概率低的样本(最常见的是困难样本)的叠加效果。其表达式如下:
随γ值(可用于调节的记忆力参数,能够决定样本的影响力)变化的函数图
像如图2.9所示:
图2.9 Focal Loss 函数随γ变化图
(4)添加尺度因子α:
增添α能够平衡正负样本的分布,然而,简单样本和困难样本的影响尚未得到解决。当α和γ组合时,γ对体重变化率的影响,如果γ为0,则该函数是交叉熵损失的函数,当γ因子值增加时,因子影响也增加。
2.4 本章小结
本章介绍了入侵检测和分类,以及对攻击方法和规则的深入分析。在对科学的基本深入介绍中,分析了经典深度学习模型的适当算法和优缺点,并强调了损失函数的应用和原理,本章中列出的适当概念和算法为实验开发提供了理论基础。
3 基于深度学习的入侵检测模型
3.1 基于深度学习的入侵检测模型
3.1.1 KDDCUP99数据集
此数据集这是全球范围内入侵检测系统中广泛使用的网络流量数据。它们主要分为两类:正常和攻击,分为四个子类,包括Dos、R2L、U2R和探测。数据集中的每个样本总共应有42个维度。前41个维度是样本的41个特征,最后一个维度是样品标签信息。KDDCUP99数据集的目的是提供入侵检测模型的统一性能评级,以检查模型的质量。
3.1.2数据预处理
本文提出的深度学习入侵检测模型只能识别数字特征,而KDDCUP99数据集包含字符特征。因此,有必要使用唯一编码将字符类型特征转换为数字特征。然后将数据集中的特征分为连续特征和离散特征,这使得不同特征之间的差异很大。因此,有必要将数据集中的属性值标准化为[-1.1]区域,该区域仅压缩数据而不更改原始数据信息。入侵检测模型的输入是二维图形,而KDDCUP99数据集是一维数据,因此需要将一维数据转换为二维图形,数据预处理流程如图3.1所示。
图3.1 数据预处理流程
①数据的数值化处理在KDDCUP99数据集的41个特征中,protocol_Type、服务和标志三个特征是基于字符的特征,其中protocol_Type涵盖三种协议,服务涵盖70种网络服务,标志涵盖11种网络连接。对这三个函数(如protocol)应用唯一编码。函数协议类型的三个值是tcp、udp和icmp。
②数据的归一化处理经过数值化处理的入侵检测数据的每个特征的值都有很大的差异。本文采用核心标准化方法将数据压缩为[-1,1],如公式所示:
式中,为数据样本归一化后某一特征的数据值;为数据样本归一化前某一特征的数据值;为数据样本归一化前某一特征的平均数据值。
③数据的图形化处理近年来,卷积神经网络,它已经成为一种流行的图像识别方法。一维数据以二维图形11 x 11构建,作为模型输入,模型输入可视化图形如图3.2所示。
图3.2 二维图形
3.1.3网络入侵检测模型的构建
在深度学习领域,经过多年的理论和实践验证,卷积神经网络、循环神经网络、短期和短期记忆网络和深度信任网络在图像处理、语音识别、自然语言处理和数据挖掘等领域取得了巨大成就,而对流神经网络由于其强大的特征提取和特征降维而具有巨大的开发潜力。该模型结合了两种网络的优点,优于对流神经网络和门控回路单元网络。网络入侵检测模型的结构如图3.3所示。入侵检测模型的输入层是一个灰色的11x11图像,连接两分支神经缠绕网络的上下分支。
图3.3 网络入侵检测模型
二分支卷积神经网络的上分支,第一层是释放层,共16层,步骤2;第二层是最大连接层,连接窗口大小为2x2,步长为2;第三层和第四层是绕组层,均使用3x3滤波器,分别为16和8;第五层是用于一维多维数据的平坦层。720分支缠绕网络主要用于粗糙数据提取,以保留数据的一般特征,从而使原始数据样本的特征不会由于神经网络缠绕特征的局部提取而丢失一些关键特征。因为5x5滤波器接收场更大,并且可以获得更多关于特征的信息,所以下分支神经网络的第一和第三层选择5x5滤波器作为缠绕层,数量分别为16和8,步长设置为1以提取局部特征;第二层和第四层是最大连接层,连接窗口大小为2x2,并且在步骤2中取最大池窗口大小区域值,以实现数据特征的维度的降低;第五层是32。下分支卷积的神经网络主要用于改进数据并提取关于特征的更复杂信息。在线圈线圈的两分支神经网络的每个线圈层之后插入BN层,这可以解决梯度消失和梯度爆炸的问题,从而加快训练速度,防止模型的过度拟合,提高模型的泛化性能。最后,将两分支神经网络的两个平坦层合并为104的平坦层。隔离的特征被转换成1x104维向量并连接到围栏循环单元网络,从而通过两分支螺旋神经网络的加粗和稀释提取的空间特征被引入到围栏循环单位网络中,具有多个层5的Softmax分类器被添加到数据样本的分类中。
3.2 仿真实验
为了验证本文中的深度学习入侵检测模型并构建仿真实验环境,使用基于tensorflow-GPU1.13的Keras2.4深度学习框架进行了实验仿真。操作系统为Windowsl0,使用Intel i5-6300HQ4核心处理器,内存大小为8G。同时,NVIDIA GTX960图形卡用于加速GPU处理器。
3.2.1实验数据
KDDCUP99数据集共包含500万条记录,在本文中,10%的数据子集被选为与6:2:2.2相关的训练包、验证包和测试包。训练集的样本用于使用Adam优化算法训练模型的后向传播,验证集的样本被用于训练模型的初始评估,根据评估结果调整模型训练的超参数,测试集的样本则被用于模型的最终评估,其可以检测概括模型的能力,表3.1本实验中训练包的类别。
表3.1 训练集、测试集类别和比例
3.2.2模型参数设置
在对KDDCUP99数据集进行上述预处理之后,获得二维数据11x11作为入侵检测模型的输入,因此输入层的维度为11x11;数据样本标记为正常、Dos、R2L、U2R和探测,五种类型的字符通过独特的热编码应用并转换为五维向量,故输出层设置为5。
表3.2 模型各层参数
3.2.3模型评价
评价一个模型的好坏,存在很多评价指标,所有这些评估指标都派生自混淆矩阵中的4个值,见表3.3。
表3.3 混淆矩阵
TP:实际值为 1,预测值为 1,结果正确。
FP:实际值为 0,预测值为 1,结果错误。
FN:实际值为 1,预测值为 0,结果错误。
TN:实际值为 0,预测值为 0,结果正确。
要构建深度学习入侵检测模型,需要根据上述评估指标得出评估结果,根据评估结果评估模型的优缺点,然后调整模型的参数,直到不同的模型评估指标达到理想值。
3.3 实验结果与分析
在深度学习中,模型参数的选择将对模型的最终性能产生一些影响。最关键的参数是学习速度,基于损失函数的梯度控制网络质量的调整速度。学习率过低,模型的收敛速度降低,模型的训练时间增加;然而,如果学习速度太高,这会导致参数在最优解的两侧来回振荡,导致模型收敛失败。为了选择最佳的学习因子,本文首先选择不同的学习因子值进行比较实验,并将测试的准确性作为评估指标,测试集中不同学习因素的准确性如图3.4所示。
图3.4 不同学习率的测试集准确率
根据上图的对比实验分析可知根据上述图的对比实验分析,当模型的学习速度过高或过低时,测试集的精度较低,因此在本文中,它将模型的学习速率设置为0.001。此时,模型的损失值最低,测试精度最高。Select category_Crosstronopia是一个损失函数,专门用于多分类问题。Set back_ Size为64,epoch为10。使用Adam的优化算法向后传播模型。迭代时间和精度之间的关系曲线如图3.5所示,其中Trainingac表示和训练集的精度,Validationac表示验证集的精度。
图3.5 准确率曲线
迭代次数和损失值的关系曲线如图3.6所示,其中Training loss代表i)1 I练集损失值,Validation loss代表验证集损失值。
图3.6 损失曲线
观察两组图像的曲线,可以注意到,随着迭代次数的增加,精度曲线逐渐增加,并最终趋于稳定,达到最高0.999,而损失值曲线逐渐减小,接近0。可以说,这一模型已经达到了最佳状态。为了证明入侵检测模型的有效性,使用测试集来测试该模型,并选择了一些传统的机器学习方法,包括向量机算法(SVM)、朴素贝叶斯多项式算法(naive Bayes)和神经网络对流(CNN),以与本文中的入侵检测模型进行有效性比较。选择准确度值(acct、精确打印)、召回值(r)和Fl作为本研究的评估指标,并将结果进行比较表3.4。
表3.4 模型对比
从表3.4可以看出,本文中的深度学习入侵检测模型比其算法具有更高的准确度(acct,精确打印)和召回率(r),并且由于本文中提出的模型的F1值相对较低,因此该模型的稳定性也高于其模型。实验结果表明,尽管所提出的深度学习入侵检测模型具有更复杂的结构和更多的参数,但训练速度并未随着模型的深入而降低,但检测精度更高,这显著提高了网络流量数据分类的效率。
3.4 本章小结
本文针对当前网络流量数据样本既有空间特征,针对当前时间特征的现状,提出了一种基于深度学习的入侵检测模型。采用双分支螺旋神经网络对网络交通数据样本进行空间特征的细化和改进,既能保持数据样本的一般特征,又能提取数据样本的深层特征。将空间特性引入门控环路单元的网络,并使用KDDCUP99数据集学习和测试网络流量数据样本的时间特性。实验结果表明,与传统的机器学习方法相比,所提出的深度学习入侵检测模型显著提高了入侵检测系统的入侵检测精度和性能。然而,由于该模型仅在数据集中进行了测试,尚未在实际网络环境中应用,因此下一步是实现防火墙入侵检测模型,以实时检测该模型的性能。