《人工神经网络理论及应用》章节习题答案

目录

第1章 绪论 

第2章 人工神经网络建模基础

第3章 感知器神经网络


第1章 绪论 

1.1 根据自己的体会,列举人脑与计算机信息处理能力有哪些不同。

:电脑仅仅只能按人给定的程序进行简单的逻辑运算,尽管电脑的运算速度非常快,这种速度虽然人无法冀及;但电脑无论如何无法在没有预定程序的前提下工作,换言之电脑是没有思维功能的;先进的电脑或许有简单的(相对于人脑)逻辑思维功能,但那也是人脑通过无数的赋值程序赋于的。电脑或许能按照人赋于的程序造出人脑,但它绝对不可能不受人脑编制的程序控制(或间接或直接)。电脑只能代替人脑的一小部分简单的逻辑运算,它无法代替人进行创造性思维。

1.2 神经网络的功能特点是由什么决定的?

:神经网络的功能特点决定性因素可以从结构和能力两方面来看:结构方面处理单元的高度并行性与分布性、能力方面神经网络能通过自动调整网络结构参数使得对于给定输入能产生期望的输出。

1.3 根据人工神经网络的特点,你认为它善于解决哪类问题?

:神经网络的基本特点可以分为结构、性能和能力 3 个方面:信息处理的并行性、信息存储的分布性、信息处理单元的互联性、结构可塑性;高度的非线性、量哈奥的容错性和计算的非精确性;自学习、自组织与自适应性。根据人工神经网络的特点,它的主要应用领域有信息处理领域(包括信号处理、模式识别、数据压缩)、自动化领域(包括系统辨识、神经控制器、智能检测)、工程领域(包括汽车工程、军事工程、化学工程、水利工程)、医学领域(包括检测数据分析、生物活性研究、医学专家系统)、经济领域(包括在微观经济邻域的应用、在宏观经济领域的应用、在证券市场的应用、在金融领域的应用、在社会经济发展评价和辅助决策中的应用)等。

1.4 神经网络研究在 20 世纪 70 ~ 80 年代处于低潮的主要原因是什么?

:一方面,1969 年发表的轰动一时的评论人工神经网络的书中的悲观论点极大地影响了当时的人工神经网络研究:简单的神经网络只能运用于线性问题的求解,能够求解非线性问题的网络应具有隐层,而从理论上还不能证明将感知机模型扩展到多层网络是有意义的;另一方面,也是更重要的原因是 20 世纪 70 年代以来集成电路和微电子技术的迅猛发展,使传统的 Von\: \: Neumenn 型计算机进入发展的全盛时期,基于逻辑符号处理方法的人工智能得到迅速发展并取得显著成就,他们问题和局限性尚未暴露,因此暂时掩盖了发展新型计算机和寻求新的神经网络的必要性和迫切性。

1.5 神经网咯研究在 20 世纪 80 年代中期复兴的动力是什么?

1982 年,物理学家 John.J,Hopfield 提出了 Hopfield 网络;1986 年,贝尔实验室利用 Hopfield 理论在硅片上制成了硬件计算机网络;1988 年,《并行分布式处理》一书发展了多层感知机的反向传播训练方法。

1.6 深度学习为神经网络的发展带来哪些变化?

:深度学习的概念源于人工神经网络的研究。含多隐层的多层感知机就是一种深度学习结构。深度学习通过组合低层特征形成更加抽象的高层表示属性类别或特征,以发现数据的分布式特征表示。深度学习的概念由 Hinton 等人于 2006 年提出。基于深度置信网络(DBN)提出非监督贪心逐层训练算法,为解决深层结构相关的优化难题带来了希望,随后提出多层自编码器的深层结构。此外 Lecun 等人提出的卷积神经网络是第一个真正多层结构学习算法,它利用空间相对关系减少参数数目以提高训练性能。深度学习是机器学习的一个新的领域,其动机在于建立、模拟人脑进行分析学习的神经网络,它模仿人脑的机制来解释数据,如图像,声音和文本。

第2章 人工神经网络建模基础

2.1 人工神经元模型是如何体现生物神经元的结构和信息处理机制的?

:神经元及其突触是神经网络的基本器件。因此,人工神经元模型模拟生物神经网络是从以下三个方面进行模拟体现的:①人工神经元(节点)本身的信息处理能力【数学模型】;②人工神经元(节点)与人工神经元(节点)之间连接【拓扑结构】;③相互连接的强度【通过学习来调整】。这三方面也是决定人工神经网络整体性能的三大要素。

2.2 若权值只能按 1-1 变化,对神经元的学习有何影响?试举例说明。

:若权值只能按 1-1 变化可能会导致整合之后出现输入和输出正负一致进而使得权值无约束增长。这是因为只按照 1-1 变化说明突触的连接强度只有一种,这对于生物神经元当中突触连接强度是不同的这一特点没有进行完整的描述。

2.3 举例说明什么是有导师学习和无导师学习?

:有导师学习也称为监督学习,在学习训练过程中需要不断给网络提供一个输入模式和一个期望网络正确输出的模式,称为“教师信号”,网络在能执行工作任务之前必须先经过学习,当网络对于各种给定的输入均能产生所期望的输出时,即认为网络已经在导师的训练下“学会”了训练数据及中包含的知识和规则,可以用来进行工作了。无导师学习也称为无监督学习,学习过程中,需要不断地给网络提供动态输入信息,网络能根据特有的内部结构和学习规则,在输入信息流中发现任何可能存在的模式和规律,同时能根据网络的功能和输入信息调整权值,其结果是使网络能对属于同一类的模式进行自动分类。在有导师学习中,提供给神经网络学习的外部知道信息越多,神经网络学会并掌握的知识越多,解决问题的能力也越强。但是,有时神经网络所解决的问题的先验信息很少,甚至没有,这种情况下无导师学习就显得更有实际意义。

2.4 双输入单输出神经网络,初始权向量 W(0)=(1,-1)^{T},学习率 \eta =14 个输入向量为 X^{1}=(1,-2)^{T}X^{2}=(0,1)^{T}X^{3}=(2,3)^{T}X^{4}=(1,1)^{T},对以下两种情况求 Hebbian 学习规则第四步训练后的权向量:
①神经元采用离散型变换函数 f(net)=sgn(net)
②神经元采用双极性连续型变换函数 f(net)=\frac{1-e^{-net}}{1+e^{-net}}

:①当神经元采用离散型变换函数 f(net)=sgn(net),权值调整步骤为
           输入第一个样本 X^{1},计算净输入 net^{1},并调整权向量 W(1)
                    net^{1}=W(0)^{T}X^{1}=(1,-1)(1,-2)^{T}=3
                    W(1)=W(0)+\eta sgn(net^{1})X^{1}=(1,-1)^{T}+(1,-2)^{T}=(2,-3)^{T}
           输入第二个样本 X^{2},计算净输入 net^{2},并调整权向量 W(2)
                    net^{2}=W(1)^{T}X^{2}=(2,-3)(0,1)^{T}=-3
                    W(2)=W(1)+\eta sgn(net^{2})X^{2}=(2,-3)^{T}+(0,-1)^{T}=(2,-4)^{T}
           输入第三个样本 X^{3},计算净输入 net^{3},并调整权向量 W(3)
                    net^{3}=W(2)^{T}X^{3}=(2,-4)(2,3)^{T}=-8
                    W(3)=W(2)+\eta sgn(net^{3})X^{3}=(2,-4)^{T}+(-2,-3)^{T}=(0,-7)^{T}
           输入第四个样本 X^{4},计算净输入 net^{4},并调整权向量 W(4)
                    net^{4}=W(3)^{T}X^{4}=(0,-7)(1,1)^{T}=-7
                    W(4)=W(3)+\eta sgn(net^{4})X^{4}=(0,-7)^{T}+(-1,-1)^{T}=(-1,-8)^{T}
          可见,当变换函数为符号函数且 \eta =1 时,Hebbian 学习规则的权值调整将简化为权向量加或减输入向量。
          ②当神经元采用双极性连续型变换函数 f(net)=\frac{1-e^{-net}}{1+e^{-net}},权值调整步骤同上
                     net^{1}=W(0)^{T}X^{1}=3
                     o^{1}=f(net^{1})=\frac{1-e^{-net}}{1+e^{-net}}=0.905
                     W(1)=W(0)+\eta f(net^{1})X^{1}=(1,-1)^{T}+(0.905,-1.81)^{T}=(1.905,-2.81)^{T}
                     net^{2}=W(1)^{T}X^{2}=-2.81
                     o^{2}=f(net^{2})=\frac{1-e^{-net}}{1+e^{-net}}=-0.886
                     W(2)=W(1)+\eta f(net^{2})X^{2}=(1.905,-2.81)^{T}+(0,0.886)^{T}=(1.905,-1.294)^{T}
                     net^{3}=W(2)^{T}X^{3}=-0.072
                     o^{3}=f(net^{3})=\frac{1-e^{-net}}{1+e^{-net}}=-0.036
                     W(3)=W(2)+\eta f(net^{3})X^{3}=(1.905,-1.294)^{T}+(-0.072,-0.108)^{T}=(1.833,-1.402)^{T} 
                     net^{4}=W(3)^{T}X^{4}=0.431
                     o^{4}=f(net^{4})=\frac{1-e^{-net}}{1+e^{-net}}=-0.212
                     W(4)=W(3)+\eta f(net^{4})X^{4}=(1.833,-1.402)^{T}+(-0.212,-0.212)^{T}=(1.621,-1.614)^{T}
    比较两种权值调整结果可以看出,两种变换函数下的权重值调整方向是一致的,但采用连续变换函数时,权值调整力度减弱。

2.5 某神经网络的变换函数为符号函数 f(net)=sgn(net),学习率 \eta =1,初始权向量 W(0)=(0,1,0)^{T},两对输入样本为 X^{1}=(2,1,-1)^{T},d^{1}=-1;X^{2}=(0,-1,-1)^{T},d^{2}=1。试用感知器学习规则对以上样本进行反复训练,直到网络输出误差为零,写出每一训练步的净输入 net(t)

:因为该神经元采用离散型变换函数 f(net)=sgn(net),权值调整步骤为
       第一步,输入 X^{1},得
                      net^{1}=W(0)^{T}X^{1}=(0,1,0)(2,1,-1)^{T}=1
                      o^{1}(0)=sgn(1)=1
                      W(1)=W(0)+\eta sgn(net^{1})X^{1}=(0,1,0)^{T}+(2,1,-1)^{T}=(2,2,-1)^{T}
       第二步,输入 X^{2},得
                      net^{2}=W(1)^{T}X^{2}=(2,2,-1)(0,-1,-1)^{T}=-1
                      o^{2}(1)=sgn(-1)=-1
                      W(2)=W(1)+\eta sgn(net^{2})X^{2}=(2,2,-1)^{T}+(0,1,1)^{T}=(2,3,0)^{T}
      第一轮结束,由于 d^{p}-o^{p}\neq 0,继续输入 X^{1},得
                      net^{3}=W(2)^{T}X^{1}=(2,3,0)(2,1,-1)^{T}=7
                      o^{3}(2)=sgn(7)=1
                      W(3)=W(2)+\eta sgn(net^{3})X^{1}=(2,3,0)^{T}+(2,1,-1)^{T}=(4,4,-1)^{T}
       第四步,输入 X^{2},得
                      net^{4}=W(3)^{T}X^{2}=(4,4,-1)(0,-1,-1)^{T}=-3
                      o^{4}(3)=sgn(-3)=-1
                      W(4)=W(3)+\eta sgn(net^{4})X^{2}=(4,4,-1)^{T}+(0,1,1)^{T}=(4,5,0)^{T}
       第五步,输入 X^{1},得
                      net^{5}=W(4)^{T}X^{1}=(4,5,0)(2,1,-1)^{T}=13
                      o^{5}(4)=sgn(13)=1
                      W(1)=W(0)+\eta sgn(net^{5})X^{1}=(4,5,0)^{T}+(2,1,-1)^{T}=(6,6,-1)^{T}
       第六步,输入 X^{2},得
                      net^{6}=W(5)^{T}X^{2}=(6,6,-1)(0,-1,-1)^{T}=-5
                      o^{6}(5)=sgn(-5)=-1
                      W(2)=W(1)+\eta sgn(net^{6})X^{2}=(6,6,-1)^{T}+(0,1,1)^{T}=(6,7,0)^{T}
       ……
       多次迭代后,发现始终不能做到实际输出与期望输出误差为零,因为迭代后的值不能收敛。

2.6 某神经网络采用双极性 sigmoid 函数,学习率 \eta =0.25,初始权向量 W(0)=(1,0,1)^{T},两对输入样本为 X^{1}=(2,0,-1)^{T},d^{1}=-1;X^{2}=(1,-2,-1)^{T},d^{1}=1。试用 delta 学习规则进行训练,并写出前两步的训练结果(提示:双极性 sigmoid 函数的导数 f'(net)=1/2(1-o^{2})。)

:该变换函数为双极性连续函数 f(net)=\frac{1-e^{-net}}{1+e^{-net}},前两步的权值调整结果为
      (1)输入样本 X^{1},计算净输入 net^{1} 及权向量 W(1)
                        net^{1}=W(0)^{T}X^{1}=(1,0,1)(2,0,1)^{T}=3
                        o^{1}=f(net^{1})=\frac{1-e^{-net^{1}}}{1+e^{-net^{1}}}=-0.905
                        f'(net^{1})=\frac{1}{2}[1-(o^{1})^{2}]=-0.405
                        W(1)=W(0)+\eta (d^{1}-o^{1})f'(net^{1})X^{1}=(0.002,0,-0.001)^{T}
       (2)输入样本 X^{2},计算净输入 net^{2} 及权向量 W(2)
                        net^{2}=W(1)^{T}X^{2}=(0.002,0,-0.001)(1,-2,-1)^{T}=0.003
                        o^{2}=f(net^{2})=\frac{1-e^{-net^{2}}}{1+e^{-net^{2}}}=-0.001
                        f'(net^{2})=\frac{1}{2}[1-(o^{2})^{2}]=-0.499
                        W(2)=W(1)+\eta (d^{2}-o^{2})f'(net^{2})X^{2}=(-0.123,0.25,0.124)^{T}

2.7 神经网络数据同 2.6 题,试用 Windrow-Hoff学习规则进行训练,并写出前两步训练结果。

:用 Windrow-Hoff学习规则进行训练,前两步训练结果
       第一步权值调整量
                         \Delta W_{1}=\eta (d_{1}-W_{0}^{T}X^{1})X^{1}=0.25\times (-1-1)\times (2,0,-1)^{T}=(-1,0,0.5)^{T}
       则第一步训练后训练结果
                         W(1)=W(0)+\Delta W=(0,0,1.5)^{T}
       第二步权值调整量
                         \Delta W_{2}=\eta (d_{2}-W_{1}^{T}X^{2})X^{2}=0.25\times (1+1.5)\times (1,-2,-1)^{T}=(0.625,-1.25,-0.625)^{T}
       则第二步训练后训练结果
                         W(2)=W(1)+\Delta W=(0.625,-1.25,0.875)^{T}

2.8 上机编程练习,要求程序具有以下功能:
①能对 6 输入单节点网络进行训练;
②能选用不同的学习规则;
③能选用不同的变换函数;
④能选用不同的训练样本。
程序调试通过后,用以上各题提供的数据进行训练。训练时应给出每一步的净输入和权向量调整结果。

第3章 感知器神经网络

3.1 BP 网络有哪些长处和缺陷,试各列举出三条。

BP 网络长处:较强的非线性映射能力、自学习和自适应能力、泛化能力、容错能力;
       BP 网络缺陷:局部极小化问题、收敛速度慢问题、结构选择不一问题、应用实例与网络规模的矛盾问题、预测能力和训练能力的矛盾问题、样本依赖性问题。

3.2 什么是 BP 网络的泛化能力?如何保证 BP 网络具有较好的泛化能力?

:①多层感知器训练后所提取的样本对中的非线性映射关系存储在权值矩阵中,在其后的工作阶段,当向网络输入训练时未曾见过的非样本数据时,网络也能完成由输入空间向输出空间的正确映射。这种能力称为多层感知器的泛化能力,它是衡量多层感知器性能优劣的一个重要方面。②网络的性能好坏主要看其是否具有很好的泛化能力,而对泛化能力的测试不能用训练集的数据进行,要用训练集以外的测试数据来进行检验。在隐节点数一定的情况下,为获得更好的泛化能力,存在着一个最佳训练次数 t_{0},训练时将训练与测试交替进行,每训练一次记录下训练均方误差,然后保持网络权值不变,用测试数据正向运行网络,记录测试均方误差,进而利用两种误差数据得出两条均方误差随训练次数变化的曲线。

3.3 BP 网络擅长解决哪些问题?试举几例。

:①BP 网络用于数据拟合(P70);②BP 网络用于鸢尾花分类问题(P72)

3.4 已知以下样本分属于两类
1 类:X^{1}=(5,1)^{T},X^{2}=(7,3)^{T},X^{3}=(3,2)^{T},X^{4}=(5,4)^{T}
2 类:X^{5}=(0,0)^{T},X^{6}=(-1,-3)^{T},X^{7}=(-2,3)^{T},X^{8}=(-3,0)^{T}
(a)判断两类样本是否线性可分;
(b)试确定一直线,并使该线与两类样本中心连线相垂直;
(c)设计一单节点感知器,如用上述直线方程作为其分类判决方程 net=0,写出感知器的权值与阈值;
(d)用上述感知器对以下 3 个样本进行分类:
                      X=(4,2)^{T},X=(0,5)^{T},X=(\frac{36}{13},0)^{T}

:两类样本在坐标位置如下图所示:

        (a)由上图易得两类样本线性可分;
        (b)确定的直线如上图黄线所示(有无数种,黄线所示是其中一种,但所有直线都与该黄线平行);
        (c)两类样本重心在两簇各样本交差处取得,由两交叉点可确定一条直线,而我们设计的单节点感知器恰与该直线垂直,由基本数学知识求得黄线斜率为 -2.6,事实上,所有能将两类样本分开的直线的斜率均相等,其阈值等于与该直线平行的直线首先与样本点相接的时刻。即感知器的分类线方程为 x_{1}+2.6x_{2}=0 到 x_{1}+2.6x_{w}-9.8=0 均可。回归本题,感知器的权值是w_{1}=1w_{2}=2.6;阈值 T 的范围可以是 [-9.8,0]
        (d)判断新样本所属类别可将新样本代入分类线方程,若值大于 0,则属于 1 类;若值小于 0,则属于 2 类。

 

持续更新中……

猜你喜欢

转载自blog.csdn.net/IT_charge/article/details/108809511