-
第一章
前向神经网络
一、感知器
1
、感知器网络结构
设网络输入模式向量为:
对应的输出为:
连接权向量为:
2
、感知器的学习
?
初始化
连接权向量及输出单元的阈值赋予
(-1
,
+1)
区间内的随机值,一般为较小的随机
非零值。
?
连接权的修正
每个输入模式作如下计算:
(
a
)计算网络输出:
(
b
p>
)计算输出层单元希望输出与实际输出
y
之
间的误差:
(
c
)修正各单元与输出层之间的连接权与阈值:
?
对
m
p>
个输入模式重复步骤,直到误差
d
k
(k
=
1
,
2
,…,
m)
趋于零或小于预
先给定的误差限
ε。
3
、感知器的图形解释
?
整个学习和记忆过程,就是根据实
际输出与希望输出之间的误差调整参数
w
和
θ,即调整截割平面的空间位置使之不断移动,直到它能将两类模式恰当
划分的过程
。
?
学习过程可看作是由式
决定的
n
维超平面不断向正确划分输入模式的位置
移动的过程。
4
、感知器的局限性
?
两层感知器只能解决线性可分问题
?
增强分类能力的唯一出路是采用多
层网络,
即在输入及输出层之间加上隐层
构成多层前馈网络。<
/p>
?
Kolm
ogorov
理论经过严格的数学证明:双隐层感知器足以解决任何复杂的
分类问题。
?
简单的感知器学习过程已不能用于多层感知器,必须改进学习过程。
p>
二、
BP
神经网络
1
、反向传播神经网络
1)
误差逆传播神经网络是一种具有三层或三层以上的阶层型
神经网络:
?
上、下层之间各神经元实现全连接,即下层的每一个单元与上层的每个单元
都实现权
连接;
?
而每层各神经元之间无连接;
?
网络按有监督的方式进行学习。
2)
?
当一对
学习模式提供给网络后,神经元的激活值,从输入层经各中间层向输
出层传播,在输出层
的各神经元获得网络的输入响应。
?
在这之后,按减小希望输出与实际输出误差的方向,从输出层经各中间层逐
层修正各连接权,最后回到输入层,故得名“误差逆传播算法”。
?
随着这种误差逆传播修正的不断进
行,
网络对输入模式响应的正确率也不断
上升。
2
、梯度下降法
1
)梯度法是一种对某个准则函数的迭代寻优算法。设
< br>J(a)
是准则函数,
a
为一向
量
,
?
J
p>
(
a
k
)
是
J
(
a
k
)
在点
a
k
的梯度,
为一向量,
其方向
是
J(a )
增长最快的方向;
负
p>
梯度方向.则是
J(a
)
减少最快的方向。沿负梯度方向走,可最快地达到最小点。
梯度下降法是求函数
极小值的选代算法。
2
)一般迭代算法:
可表示为:
3
)梯度下降法的不足:
该算法相邻两次迭代的搜索方向总是正交的,即
这说明梯度下降法酌迭代在向极小点靠近的过程中,走的是曲
折的路径。
3
、反向传播学习算法
1
)多层前馈网络学习的反向传播
(
或称
BP)
算法:
设在第
n
次迭代中输出端的第
< br>j
个单元的输出为
y
j
(
n
)
,则该单元的误
差信号定
义为
1
单元
j
的平方误差为
e
j
2
(
n
)
,
则输出端总的平方误差
的瞬时值为
2
令单元
j
的净输入为
p
为加到单元
j
上输入的个数,则有
求
?
(
n
)
对
w
ji
的梯度
负号表示修正量按梯度下降方向,其中
称为
局部梯度
下面分两种情况讨论:
(
1
)单元
j
是一个输出单
元,则
(
2
)单元
j
是隐单元
当
k
为输出单元时有
将此式对
y
j
(
n
)
求导
其中<
/p>
q
为单元
k
的输
入端个数。该式对
y
j
(
n
)
求导,得
根据以
上推导,权值
w
ji
的修正量可表示为
?
p>
j
(
n
)
的计算有两种情况:
2
)在实际应用中,学习时要输入训
练样本,每输一次全部训练样本称为一个训
练周期。
3
)用
BP
算法训练网
络时有两种方式:
?
单样本训练:每输入一个样本修改一次权值。
问题:整个训练次数增加,收敛速度过慢。
?
批训练或周期训练:
待组成一个训练周期的全部样本都依次输入后计算总的
平均误差,再修改权值
。
特点:保证总误差向减小方向变化,收敛速度快。
4
、几点说明
1)
BP
网络结构
?
网络层数
理论分析表明:
具有单隐层的前馈网络可以映射所有的连续函数
,
只有学习不连
续函数(如锯齿波等)时,才需要两个隐层。<
/p>
?
神经元数目
?
网络的输入层节点数和输出节点数可以确定。
?
在结构实现上,
< br>通过一个隐含层增加其神经元个数获得的网络训练精度的提
高比增加更多的隐含层
简单得多;
对于增加隐节点数仍不能明显降低训练误
差时,才考
虑增加隐层数。
?
采用两个隐层时,
第一个隐层设置较多的隐节点而第二个隐层设置较少的隐
p>
节点,有利于改善多层前馈网络的性能。
?
激活函数
?
根据反向传播算法的推导,要求激
活函数的一阶导数存在。一般情况下采用
S
型
< br>(Logistic)
函数作为反传网络的激活函数。
?
S
型函数
中用的最多的有两个:
Sigmoid
函数和
< br>tanh
函数。
?
Sigmoid
< br>函数的表达式为:
f
(
x
)
?
1
?
x
1
p>
?
e
1
?
e
p>
?
x
?
tanh
函数的表达式为:
f
< br>(
x
)
?
1
?
e
?
x
?
通常
BP
神经网络在训练之前会对数据归一化处理,即将数据映射到更小的
区间内,比如
[0,1]
或
[-1,
1]
。
2)
BP
网络的学习方法
?
初始权值的选取
网络权值的初始化决
定了网络的训练从哪一点开始,
初始权值的选取对于能够收
敛、
学习达到局部最小以及训练时间长短至关重要。
一般可将权值初始化为
< br>[0
,
1]
或
< br>[-1
,
1]
的随机数。
?
学习速率
决定每一次循环训练中所产
生的权值变化量。一般来说
,
要根据实验或经验来确
定,还没有一个理论指导。
?
选取太大,可能导致系统的不稳定,可能出现麻痹现象。
p>
操作在
S
型函数的饱和区,
其导数非常小,
随之加权修正量也非常小,
若当激活<
/p>
函数的导数趋于零,
误差趋于零,
结果使
得加权修正量趋于零,
这就相当于调节
过程几乎停顿下来。
p>
?
选取太小,导致收敛很慢,增加了训练时间。
?
一般情况下,倾向于选取较小的学
习速率以保证系统稳定性。选取范围:
-
-
-
-
-
-
-
-
-
上一篇:丹佛斯VLT基本参数设置
下一篇:MLA论文格式要求