人工神经网络蠕虫的分类问题Word文档格式.docx

上传人:b****1 文档编号:14250895 上传时间:2022-10-20 格式:DOCX 页数:24 大小:373.17KB
下载 相关 举报
人工神经网络蠕虫的分类问题Word文档格式.docx_第1页
第1页 / 共24页
人工神经网络蠕虫的分类问题Word文档格式.docx_第2页
第2页 / 共24页
人工神经网络蠕虫的分类问题Word文档格式.docx_第3页
第3页 / 共24页
人工神经网络蠕虫的分类问题Word文档格式.docx_第4页
第4页 / 共24页
人工神经网络蠕虫的分类问题Word文档格式.docx_第5页
第5页 / 共24页
点击查看更多>>
下载资源
资源描述

人工神经网络蠕虫的分类问题Word文档格式.docx

《人工神经网络蠕虫的分类问题Word文档格式.docx》由会员分享,可在线阅读,更多相关《人工神经网络蠕虫的分类问题Word文档格式.docx(24页珍藏版)》请在冰豆网上搜索。

人工神经网络蠕虫的分类问题Word文档格式.docx

本问题要求根据已知资料(9支

)。

今后,我们将9支

及6支

的数据集合称之为学习样本。

基于已知的资料可以建立多层前馈网络模型对蠕虫进行分类,利用已知的测量数据该模型可以进行学习过程,得到一组恰当的权值,使网络具有特定的分类功能;

可以利用问题一建立的多层前馈网络模型对给定的3个样本进行分类。

三、符号说明

表示一个确定的已知样品标号

:

当第

个样品的原始数据输入网络时,相应的输出单元状态

个样品的原始数据输入网络时,相应的隐单元状态

个样品的原始数据输入网络时,相应的输入单元状态

从中间层到输出层的权

从输入层到中间层的权

四、模型的建立与求解

4.1模型的建立

4.1.1人工神经元模型

图1表示出了作为人工神经网络(artificialneuralnetwork,以下简称

)的基本单元的神经元模型,它有三个基本要素:

图1神经元模型

(i)一组连接(对应于生物神经元的突触),连接强度由各连接上的权值表示,权值为正表示激活,为负表示抑制。

(ii)一个求和单元,用于求取各输入信号的加权和(线性组合)。

(iii)一个非线性激活函数,起非线性映射作用并将神经元输出幅度限制在一定范围内(一般限制在(0,1)或(-1,1)之间)。

此外还有一个阈值

(或偏置

以上作用可分别以数学式表达出来:

式中

为输入信号,

为神经元

权值,

为线性组合结果,

为阈值,

为激活函数,

的输出。

若把输入的维数增加一维,则可把阈值

包括进去。

例如

此处增加了一个新的连接,其输入为

权值为

(或

),如图2所示。

图2神经元模型

激活函数

可以有以下几种:

(i)阈值函数

即阶梯函数。

这时相应的输出

其中

,常称此种神经元为

模型。

(ii)分段线性函数

它类似于一个放大系数为1的非线性放大器,当工作于线性区时它是一个线性组合器放大系数趋于无穷大时变成一个阈值单元。

(iii)sigmoid函数

最常用的函数形式为

参数

可控制其斜率。

另一种常用的是双曲正切函数

这类函数具有平滑和渐近性,并保持单调性。

双曲正弦函数:

;

双曲余弦函数:

双曲正切函数:

双曲余切函数:

 

4.1.2网络结构及工作方式

除单元特性外,网络的拓扑结构也是

的一个重要特性。

从连接方式看

主要有两种。

(i)前馈型网络

各神经元接受前一层的输入,并输出给下一层,没有反馈。

结点分为两类,即输入单元和计算单元,每一计算单元可有任意个输入,但只有一个输出(它可耦合到任意多个其它结点作为其输入)。

通常前馈网络可分为不同的层,第

层的输入只与第

层输出相连,输入和输出结点与外界相连,而其它中间层则称为隐层。

(ii)反馈型网络

所有结点都是计算单元,同时也可接受输入,并向外界输出。

NN的工作过程主要分为两个阶段:

第一个阶段是学习期,此时各计算单元状态不变,各连线上的权值可通过学习来修改;

第二阶段是工作期,此时各连接权固定,计算元状态变化,以达到某种稳定状态。

从作用效果看,前馈网络主要是函数映射,可用于模式识别和函数逼近。

反馈网络按对能量函数的极小点的利用来分类有两种:

第一类是能量函数的所有极小点都起作用,这一类主要用作各种联想存储器;

第二类只利用全局极小点,它主要用于求解最优化问题。

4.1.3多层前馈网络

图3多层前馈网络

为解决上述问题,考虑一个其结构如图3所示的人工神经网络,激活函数由

来决定。

图中最下面单元,即由•所示的一层称为输入层,用以输入已知测量值。

在本问题中,它只需包括两个单元,一个用以输入触角长度,一个用以输入翅膀长度。

中间一层称为处理层或隐单元层,单元个数适当选取,在本问题中,取三个就足够了。

最上面一层称为输出层,在本问题中只包含二个单元,用以输出与每一组输入数据相对应的分类信息.任何一个中间层单元接受所有输入单元传来的信号,并把处理后的结果传向每一个输出单元,供输出层再次加工,同层的神经元彼此不相联接,输入与输出单元之间也没有直接联接。

这样,除了神经元的形式定义外,我们又给出了网络结构,其中只有中间层及输出层的单元才对信号进行处理;

输入层的单元对输入数据没有任何加工。

在蠓虫分类问题中,

分别表示学习样本中的15个样品;

当将第

个样品的原始数据输入网络时,相应的输出单元状态为

,隐单元状态为

,输入单元取值为

如果

均已给定,那么,对应于任何一组确定的输入

,网络中所有单元的取值不难确定。

事实上,对样品

而言,隐单元

的输入是

相应的输出状态是

由此,输出单元

所接收到的迭加信号是

网络的最终输出是

这里,没有考虑阈值,正如前面已经说明的那样,这一点是无关紧要的。

还应指出的是,对于任何一组确定的输入,输出是所有权

的函数。

如果我们能够选定一组适当的权值

,使得对应于学习样本中任何一组Af样品的输入

,输出

,对应于Apf的输入数据,输出为

那么蠓虫分类问题实际上就解决了。

因为,对于任何一个未知类别的样品,只要将其触角及翅膀长度输入网络,视其输出模式靠近

亦或

,就可能判断其归属。

当然,有可能出现介于中间无法判断的情况。

现在的问题是,如何找到一组适当的权值,实现上面所设想的网络功能。

4.1.4向后传播算法

如前所述,我们希望对应于学习样本中Af样品的输出是

,对应于Apf的输出是

,这样的输出称之为理想输出。

实际上要精确地作到这一点是不可能的,只能希望实际输出尽可能地接近理想输出。

为清楚起见,把对应于样品

的理想输出记为

,那么

度量了在一组给定的权下,实际输出与理想输出的差异,由此,寻找一组恰当的权的问题,自然地归结为求适当

的值,使

达到极小的问题。

这里,

将式(8)代入(9),有

易知,对每一个变量

而言,这是一个连续可微的非线性函数,为了求得其极小点与极小值,最为方便的就是使用最速下降法。

4.1.5最速下降法

最速下降法是一种迭代算法,为求出

的(局部)极小,它从一个任取的初始点

出发,

计算在

点的负梯度方向

这是函数在该点下降最快的方向;

只要

,就可沿该方向移动一小段距离,达到一个新的点

是一个参数,只要

足够小,定能保证

不断重复这一过程,一定能达到

的一个(局部)极小点。

这一算法的具体形式如下:

对于隐单元到输出单元的权

而言,最速下降法给出的每一步的修正量是

此处令

对输入单元到隐单元的权

此处

由(11)和(13)式可以看出,所有权的修正量都有如下形式,即

指标

对应于两个单元中输出信号的一端,

对应于输入信号的一端,

或者代表

利用这一迭代算法,最终生成在一定精度内满足要求的

的过程,称为人工神经网络的学习过程。

可以看出,这里所提供的学习机制是元与元之间权的不断调整,学习样本中任何一个样品所提供的信息,最终将包含在网络的每一个权之中。

参数

的大小则反映了学习效率。

[这里要啰嗦一下:

通过上述公式的计算可得

的值为

下面利用

的值计算

的值.公式如下:

其中

如此下去,便有序列

满足:

.由单调有界定理得:

极限

存在.注意到:

表示连接权重向量,所以序列

是有界序列,于是

有收敛子列

,记

,从而有

易见,

这表明:

是序列

的最小值点。

这时,我们便认定

局部极小值点。

上述理论分析告诉我们:

使用最速下降法可以在一定精度内获得满足要求的

.这意味着人工神经网络训练结束,我们已经建立了可以应用的人工神经网络。

理论分析也告诉我们:

(1)

的值依赖于初始值

(2)

的值未必是全局最优解;

(3)序列

收敛于

的速度很慢,从而需要迭代很多次,原因在于学习效率

的值要确保

严格单调递减,从而不能取得太大。

]

4.2模型的求解

对上述模型,编写的Matlab程序如下:

clearall

closeall

clc

p1=[1.24,1.72;

1.36,1.74;

1.38,1.64;

1.38,1.82;

1.38,1.90;

1.40,1.70;

1.49,1.82;

1.54,1.82;

1.56,2.08];

p2=[1.14,1.78;

1.18,1.96;

1.20,1.86;

1.26,2.00;

1.28,2.00;

1.30,1.96];

p=[p1;

p2]'

pr=minmax(p);

goal=[ones(1,9),zeros(1,6);

zeros(1,9),ones(1,6)];

plotpv(p,goal(1,:

))

%plot(p1(:

1),p1(:

2),'

h'

p2(:

1),p2(:

o'

net=newff(pr,[3,2],{'

logsig'

'

});

net.trainParam.show=10;

net.trainParam.lr=0.05;

net.trainParam.goal=1e-10;

net.trainParam.epochs=50000;

net=train(net,p,goal);

x=[1.241.80;

1.281.84;

1.402.04]'

y0=sim(net,p)

y=sim(net,x)

最优初始值和阀值:

X=-0.26735-0.362170.00342130.36022-0.4130.045455-0.498040.0933530.36217-0.0180840.0738030.49511-0.41496-0.0239490.11486-0.099218-0.037634

最小误差err=0.010829

1.使用随机权值与阀值

测试样本预测的结果:

测试样

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 工作范文 > 制度规范

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1