(完整版)基于神经网络的网络入侵检测

合集下载

基于LSTM网络的网络入侵检测模型

基于LSTM网络的网络入侵检测模型

基于LSTM网络的网络入侵检测模型网络入侵是指黑客通过攻击网络系统,获取非法权限,窃取、破坏或篡改数据信息的行为。

在当前互联网环境下,网络安全问题日益严峻,迫切需要有效的入侵检测手段来保护网络系统的安全性和完整性。

本文将介绍一种基于LSTM(长短时记忆)网络的网络入侵检测模型,该模型通过深度学习方法对网络入侵进行准确的监测和识别。

一、背景介绍网络入侵检测是网络安全领域的关键问题之一。

传统的入侵检测方法通常基于特征工程和机器学习算法,需要人工提取和选择特征,存在着特征选择困难和特征变化的问题。

相比之下,深度学习作为一种端到端的学习算法,可以自动学习输入数据的特征表示,具有较高的泛化能力。

因此,基于深度学习的网络入侵检测模型备受关注。

二、LSTM网络简介LSTM是一种循环神经网络(RNN)的变体,能够有效地处理序列数据,并具有记忆功能。

相比于传统的RNN模型,LSTM通过引入三个门控单元(输入门、遗忘门、输出门)来控制信息的传递和遗忘,解决了长序列训练中的梯度消失和梯度爆炸问题。

这使得LSTM网络具有较好的记忆能力,适合处理具有时间序列性质的网络流量数据。

三、基于LSTM的网络入侵检测模型基于LSTM的网络入侵检测模型主要由以下几个组成部分构成:1. 数据预处理首先,需要对网络流量数据进行适当的预处理。

这包括数据清洗、特征提取和归一化等步骤。

数据清洗用于去除异常值和噪声,特征提取则是提取网络流量数据中的有用信息,例如源IP地址、目的IP地址、端口号等。

归一化是将不同特征的取值范围映射到统一的范围,以避免某些特征对模型训练的影响过大。

2. LSTM网络模型构建接下来,在数据预处理完毕后,可以构建基于LSTM的网络入侵检测模型。

模型的输入是经过预处理后的网络流量数据,通过LSTM层对数据进行特征学习和表示。

为了提高模型的性能,可以在LSTM层之后添加一些其他的层,例如卷积层或全连接层,以进一步提取和组合特征。

入侵智能检测实验报告(3篇)

入侵智能检测实验报告(3篇)

第1篇一、实验背景随着信息技术的飞速发展,网络安全问题日益凸显。

入侵检测技术作为网络安全的重要手段,能够实时监控网络系统的运行状态,及时发现并阻止非法入侵行为,保障网络系统的安全稳定运行。

本实验旨在通过构建一个入侵智能检测系统,验证其有效性,并分析其性能。

二、实验目的1. 理解入侵检测技术的基本原理和实现方法。

2. 掌握入侵检测系统的构建过程。

3. 评估入侵检测系统的性能,包括检测准确率、误报率和漏报率。

4. 分析实验结果,提出改进建议。

三、实验材料与工具1. 实验材料:KDD CUP 99入侵检测数据集。

2. 实验工具:Python编程语言、Scikit-learn库、Matplotlib库。

四、实验方法1. 数据预处理:对KDD CUP 99入侵检测数据集进行预处理,包括数据清洗、特征选择、归一化等操作。

2. 模型构建:选择合适的入侵检测模型,如支持向量机(SVM)、随机森林(Random Forest)等,进行训练和测试。

3. 性能评估:通过混淆矩阵、精确率、召回率等指标评估入侵检测系统的性能。

4. 实验结果分析:分析实验结果,总结经验教训,提出改进建议。

五、实验步骤1. 数据预处理(1)数据清洗:删除缺失值、异常值和重复数据。

(2)特征选择:根据相关性和重要性选择特征,如攻击类型、服务类型、协议类型等。

(3)归一化:将数据特征进行归一化处理,使其在相同的量级上。

2. 模型构建(1)选择模型:本实验选择SVM和Random Forest两种模型进行对比实验。

(2)模型训练:使用预处理后的数据对所选模型进行训练。

(3)模型测试:使用测试集对训练好的模型进行测试,评估其性能。

3. 性能评估(1)混淆矩阵:绘制混淆矩阵,分析模型的检测准确率、误报率和漏报率。

(2)精确率、召回率:计算模型的精确率和召回率,评估其性能。

4. 实验结果分析(1)对比SVM和Random Forest两种模型的性能,分析其优缺点。

基于BP神经网络的入侵检测系统

基于BP神经网络的入侵检测系统

2 De to o ue ce c , ih a iest f t . p. f mp tr in e Sc u nUnv ri o s& S in e , z o 3 0 0 C ia C S y Ar ce c s Dah u6 5 0 , hn )
Absr c : e i t u i n d t c i n s se i a e n BP n u a e wo k . e o i i l c o n a a wh c ip a e y ta t Th n r so e e to y t m sb s d o e r ln t r s Th rg na c u t t i h d s l y d b a d
O 引言
计 算 机 系 统 的主 要 问题 是 网络 信 息 安 全 。 入 侵 检 测 是 为 系 统 提 供 实 时 的 检 测 及 采 取 相 应 的 防护 手 段 。Itre 数 据 传 输 是 基 于 T P I 议 ,缺 乏 安 nent C /P协 全 措 施 。故 设 计 基 于 B P神 经 网 络 的入 侵 检测 系 统 。
文 章 编 号 : 1 0 — 5 6 ( 07)0 — 0 10 0 6 17 2 0 405— 2
2 0 , o . 6 No 4 0 7 V 12 , .
基于 B P神 经 网络 的入 侵检 测 系 统
杜 晓 曦 ,钟乐 海 ,陈 良维 z ( .西华 师 范大 学 计 算机 学 院 , 四川 南 充 6 7 0 ;2 1 3 0 2 .四川 文 理学 院 计 算机 科 学系 ,四川 达 J 6 5 0 ) J 3 00 ’ I
摘要 :基 于 B P神 经 网络 技 术 的入侵 检 测 系统 ,将二 进 制表 示 的原 始 审 计数 据 用 A C I 表 示 ,再 进行 数 据预 S I码 处 理 , 包括 数 据 解析 和 转化 成神 经 网络 可识 别 的输 入 。 然后 执 行数 据 收 集 和预 处 理 ,得 到评 估 数据 集 ,以评 估 新 的 模 式或特征的准确率。最后 ,神经网络分析 引擎处理分析数据 集,判断是否为异常数据。 关键 词 :B P神 经 网络 ;入 侵检 测 ;I ; 神 经元 :训 练 DS

基于神经网络的网络安全评估方法研究

基于神经网络的网络安全评估方法研究

基于神经网络的网络安全评估方法研究随着互联网在国内的普及和应用范围的不断扩大,网络安全问题愈加凸显。

各类安全威胁层出不穷,传统安全技术已经难以满足安全需求,网络安全的研究和保障任务日益繁重。

针对当前网络安全问题,国内外的学者和专家们不断探索新的安全技术和方法,其中基于神经网络的网络安全评估方法备受关注。

一、基于神经网络的网络安全评估方法原理神经网络是一种机器学习的算法,其模型受到人类神经系统的启发,可以用于模拟人脑对信息的处理过程。

网络安全评估是指对网络系统的安全性能进行评估,包括安全需求、安全目标、安全策略等多个方面。

基于神经网络的安全评估方法,其核心就是将大量的安全数据输入到神经网络中,通过训练使神经网络自动学习网络安全模式,从而建立网络安全评估模型。

该模型可用于对网络安全问题进行预测、检测和防御。

二、基于神经网络的网络安全评估方法的优劣势分析1. 优势:(1)基于神经网络的网络安全评估方法具有强大的数据处理能力,可以处理大量的网络安全数据,将数据转化为可供评估的信息。

(2)该方法的自适应性和自学习能力强,可以动态更新网络安全模型,提高对新兴网络安全威胁的检测和防御能力。

(3)基于神经网络的网络安全评估方法不受网络结构的限制,适用于各种不同的网络结构和设备。

2. 缺陷:(1)基于神经网络的网络安全评估方法需要大量的安全数据进行训练,缺乏充足的安全数据会影响模型的准确性。

(2)该方法虽然可以适应新的安全威胁,但模型泛化能力有限,可能会存在误判问题。

(3)基于神经网络的网络安全评估方法需要专门的算法和技术支持,技术门槛较高,需要专业人员进行研究和开发。

三、基于神经网络的网络安全评估方法在实际应用中的场景1. 基于神经网络的入侵检测入侵检测是指对网络系统进行检测和识别,判断是否遭到入侵。

基于神经网络的入侵检测可以更加准确地识别入侵行为,并及时进行防御。

2. 基于神经网络的网络威胁分析网络威胁分析是指对网络系统中安全威胁情况进行分析和评估,以及对威胁进行预测和抵御。

基于优化神经网络的入侵检测方法

基于优化神经网络的入侵检测方法
力;
确定 或不知 道 的 系统 , 来 越受 到许 多 学 者 的欢 越
迎 。随着这 种 算法 在 各 种 广泛 的场 合 内的应 用 ,
其得 到 的效 果越 来越优 先 , 弊端 越来越 多 , 显示 出
来其 不适应 的一 面 。B ] P算 法 的 神 经 元 网络 从 运行 过程 中 的信 息流 向来看 , 是前馈 型 网络 , 它 这 种 网络仅通 过许 多具 有简单 处理 能力 的神经 元 的
48 4
长 春 工 业 大 学 学 报( 自然 科 学 版 )
第3 3卷
确 率 。
2 输 出的终 端 没有 预计 得 到理 想 的结 果 , ) 这 就 需要对 问题 进行合 理 的修正 。计算 出误 差 的大 小 。根据 计 算 得 到 的 结 果 对 权 值 和偏 置进 行 调 节 。这也 是误 差权值 修 正的一 个很好 的 办法 。通 过 网络误 差 函数计算 误差 , 法如下 : 方
n t r t t r m e e s a l s ii r p r me e s,a pg a he de e to c ur c a e e wo k s a e pa a t r nd ca sfe a a t r nd u r de t t c i n a c a y r t .
o e a i n,we i t o u e a n w n r y f n to o i r v h o v r e c p e n o v h o a p r to n r d c e e e g u c i n t mp o e t e c n e g n e s e d a d s l e t e l c l
隐含 层 :
oj E]一 f nt )一 ( [] e

基于人工智能的网络入侵检测方法研究

基于人工智能的网络入侵检测方法研究

基于人工智能的网络入侵检测方法研究随着网络技术的发展和应用的广泛,网络安全问题愈演愈烈。

网络入侵攻击威胁着网上用户的安全与隐私,如何有效地检测和防范网络入侵威胁成为了当前迫切需要解决的问题之一。

人工智能技术因其在处理复杂问题方面具有的优势而逐渐成为网络入侵检测领域中的重要手段。

本文对基于人工智能的网络入侵检测技术进行了研究和探讨,并提出了相应的应对方案。

一、人工智能在网络入侵检测领域的应用人工智能技术在网络入侵检测领域中的应用主要体现在以下三个方面:1. 基于机器学习的网络入侵检测方法。

机器学习是一种能够让计算机不断地学习和适应的技术,通过对样本数据进行学习和模型构建,使得计算机能够在没有人类干预的情况下自动识别和处理数据。

在网络入侵检测领域,基于机器学习的方法通过建立模型来学习网络入侵行为的规律,并将新的数据与模型进行比对来判断其是否存在入侵行为。

相较于传统的基于规则的检测方法,机器学习技术能够更加全面地考虑网络入侵的各个方面,提高检测精度和准确性。

2. 基于神经网络的网络入侵检测方法。

神经网络是一种类似于人类大脑神经细胞相互连接的计算模型,能够学习和处理复杂的非线性关系。

在网络入侵检测领域,基于神经网络的方法通过构建网络模型来学习和识别网络流量特征,从而实现网络入侵检测。

相较于基于机器学习的方法,基于神经网络的方法能够更加准确地识别数据流量中的复杂关系,从而提高检测精度和准确性。

3. 基于深度学习的网络入侵检测方法。

深度学习是一种基于神经网络的机器学习方法,在处理复杂问题方面具有明显的优势。

在网络入侵检测领域,基于深度学习的方法通过多层次的神经网络架构来学习和识别网络入侵行为。

相较于传统的基于规则和特征提取的方法,深度学习技术能够更加高效地识别复杂的网络入侵行为和攻击类型。

二、基于人工智能的网络入侵检测技术的发展现状当前,基于人工智能的网络入侵检测技术已经逐渐成为网络安全领域的重要研究方向。

基于LSTM网络的网络入侵检测技术

基于LSTM网络的网络入侵检测技术

基于LSTM网络的网络入侵检测技术网络安全一直是当今科技发展中的一个重要领域,随着互联网的普及和网络攻击手段的不断进化,网络入侵检测技术变得尤为重要。

本文将介绍一种基于LSTM(长期短期记忆)网络的网络入侵检测技术,探讨其原理以及在实际应用中的效果。

一、引言在互联网时代,网络安全问题日益突出。

网络入侵行为通过潜在的威胁随时威胁着企业和个人的信息安全。

网络入侵检测技术是保护网络安全的重要手段之一。

传统的网络入侵检测技术主要依赖于规则匹配和特征提取,但针对未知的入侵行为往往无法有效应对。

而基于LSTM网络的网络入侵检测技术能够利用其强大的序列模型特性,有效地进行入侵行为的检测和预测。

二、LSTM网络原理LSTM网络是一种具有长短期记忆能力的循环神经网络。

相比于传统的循环神经网络,LSTM网络引入了遗忘门和输入门,能够更好地处理长序列依赖关系。

遗忘门用于控制哪些信息应该被遗忘,输入门用于控制哪些新信息应该被添加进来。

这一机制使得LSTM网络在处理近期和远期依赖问题时更加准确和有效。

三、基于LSTM网络的网络入侵检测技术基于LSTM网络的网络入侵检测技术主要分为两个阶段:训练阶段和测试阶段。

1. 训练阶段在训练阶段,需要准备入侵和非入侵样本数据集。

入侵样本数据集包含已知的入侵行为数据,非入侵样本数据集包含正常的网络流量数据。

首先,将样本数据集进行预处理,包括数据清洗、特征提取等步骤。

然后,构建LSTM网络模型进行训练。

在训练过程中,通过反向传播算法不断调整网络的权重和参数,以达到对入侵行为的准确识别和分类。

2. 测试阶段在测试阶段,使用已训练好的LSTM网络模型对实时网络流量进行检测。

将实时网络流量输入到网络模型中,通过前向传播算法进行预测。

根据预测结果,可以将网络流量划分为入侵行为和非入侵行为两类。

通过设定合适的阈值,可以对入侵行为进行进一步的细分和报警。

四、实验与应用为了验证基于LSTM网络的网络入侵检测技术的效果,我们进行了一系列实验。

一种基于智能神经网络的入侵检测新方法

一种基于智能神经网络的入侵检测新方法

Ab t a t s r c :A o e p o c o n r so e e to a e n i t l g n ur lne wo k s p o o e n v la pr a h f r i t u in d t c in b s d o n el e tne a t r s i r p s d. i
收稿 日期 : 0 7—0 20 3—1 4 作者简介 : 毕 靖( 9 4 , , 1 7 一)女 讲师, 硕士, 研究方 向: 网络安全

要 :提 出 了一个 基于 智能神 经 网络 的 网络 入侵 检 测 新方 法 .该方 法 首 先 建立 功 能 单一 、 结构
简单 、 易于构造 的小 型神 经 网络 来 完成单 一 的网络 入侵 检 测任 务 , 后将 多个 训 练 好 的、 够检 测 然 能 多种 多样 网络攻 击的 小型神 经 网络 组合 成一个 大 型智能神 经 网络 .实验 采 用 D RP 9 8入侵 检 A A 19
B ig h n ajn i n ,C e g Xioig J
( c o l f l t c ya d I fr t n E g e r g UC A B in 0 0 4 S h o e r i n no mai n i ei ,B E e ig 1 0 4 ) o E c it o n n j
Ke r s:i t u in d t c in;i el e tne r ln t r s;f a u es lc in y wo d n r so e e to ntli n u a e wo k g e t r ee to
随 着互联 网 的飞 速发 展 , 网络 信 息安 全 日益 受 到人 们的关注 , 入侵 检 测 成 为安 全 专 家积 极 研 究 的
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

基于神经网络的网络入侵检测本章从人工神经网络的角度出发,对基于神经网络的网络入侵检测系统展开研究。

在尝试用不同的网络结构训练和测试神经网络后,引入dropout层并给出了一种效果较好的网络结构。

基于该网络结构,对目前的神经网络训练算法进行了改进和优化,从而有效避免了训练时出现的过拟合问题,提升了训练效率。

4.1 BP神经网络相关理论本章从学习算法与网络结构相结合的角度出发,神经网络包括单层前向网络、多层前向网络、反馈神经网络、随机神经网络、竞争神经网络等多种类型。

构造人工神经网络模型时主要考虑神经元的特征、网络的拓补结构以及学习规则等。

本文选择反向传播神经网络(Back Propagation Neural Network, BPNN)作为基本网络模型。

BP神经网络是一种通过误差逆传播算法训练的多层前馈神经网络,是目前应用最广泛的神经网络模型形式之一。

网络中每一层的节点都只接收上一层的输出,而每一层节点的输出都只影响下一层的输入,同层节点之间没有交互,相邻两层节点之间均为全连接模式。

BP神经网络在结构上分为输入层、隐含层与输出层三部分,其拓扑结构如图4-1所示。

图4-1 BP神经网络拓扑结构Figure 4-1 Topological Structure of BP Neural Network这里隐含层既可以是一层也可以是多层,数据在输入后由隐含层传递到输出层,通过各层的处理最终得到输出结果。

传统的BP网络算法可分为两个过程:神经网络中信号的前向传播和误差函数的反向传播。

算法在执行时会不断调整网络中的权值和偏置,计算输出结果与期望结果之间的误差,当误差达到预先设定的值后,算法就会结束。

(1)前向传播隐含层第J个节点的输出通过式(4-1)来计算:(4-1) 式中ωij代表输入层到隐含层的权重,αj代表输入层到隐含层的偏置,n 为输入层的节点个数,f(.)为激活函数。

输出层第k个节点的输出通过式(4-2)来计算:(4-2) 式中ωjk代表隐含层到输出层的权重,bk代表隐含层到输出层的偏置,l为隐含层的结点个数。

根据实际输出与期望输出来计算误差,见式(4-3)。

(4-3) 式中(Yk-Ok)用ek来表示,Yk代表期望输出,m为输出层的结点个数。

当E不满足要求时,就会进入反向传播阶段。

(2)反向传播反向传播是从输出到输入的传播过程。

从式((4-1)至式(4-3 )中,可以发现网络误差E是与各层权值和偏置有关的函数,所以如果想减小误差,需要对权值和偏置进行调整。

一般采取梯度下降法反向计算每层的权值增量,令权值的变化量同误差的负梯度方向成正相关,调整的原则是令误差沿负梯度方向不断减少。

权值的更新公式见式(4-4),偏置的更新公式见式(4-5)。

(4-4)(4-5) 式中η为学习速率。

BP算法的整体流程如图4-2所示。

图4-2 BP算法流程图Figure 4-2 Flow Chart of Back Propagation Algorithm4.2 网络结构的设计4.2.1 设计思路设计网络结构时确定隐含层的层数以及隐含层的节点数是非常重要的。

增加隐含层的层数有利于提高精度同时降低网络误差,但是BP神经网络的隐含层层数越多,所需的训练时间也就越长。

对于单隐层神经网络而言,隐含层的神经元数量过少会导致网络的学习能力不足。

相反,神经元数量越多,网络的学习能力就越强,越容易达到预期的精度,但是相对地会削弱网络的泛化能力,使网络容易达到过拟合状态。

为了保证网络拥有足够强的性能及泛化能力,尽量避免在训练时出现过拟合现象,本文在设计网络结构时主要遵循以下原则:(1)在保证神经网络检测精度的前提下,尽量减少神经元的数量;(2)通过仿真实验试探查找隐含层节点数的最优值。

本文中网络结构选择的是多层前馈神经网络,它的结构虽然简单,但是能够实现任意精度逼近任意连续函数,并且可以获得复杂的处理能力,因此分类能力和模式识别能力一般都会强于反馈网络。

激活函数选择的是线性整流函数( Rectified Linear Unit, ReLU),也叫作修正线性单元,函数曲线如图4-3所示,其公式见式(4-6)。

图4-3 ReLU函数曲线Figure 4-3 Function Curve of ReLU(4-6) ReLU激活函数定义了神经元在线性变换w T x+b以后的非线性输出。

换句话说,来自上一层网络的输入向量x在进入神经元后,将输出max(0, w T x + b)至下一层神经元。

采用ReLU激活函数可以使梯度下降和反向传播的过程更加高效,同时避免了梯度爆炸与梯度消失的问题。

此外,该函数没有其他复杂激活函数如Sigmoid函数中指数的影响,并且活跃度较为分散,使得神经网络整体的计算成本减少,从而简化计算过程。

目标函数选择的是Softmax函数。

Softmax函数是式(4-7)取负对数后得到的损失函数,其公式见式((4-8)。

(4-7)(4-8) 式中Sj表示j上的得分,Yi表示真实类别。

4.2.2 网络结构及对应实验分析本文利用生长法来设计神经网络的网络结构,即设计网络结构时,首先确定一种较为简单的网络结构,然后通过增加隐含层数和隐含层节点数来形成其他的网络结构。

根据4.2.1中的设计思路,设计并训练了五种不同的神经网络模型,对应的网络结构如图4-4所示。

在图4-4的网络结构中,输入层均由41个神经元构成,输出层由5个神经元构成。

x为输入向量,数据输入后通过隐含层最终输出分别属于五个类别的概率,然后将概率最大的类别作为最终的判断结果。

其中网络结构a,b,c包含一个隐含层,分别由50, 100, 500个神经元构成;网络结构d, e由两个隐含层构成,前者每个隐含层包含50个神经元,后者每个隐含层包含100个神经元。

a)网络结构a b)网络结构ba) Network Structure a b) Network Structure bc)网络结构c d)网络结构dc) Network Structure c d) Network Structure de)网络结构ee) Network Structure e图4-4神经网络的网络结构Figure 4-4 Structure of Neural Network本章训练和测试神经网络时使用了Google推出的Tensorflow深度学习框架,Tensorflow是一个采用数据流图(data flow graphs),用于数值计算的开源软件库。

它的灵活性和可延展性让用户可以在各种平台上展开计算,例如台式计算机中的单个或多个CPU(GPU)、服务器、移动设备等等,因此主要用于机器学习和深度神经网络方面的研究。

本章实验部分的机器配置,显卡采用的是GeForceGT 750M,显存大小为2G,网络训练和测试时使用GPU模式。

用完整训练集分别训练图4-4中的五种网络结构,训练时的参数batch size(每次从训练集中取的数据量)和epochs(使用完整训练集训练的轮数)将影响模型的精度和训练时间。

在合理范围内增大batch size对训练有一定好处,可以提高训练的速度,并且batch size越大其确定的下降方向越准确,引起的训练震荡越小。

但受显存的限制,不能无限地增大batch size,因此在本实验中batch size设为50。

Epochs代表使用完整训练集训练的轮数,由于训练集共包含494021条数据,在batch size = 50的情况下,训练一次完整的数据集就需要9881轮迭代,而完成全部训练过程的总迭代数=9881×epochs。

考虑到完整训练集的数据量过于庞大,因此用完整训练集训练时epochs设为50。

模型参数采用高斯分布初始化(Gaussian)方法进行初始化,训练时使用随机梯度下降法,基础学习率设置为base_1r=0.01调整策略使用step策略,stepsize=5000,学习率按照式(4-9)进行更新,其中gamma=0.1,iter是当前的训练迭代次数。

在以上参数条件下,本文所设计的几种网络结构均可以达到收敛。

(4-9) 训练完成后用测试集分别对这五个模型进行测试,得到的结果见表4-1和4-2。

表4-1不同网络结构每种类别的检测率Table 4-1 Detection Rate of Different Network Structures for Each Category表4-2不同网络结构的整体效果Table 4-2 Overall Effect Using Two Training Sets to Train the Structure a从表4-1中可以看出使用网络结构a训练的模型在四种攻击类别上的检测率都比较高。

虽然网络结构c在Normal类别上的检测率高于网络结构a,但是对入侵检测系统来说,检测出攻击流量是最为重要的,并且从表4-2中可以看到网络结构a对整体攻击流量的检测率最高,同时训练和检测时间要少于其他四种结构,这是由于网络结构a的复杂度最低,因此使用它进行训练和测试所需要的时间也就比较少。

综上所述,本章选取网络结构a作为神经网络的一个基础候选网络结构,后续的研究也主要是在网络结构a的基础上进行一系列的改进。

4.2.3 Dropout层的引入训练BP神经网络时经常会遇到的一个问题是容易达到过拟合状态,过拟合是指模型在训练集上损失函数较小,但是在测试集上损失函数较大,预测准确率较低的现象。

而dropout的出现可以很好地解决这些问题。

dropout是指在神经网络的训练过程中,对于网络中的神经元,按照一定的概率暂时将其从网络中丢弃,即在每个batch中,让一部分隐层节点值为0。

由于是随机丢弃,所以每一个batch 都在训练不同的网络,这种方式可以减少神经元之间的相互作用。

Hinton在论文中证实了dropout对于全连接网络有防止过拟合的效果。

图4-5为dropout的可视化表示,其中图a)为应用dropout前的神经网络,图b)是应用dropout后的同一个网络,虚线代表临时删除的神经元。

a)应用out前的神经网络b)应用dropout后的神经网络a)Neural Network Before Applying Dropout b)Neural Network after Applying Dropout图4-5应用dropout前后的神经网络Figure 4-5 Neural Network Before and after Applying Dropout Dropout会以概率p舍弃部分神经元,其他神经元以概率1-p被保留,输入层和输出层神经元不作变动,舍去的神经元的输出都被设置为零。

相关文档
最新文档