实验二 神经网络及其应用
一、实验目的
1、掌握人工神经网络的基本概念;
2、掌握 BP 神经网络的基本原理及其应用
3、理解 BP 网络信号正向传播和误差反向传递过程;
4、熟悉 MATLAB 或 Python 等软件的使用方法;
二、实验原理
传统的感知器和线性神经网络有自身无法克服的缺陷,它们都不能解决线性
不可分问题,因此在实际应用过程中受到了限制。而 BP 网络却拥有良好的繁泛
化能力、容错能力以及非线性映射能力。因此成为应用最为广泛的一种神经网络。
BP 算法的基本思想是把学习过程分为两个阶段:第一阶段是信号的正向传播过
程;输入信息通过输入层、隐层逐层处理并计算每个单元的实际输出值;第二阶
段是误差的反向传递过程;若在输入层未能得到期望的输出值,则逐层递归的计
算实际输出和期望输出的差值(即误差),以便根据此差值调节权值。这种过程
不断迭代,最后使得信号误差达到允许或规定的范围之内。
BP 算法的数学描述:三层 BP 前馈网络的数学模型如图 1 示。三层前馈网中,
输入向量为:
T
ni
xxxxX ),...,,...,,(
21
;隐层输入向量为:
T
mj
yyyyY ),...,...,,(
21
;
输 出 层 输 出 向 量 为 :
T
lk
ooooO ),...,...,,(
21
; 期 望 输 出 向 量 为 :
T
lk
ddddd ),...,...,(
21
。 输 入 层 到 隐 层 之 间 的 权 值 矩 阵 用 V 表示,
Y
mj
vvvvV ),...,...,(
21
,其中列向量
j
v
为隐层第 j 个神经元对应的权向量;隐层到
输出层之间的权值矩阵用 W 表示,
),...,...,(
21 lk
wwwwW
,其中列向量
k
w
为输出
层第 k 个神经元对应的权向量。
图 1 三层 BP 神经网络模型示意图
下面分析各层信号之间的数学关系。
对于输出层,有
mjxvnet
mjnetfy
iijj
jj
,...,2,1,
,...,2,1),(