人工神经网络例题

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1、 什么是 BP 网络的泛化能力如何保证 BP 网络具有较好的泛化能力(5分) 解:

(1)BP 网络训练后将所提取的样本对中的非线性映射关系存储在权值矩阵中,在其后的工作阶段,当向网络输入训练时未曾见过的非样本数据时,网络也能完成由输入空间向输出空间的正确映射。这种能力称为多层感知器的泛化能力,它是衡量多层感知器性能优劣的一个重要方面。

(2)网络的性能好坏主要看其是否具有很好的泛化能力,而对泛化能力的测试不能用训练集的数据进行,要用训练集以外的测试数据来进行检验。在隐节点数一定的情况下,为获得更好的泛化能力,存在着一个最佳训练次数t 0,训练时将训练与测试交替进行,

每训练一次记录一训练均方误差,然后保持网络权值不变,用测试数据正向运行网络,记录测试均方误差,利用两种误差数据得出两条均方误差随训练次数变化的曲线,测试、训练数据均方误差曲线如下图1所示。训练次数t 0称为最佳训练次数,当超过这个训练

次数后,训练误差次数减小而测试误差则开始上升,在此之前停止训练称为训练不足,在此之后称为训练过度。

图1. 测试、训练数据均方误差曲线

2、什么是 LVQ 网络它与 SOM 网络有什么区别和联系(10 分)

解:

(1)学习向量量化(learning vector quantization ,LVQ )网络是在竞争网络结构的基础上提出的,LVQ 将竞争学习思想和监督学习算法相结合,减少计算量和储存量,其特点是网络的输出层采用监督学习算法而隐层采用竞争学习策略,结构是由输入层、竞争层、输出层组成。

(2)在LVQ 网络学习过程中通过教师信号对输入样本的分配类别进行规定,从而克服了自组织网络采用无监督学习算法带来的缺乏分类信息的弱点。自组织映射可以起到聚类的作用,但还不能直接分类和识别,因此这只是自适应解决模式分类问题中的第一步,第二步是学习向量量化,采用有监督方法,在训练中加入教师信号作为分类信息对权值进行细调,并对输出神经元预先指定其类别。

3、设计一个神经网络对图一中的三类线性不可分模式进行分类,期望输出向量分别用(1, -1, -1)T 、 (-1, 1, -1) T 、 (-1, -1, 1) T 代表三类,输入用样本坐标。要 求:

(1) 选择合适的隐节点数;

(2)用 BP 算法训练网络,对图中的 9 个样本进行正确分类。(15 分)

分析:

对于一个BP 神经网络,首先要明确输入,输出, 隐层节点个数。对于本题,输入是点坐标组成的2*9的矩阵,输入节点个数为2,期望输出向量分别用(1, -1, -1)T 、 (-1, 1, -1)T 、 (-1, -1, 1)T 表示,至于隐层节点的个数并没有确切的方法, 根据经验公式α++=l n m (m 为隐层节点数;n 为输入层节点数;l 为输出节点数;α为1~10之间的常数),首先确定隐层节点数为5,逐渐增加隐层节点数量,然后观察其对训练误差的影响,最终选出最合适的隐层节点数量。

点数的情况下达到相同的训练精度所需要的训练次数,当隐层节点数为M=5时,在训练次数为66491时,结果达到训练精度; 当隐层节点数M=7时,在训练次数到达31981时,结果达到训练精度;当隐层节点数M=9时时,在训练次数达到25338时,结果达到训练精度;当隐层节点数M=10时,在训练次数达到20770时,结果达到训练精度;当隐层节点数M=12时,在训练次数达到14052时,结果达到训练精度;当隐层节点数M=14时,在训练次数达到11622时,结果达到训练精度,由此可见,在一定范围内,隐层节点数越多,达到训练精度时所用的训练次数越少,所用训练时间则越少。因此选择隐层节点数为14。

学习率,误差精度在以下,输出结果和导师信号对比,输出结果都为正确,正确率达到100%。具体程序见附件一或者。

4、试设计一个吸引子为X a =(0110) T ,X b =(1001)T 的离散Hopfield 人工神经网络。其权值和阈值在 [-1,1]区间取值,试求权值和阈值。(10 分)

解:

吸引子的分布是由网络的权值(包括阈值)决定的,设计吸引子的核心就是如何设计一组合适的权值。为了使所设计的权值满足要求,权值矩阵应符合以下要求: (a) 为保证异步方式工作时网络收敛,W 应为对称阵。

(b) 为保证同步方式工作时网络收敛,W 应为非负定对称阵。

(c) 保证给定的样本是网络的吸引子,并且要有一定的吸引域。

具体设计时,这里采用了联立方程法:

以 4 节点 DHNN 为例,说明权值设计的联立方程法。

考虑到w ij = w ji ,w ii = 0,对稳态x(t +1) = x(t)。

对于状态 X a = (1001)T ,各节点净输入应满足:

net1=w 12×0+w 13×0+w 14×1T1=w 14T1>0 (1)

net2=w 12×1+w 23×0+w 24×1T2=w 12+w 24T2<0 (2)

net3=w 13×1+w 23×0+w 34×1T3=w 13+w 34T3<0 (3)

net4=w 14×1+w 24×0+w 34×0–T4=w 14–T4>0 (4)

对于 X b = (0110)T 状态,各节点净输入应满足:

net1=w 12×1+w 13×1+w 14×0T1=w 12+w 13T1<0 (5)

net2=w 12×0+w 23×1+w 24×0T2=w 23T2>0 (6)

net3=w 13×0+w 23×1+w 34×0T3=w 23T3>0 (7)

net4=w 14×0+w 24×1+w 34 ×1–T4=w 24+w 34–T4<0 (8)

联立以上8项不等式,可求出未知量的允许取值范围。如取w

14

=,则由式(1)

有 -1≤T

1<,取T

1

= ;则由式(4)有 -1≤T

4

<,取T

4

= ;取w

12

=,由式(5),有 -1≤

w

13< ,取w

13

= ;取w

24

=由式(2),

2≤1,取T

2

= ;由式(6),有 < w

23

≤1,取w

23

= ;由式(7),

有1 ≤ T

3 < ,取T

3

= ;由式(3,8),有-1 < w

34

≤,取w

34

=。

可以验证,利用这组参数构成的 DHNN网对于任何初态最终都将演变到两吸引子 X a=(1001)T和X b=(0110)T。

整理权值与阈值为:

5、下面给出的训练集由玩具兔和玩具熊组成。输入样本向量的第一个分量代表

玩具的重量,第二个分量代表玩具耳朵的长度,教师信号为-1表示玩具兔,

教师信号为1表示玩具熊。

(1)用 matlab 训练一个感知器,求解此分类问题。(需附上 matlab 程序)

(2)用输入样本对所训练的感知器进行验证。(15 分)

分析:

对于本题,输入是样本组成的2*8的矩阵,输入节点个数为2,输出由导师信号可知分为两类。两个输入分量在几何上构成一个二维平面,输入样本可以用该平面上的一个点表示,玩具重量和长度在坐标中标出,可以看出明显分布在两个区域,可以用一条线分开分为两类,在线上方的输出结果应大于0,在线下方的输出结果应小于0。

权向量为2*9的矩阵,输入的第一个权向量权值赋予较小的非零随机数,每一个新的权向量都由上一个权向量调整,下一次循环第1个权向量由第9个权向量来调整。对于这样的样本线性可分,经过几次调整后就稳定到一个权向量,将样本正确分类的权向量不是唯一的。具体程序见附件二或者。输出分类结果如下图所示。

附件一:

第三题程序

clear all;

%%BP算法初始化

D=[1,-1,-1; 1,-1,-1; 1,-1,-1; -1,1,-1; -1,1,-1; -1,1,-1; -1,-1,1; -1,-1,1; -1,-1,1]';

X=[,; ,; ,; ,; ,; ,; ,; ,; ,]';

[N,n]=size(X);

[L,Pd]=size(D);

%M=ceil(sqrt(N*L))+7;ceil函数为正无穷方向取整

m=14; %隐层节点数

%初始化权矩阵

%输入层到隐层权矩阵

相关文档
最新文档