1、2007-03-07哈尔滨理工大学网络信息中心1T-S型模糊神经网络与入侵检测哈尔滨理工大学 卜明玮2007-03-07哈尔滨理工大学网络信息中心2T-S型模糊神经网络与入侵检测l主要内容lT-S型模糊神经网络介绍lBP算法原理用于T-S FNN模糊参数学习l遗传算法用于T-S FNN的权值学习lT-S FNN应用于入侵检测数据分析2007-03-07哈尔滨理工大学网络信息中心3T-S型模糊神经网络介绍lT-S FNN的结构2007-03-07哈尔滨理工大学网络信息中心4T-S型模糊神经网络介绍lT-S FNN结构的说明l网络由前件网络和后件网络两部分组成l前件网络用来匹配模糊规则的前件l后件
2、网络用来产生模糊规则的后件2007-03-07哈尔滨理工大学网络信息中心5T-S型模糊神经网络介绍l前件网络 l第一层为输入层。l第二层每个结点代表一个语言变量值 l第三层的每个结点代表一条模糊规则, 它的作用是用来匹配模糊规则的前件, 计算出每条规则的适用度。 l第四层的结点数与第三层相同, 它所实现的是归一化计算2007-03-07哈尔滨理工大学网络信息中心6T-S型模糊神经网络介绍l后件网络 l它由r 个结构相同的并列子网络组成, 每个子网络产生一个输出量。 l输入层中第0个结点的输入值x0= 1, 它的作用是提供模糊规则后件中的常数项。 l子网络的第2层共有m 个结点, 每个结点代表一
3、条规则, 该层的作用是计算每一条规则的后件 2007-03-07哈尔滨理工大学网络信息中心7T-S型模糊神经网络介绍lyk是各规则后件的加权和, 加权系数为各模糊规则的归一化适用度, 也即前件网络的输出用作后件网络第3层的连接权值。l这里不考虑各输入分量的模糊分割数的划分, 需要学习的参数主要是后件网络的连接权以及前件网络第2层各结点隶属函数的中心值及宽度 2007-03-07哈尔滨理工大学网络信息中心8T-S型模糊神经网络与入侵检测lT-S型模糊神经网络介绍lBP算法原理用于T-S FNN模糊参数学习l遗传算法用于T-S FNN的权值学习lT-S FNN应用于入侵检测数据分析2007-03-
4、07哈尔滨理工大学网络信息中心9BP算法原理用于T-S FNN模糊参数学习l我们先用一个简单的BP网络结构说明BP算法的原理,下面是具有一个隐含层的BP网络的结构2007-03-07哈尔滨理工大学网络信息中心10BP算法原理用于T-S FNN模糊参数学习lBP算法是一种监督式的学习算法,其主要思想是:q输入学习样本(P1, P2, Pq),己知与其对应的期望输出样本为:T1,T2,Tq。学习的目的是用网络的实际输出A1,A2,Aq与目标矢量T1,T2,Tq之间的误差来修改权值,使Ai(i=1,2,q)与期望的Ti尽可能地接近,即是网络输出层的误差平方和达到最小。 2007-03-07哈尔滨理工
5、大学网络信息中心11BP算法原理用于T-S FNN模糊参数学习l以前面图中所示的三层网络为例进行BP算法推导,设输入为P,输入神经元有r个,隐含层有s个神经元,激活函数为f1,输出层内有t个神经元,对应的激活函数为f2,输出为A,目标矢量为T。2007-03-07哈尔滨理工大学网络信息中心12BP算法原理用于T-S FNN模糊参数学习l信息的正向传递 l隐含层中第k个神经元的输出为: l输出层中第l个神经元的输出为: l定义误差为 2007-03-07哈尔滨理工大学网络信息中心13BP算法原理用于T-S FNN模糊参数学习l利用梯度下降法求权值变化及误差的反向传播l梯度下降法l是一种对某个准则
6、函数的迭代寻优算法。设J(a)是准则函数,a为一向量。d为J(a)在点ak的梯度,为一向量,其方向为J(a)增长最快的方向;负梯度方向,则是减少最快的方向。因此,若求某函数的极大值,沿梯度方向走,可以最快的速度到达极大点;反之沿负梯度方向走,可以最快地到达极小点。2007-03-07哈尔滨理工大学网络信息中心14BP算法原理用于T-S FNN模糊参数学习l利用梯度下降法求权值变化及误差的反向传播 l输出层的权值变化 其中 同理可得: kklkllklllklaafaTWaaEW11222222)(222fefaTlllklkllaTe2kllllllllfaTbaaEbEb2222222200
7、7-03-07哈尔滨理工大学网络信息中心15BP算法原理用于T-S FNN模糊参数学习l隐含层的权值变化l其中:l同理可得: tljkljklljkkklljkjkPPfWfaTWaaaaEWEW11222111122111fekjkskklklkWe12jkkb12007-03-07哈尔滨理工大学网络信息中心16BP算法原理用于T-S FNN模糊参数学习l现在考虑T-S型模糊神经网络中前件网络的隶属函数参数的学习问题。先将后件网络的连接权参数W j i固定,从而T-S FNN的结构图可以简化为如下形式。 2007-03-07哈尔滨理工大学网络信息中心17BP算法原理用于T-S FNN模糊参数
8、学习l依据前面介绍的算法原理,可依次求得每一层的误差l最后求得一阶梯度 32)2()2()2()(2iiiiiiiisisiisisisisiscxffEcEkdkkkkyyyEfE)5()5(rkkjkjjyfE1)5()4()4(mjiimiiijmjiimiiijjjfffE121)4(121)3()3()4()3()3()()(mjisisjisisiiiifSfE1)2()3()2()2(2007-03-07哈尔滨理工大学网络信息中心18BP算法原理用于T-S FNN模糊参数学习l在求得所需的一阶梯度后,最后可以给出参数的学习算法为 iiiisisiscEkckc)() 1(iiii
9、sisisEkk)() 1(2007-03-07哈尔滨理工大学网络信息中心19T-S型模糊神经网络与入侵检测lT-S型模糊神经网络介绍lBP算法原理用于T-S FNN模糊参数学习l遗传算法用于T-S FNN的权值学习lT-S FNN应用于入侵检测数据分析2007-03-07哈尔滨理工大学网络信息中心20遗传算法用于T-S FNN的权值学习l遗传算法的主要特点是:l遗传算法使用参数集的编码,而不是参数本身;l遗传算法目标函数指引遗传过程, 不是采用求导数或其它定理;l遗传算法在点群上搜索寻优,而不是一个点;l遗传算法使用可能性变换法,而不是定论法则。 2007-03-07哈尔滨理工大学网络信息中
10、心21遗传算法用于T-S FNN的权值学习l遗传算法的简要框图2007-03-07哈尔滨理工大学网络信息中心22遗传算法用于T-S FNN的权值学习l改进遗传算法并用于训练连接权 l这里的算法对SGA作以下改进l采用实数编码l权值的学习是一个复杂的连续参数优化问题。若采用二进制编码, 会造成编码串过长, 且需要再解码为实数, 使权值变化为步进, 从而影响网络学习的精度。 l自适应交叉率l自适应变异率2007-03-07哈尔滨理工大学网络信息中心23遗传算法用于T-S FNN的权值学习l采用实数编码 l网络的各个权值按一定的顺序级连为一个长串(W 10, W 11, ,W 1n ,W 20, W
11、 21, , W 2n , , W m 0, W m 1, , W m n) , 串上的每一个位置对应着网络的一个权值 2007-03-07哈尔滨理工大学网络信息中心24遗传算法用于T-S FNN的权值学习l采用自适应交叉率l交叉:即按某一概率P c 从种群中随机选择两个串进行相互交换(部分交换两个串的某些位)。这里采用自适应交叉率。对于适应值高的串, 取较低的P c, 对于适应值低的串, 取较高的P c, 使该串进入下一代的机会增大。即2007-03-07哈尔滨理工大学网络信息中心25遗传算法用于T-S FNN的权值学习lP c = lkc 是小于1 的常数, f c 是要交叉的两个串中适应
12、值大的一个, f max、f分别是种群的最大适应值和平均适应值, f max -f体现了种群的收敛程度, 若此值较小, 说明种群已趋向收敛。 22maxmax() /() ,cccccffkffffkff2007-03-07哈尔滨理工大学网络信息中心26遗传算法用于T-S FNN的权值学习l采用自适应变异率 l变异:变异算子是按某一概率Pm改变种群中某些串的某些位。由于采用实数编码,这里的变异操作以概率Pm在初始概率分布中随机选择一个值,然后与要变异的串的某些位的权值相加。这里采用自适应变异率。对于适应值高的串,取较低的Pm,对于适应值低的串,取较高的Pm ,使该串进入下一代的机会增大。即 2
13、007-03-07哈尔滨理工大学网络信息中心27遗传算法用于T-S FNN的权值学习lPm =l km 是小于1 的常数, km 是要变异的串的适应值。 22maxmax() /() ,cmcmcffkffffkff2007-03-07哈尔滨理工大学网络信息中心28遗传算法用于T-S FNN的权值学习l改进遗传算法用于训练连接权的其他问题l初始化过程为使遗传算法能搜索所有可行解的范围, 初试化网络的各权值以概率分布来随机确定。 l评价函数f 网络以训练集样本为输入输出, 运行后返回误差平方和的倒数作为评价函数l选择在繁殖过程中, 某一个串其被拷贝的概率P s 可表示为:Ps=fi/ fifi
14、2007-03-07哈尔滨理工大学网络信息中心29T-S型模糊神经网络与入侵检测lT-S型模糊神经网络介绍lBP算法原理用于T-S FNN模糊参数学习l遗传算法用于T-S FNN的权值学习lT-S FNN应用于入侵检测数据分析2007-03-07哈尔滨理工大学网络信息中心30T-S FNN应用于入侵检测数据分析l数据来源 l网络数据的特征选取 l数据预处理 lT-S型模糊神经网络的结构参数设置 2007-03-07哈尔滨理工大学网络信息中心31T-S FNN应用于入侵检测数据分析l数据来源 l对于入侵检测数据分析的数据源,这里采用KDDCup99数据集,属性集的属性分为四类:基本属性集、内容属
15、性集、流量属性集、主机流量属性集,共41个属性。l下面是两条数据示例:0,tcp,http,SF,181,5450,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,8,8,0.00,0.00,0.00,0.00,1.00,0.00,0.00,9,9,1.00,0.00,0.11,0.00,0.00,0.00,0.00,0.00,normal.0,icmp,eco_i,SF,8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,16,0.00,0.00,0.00,0.00,1.00,0.00,1.00,1,129,1.00,0.00,1.00,0.51,0.
16、00,0.00,0.00,0.00,ipsweep.2007-03-07哈尔滨理工大学网络信息中心32T-S FNN应用于入侵检测数据分析l数据集中包含了大量的正常网络流量和 22 种不同的攻击,具有很强的代表性。这些攻击可以分为如下 4 类:lDOS:拒绝服务攻击,如smurf,teardrop 攻击等;lR2L:远程权限的获取,如口令猜测等;lU2R:权限提升,如各种缓冲溢出攻击;lPROBE:端口和漏洞扫描。 2007-03-07哈尔滨理工大学网络信息中心33T-S FNN应用于入侵检测数据分析l网络入侵类型表2007-03-07哈尔滨理工大学网络信息中心34T-S FNN应用于入侵检测
17、数据分析l数据来源 l网络数据的特征选取 l数据预处理 lT-S型模糊神经网络的结构参数设置 2007-03-07哈尔滨理工大学网络信息中心35T-S FNN应用于入侵检测数据分析l网络数据的特征选取l随着T-S型模糊神经网络规模的扩大和拓扑结构的复杂化,网络的收敛性会随之下降,网络的训练时间也会随之延长。因此,应该选取那些网络数据特征作为神经网络的输入,是非常重要的。下面介绍两种特征提取的方法:属性相关度分析方法和分类检测方法。l属性相关度分析方法:用统计学的观点,通过对所得数据各数据项(属性)进行分析,只保留一些重要的、包含信息量较多的数据项(属性),而舍弃一些不重要的、包含信息量较少或不
18、包含有用信息的数据项(属性)。属性相关度分析就可以做为这种分析方法。 2007-03-07哈尔滨理工大学网络信息中心36T-S FNN应用于入侵检测数据分析l属性相关度分析的基本思想:l计算某种度量,用于量化属性与给定类或概念的相关性。这种度量包括信息增益、相关系数等。l假定S样本中有s个样本,m个类,对一个给定样本分类所需的期望信息是 miiimssssSSSI1221log),(2007-03-07哈尔滨理工大学网络信息中心37T-S FNN应用于入侵检测数据分析l对某一属性A的划分的期望信息称作A的熵 l属性A上该划分的信息增益为: lGain(a) = l用这种方法可以计算出每个属性的
19、信息增益,具有最高信息增益的属性就是给定集合中具有最高区分度的属性。 vjmjjmjjssIsssAE111)()()(),(21AESSSIm2007-03-07哈尔滨理工大学网络信息中心38T-S FNN应用于入侵检测数据分析l分类检测方法:l为了提高网络的训练速度,缩小网络的规模,又不至于因为舍取了网络数据的一些数据项而降低检测效率,可以针对不同的攻击类型,构造不同的神经网络。l也就是说,每一个神经网络针对某一类型的攻击。在选取网络输入特征数据时,就可以针对确定的攻击类型,分析攻击特征存在于那些属性中,从而选取合适的网络数据,舍弃那些无用的数据项。l这些小规模的神经网络相互独立,他们独立
20、训练、并行工作。在进行入侵检测时,系统的检测结果是这些神经网络共同的检测结果。l这样就保证了不会因为网络的规模太大而使网络长时间不能完成训练,又保证了不会因为舍弃了一些数据而使神经网络的检测率降低。 2007-03-07哈尔滨理工大学网络信息中心39T-S FNN应用于入侵检测数据分析l数据来源 l网络数据的特征选取 l数据预处理 lT-S型模糊神经网络的结构参数设置 2007-03-07哈尔滨理工大学网络信息中心40T-S FNN应用于入侵检测数据分析l数据预处理 l由于从网络获取的原始数据中,各属性(特征)数据类型不同、数值相差太大等原因,不能将这些数据直接作为T-S型模糊神经网络的输入数
21、据,必须首先进行数据预处理。l字符数值化: 对于字符或字符串属性,不能把它直接作为模糊神经网络的输入,必须先对它进行数值化处理。数值化的方法一般是进行数据替换。例如,可以分别用1,2,3,4代表IP首部的协议类型:ICMP,IGMP,TCP,UDP。2007-03-07哈尔滨理工大学网络信息中心41T-S FNN应用于入侵检测数据分析l归一化处理l由于数据各属性单位的不同以及不同属性数值相差太大,直接将这些属性值作为模糊神经网络的输入将影响到训练的结果。因此,在用数据集训练网络之前,需要对数据进行归一化处理。特征数据项的归一化过程主要是保证每个数据项在同一区间取值,这样做的目的是防止特征数据项
22、数量级差别较大而造成数量级小的数据项特征无法发挥作用。 2007-03-07哈尔滨理工大学网络信息中心42T-S FNN应用于入侵检测数据分析l对数归一化l对数据进行归一化时,通常采用的方法是线性归一化,而线性归一化方法只适合原始数据集中的数据比较集中的情况,它对小的数据区分能力较差,因此在工程中该方法不常用。对数归一化使数据的分布比较均匀,易于数据的分离,常在工程中使用,因此这里采用对数归一化。2007-03-07哈尔滨理工大学网络信息中心43T-S FNN应用于入侵检测数据分析l设sample=samplei(j)| samplei(j)0,i=1,2,n为特征参数数据集合,其中i=1,2
23、,n,表示每一条记录的第i个数据项。j表示数据集中的第j条记录。归一化后的数据集为SAMPLE=SAMPLEi|i=1,2,n。 jsamplejsampleijij,min2007-03-07哈尔滨理工大学网络信息中心44T-S FNN应用于入侵检测数据分析l对数归一化公式为 lSAMPLEi=l其中C=,为满足的常数,作用是保证小数取对数后仍为正值。 l当存在零值数据项(特征)时,就不能对它们取对数,也就是不能直接进行对数归一化,这时可采取的方法是对所有属性值作数据平移,这种平移并不会改变样本之间的差异本质,所以并不会影响网络训练的结果。 lnlnlnlnlnlnlnlnCsampleCs
24、amplesampleiii ln12007-03-07哈尔滨理工大学网络信息中心45T-S FNN应用于入侵检测数据分析l数据来源 l网络数据的特征选取 l数据预处理 lT-S型模糊神经网络的结构参数设置 2007-03-07哈尔滨理工大学网络信息中心46T-S FNN应用于入侵检测数据分析lT-S型模糊神经网络的结构参数设置l 将T-S型模糊神经网络应用于入侵检测的另一个重要问题,就是如何合理设置网络的各项结构参数。可分为前件网络参数和后件网络参数 。l前件网络参数前件网络相当于模糊规则的前件,共有四层结构。l输入层节点数。输入层节点与输入向量直接连接,输入层神经元节点数就是系统的输入向量
25、维数,如对数据集进行特征选取后,得到包含10个特征的数据,则输入层的节点数为10。 2007-03-07哈尔滨理工大学网络信息中心47T-S FNN应用于入侵检测数据分析l前件网络参数l语言层(中间层1)神经元数l中间层1的每个节点代表一个语言值。语言层(中间层1)神经元数主要和每一个输入节点所划分的模糊子集的个数有关。针对普通数值型属性,我们将其划分为3个模糊子集,High,Middle,Low。而对于进行了字符数值化处理的属性,考虑到其字段含义清晰,并没有模糊性,我们按该属性原来的类型数进行划分模糊子集。例如,在进行字符型属性数值化时我们分别用1,2,3,4代表IP首部的协议类型:ICMP
26、,IGMP,TCP,UDP。则对协议类型这一属性,我们划分为4个模糊子集,分别代表这4类协议类型。2007-03-07哈尔滨理工大学网络信息中心48T-S FNN应用于入侵检测数据分析l前件网络参数l模糊推理层神经元数目l该层的每个节点代表一条模糊规则,它的作用是用来匹配模糊规则的前件,计算出每条规则的适用度。神经元数目即为本模型最后生成的模糊规则的条数。这里我们采用全相联规则集,即与输入特征相关的所有规则。其神经元数目等于语言层中所有模糊子集划分数的乘积。 2007-03-07哈尔滨理工大学网络信息中心49T-S FNN应用于入侵检测数据分析l前件网络参数l归一化层节点数l该层用于归一化每条
27、规则的激励强度。节点数与前一层相同。l输出层神经元节点数l输出层神经元节点数就是系统目标个数,这里只需要1个输入层神经元,用以计算前件网络规则输出值与后件网络输出的累积和。2007-03-07哈尔滨理工大学网络信息中心50T-S FNN应用于入侵检测数据分析l后件网络参数l子网络个数l后件网络可以由r个结构相同的并列子网络所组成,一个子网络对应产生一个输出量。这里我们只需要1个子网络。l子网络第一层节点数l子网络的第一层是输入层,它将输入变量传送到第二层。输入层中第0个节点的输入值x0=1,它的作用是提供模糊规则后件中的常数项。所以该层节点数为n+1,n是输入向量维数。2007-03-07哈尔
28、滨理工大学网络信息中心51T-S FNN应用于入侵检测数据分析l后件网络参数l子网络第二层节点数l子网络的每个节点是有节点函数的自适应节点,每个节点代表一个规则。该层的作用是计算每一个规则的后件。该层节点数等于前件网络的模糊推理层神经元数。l子网络的第三层也就是输出层l计算系统的输出,只有一个神经元节点。2007-03-07哈尔滨理工大学网络信息中心52总结l这次报告主要是关于课题研究工作的内容l简要介绍了基于一种模糊神经网络基于T-S模型的模糊神经网络,说明了它的数学原理和网络结构。l阐述了如何将BP算法的原理运用到T-S型模糊神经网络中来,推导出该网络模糊参数的学习算法。2007-03-07哈尔滨理工大学网络信息中心53总结l给出了对传统的遗传算法的改进方法,通过采用实数编码、自适应交叉率和自适应变异率的方法,提高算法的效率,用以训练后件网络的连接权参数。l将T-S FNN应用于入侵检测研究,针对KDDC- up99数据集, 运用属性相关度分析进行特征选取,并进行对数归一化处理。最后对T-S FNN的网络结构参数进行设置。2007-03-07哈尔滨理工大学网络信息中心54谢谢!
侵权处理QQ:3464097650--上传资料QQ:3464097650
【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。