下沙小僧 发表于 2014-8-21 23:43

BP神经网络算法

一个2×3×1的神经网络即输入层有两个节点,隐层含三个节点,输出层有一个节点,神经网络如图示。










1x
e

y
py

2x
ijw
jkw

图1 神经网络结构图
图中ijw)5,4,3;2,1(ji为输入层与隐层的权值,jkw)6;5,4,3(kj为隐层与输出层的权值,1x、2x是神经网络的输入值,y是网络的输出值,py为教师信号,e为神经网络的实际输出与期望输出的误差。在这个神经网络中,节点1,2是输入层,节点3,4,5是隐层,节点6是输出层;输入层和隐层之间的权值依次为252423151413,,,,,wwwwww,隐层和输出层间的权值为564636,,www,下角标为节点的编号;隐层和输出层节点的阈值依次为3,4,5,6。
①前馈计算

设隐层的第j个节点的输入和输出分别为:

NiiijjOwI1

)(jjIfO
其中)(jIf为激励函数
jIjeIf11)(
由于隐层的输出就是输出层的输入,则输出层第k个节点的总输入和输出分别为:

HjjjkkOwI1

)(kkkIfOy
若网络输出与实际输出存在误差,则将误差信号反向传播,并不断地修正权值,直至误差达到要求为止。
②权值调整
1 2 5 4 3 6







2014全国一级建造师资格考试备考资料真题集锦建筑工程经济 建筑工程项目管理 建筑工程法规 专业工程管理与实务


设误差函数定义为:






MkkkpydE12)(21
为了简便,以下计算都是针对每个节点而言,误差函数pE记作E。

输出层权值的调整
权值修正公式为:





jkjkwEw






jkkkwIIE
定义反传误差信号k





为:kkkkkIOOEIE
式中






)(kkkOdOE







)()(kkkkkIfIIfIO

)1((1)[()(kkkkkOOIfIfIf
所以
)(kkkOd)1(kkOO







jHjjjkjkjkkOOwwwI)(1





由此可得输出层的任意神经元权值的修正公式:

jkjkOw






jkkkkjkOOdOOw))(1(                    ( 
隐层权值的调整






ijijwEw






ijjjwIIE






ijOIE









式中






iNiiijijijOOwwwE)(1

由于误差函数E与隐层输入jI不存在直接的函数关系,因此不能直接求得,所以







jjjjIOOEIE







jjMkjkkIIfOIIE)()(1







)()()(11jHjjjkjMkkIfOwOIE

)()(1jMkjkkIfw
隐层的反传误差信号为

MkjkkjiwIf1)(





由此可得,隐层权值的修正公式为;

iMkjkkjijOwIfw)()(1






iMkjkkjjijO








madio 发表于 2014-8-22 09:11

你这是复制的文本吗?看不懂呀
页: [1]
查看完整版本: BP神经网络算法