《数据挖掘神经网络BP算法.ppt》由会员分享,可在线阅读,更多相关《数据挖掘神经网络BP算法.ppt(14页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、7.3 神经网络算法7.3.1 神经网络的基本原理 人工神经网络是在研究生物神经系统的启发下发展起来的一种信息处理方法。它模拟生物神经系统结构,由大量处理单元组成非线性自适应动态系统,具有高度非线性的超大规模实践特性,网络的全局作用、大规模并行分布处理及高度的鲁棒性和容错性,有联想记忆、抽象概括和自适应能力,这种抽象概括和自适应能力一般称之为自学能力。工程上用的人工神经元模型如图所示:7.3.2 反向传播模型1.工作原理神经网络模型分为前馈多层式网络模型、反馈递归式网络模型、随机型网络模型等。误差反向传播(Back propagation,简称BP网络),又称为多层前馈神经网络。其模型结构如图
2、7.3所示2.学习过程 BP网络学习过程是一种误差边向后传播边修正权系数的过程,BP算法把网络的学习过程分为正向传播和反向传播两种交替过程。(1)正向传播 输入信息先传到隐藏层的结点上,经过各单元的特性为S型的激活函数运算后,把隐藏层结点的输出信息传到输出结点,最后给出输出结果。(2)反向传播 如果得不到实际的输出,则转入反向传播过程,将误差信号沿原来的连接线路返回,通过修改各层神经元的权值,逐次地向输入层传播进行计算,再经过正向传播过程。这两个过程的反复运用,逐渐使得误差信号最小,网络学习过程就结束。3BP算法BP算法如下。其中,l为学习率;oi为单元i的输出;oj为单元j的输出;Tj为输出
3、层单元j的期望输出;Errj为与隐藏层单元j的误差加权和;wjk为单元j与单元k相连的有向加权边的权重;为改变单元j活性的偏量。输入:训练样本S,学习率l,多层前馈网络。输出:一个训练的、对样本分类的神经网络。方法:(1)初始化网络的权和阈值(2)WHILE终止条件满足(3)FORS中的每个训练样本X(4)FOR隐藏或输出层每个单元j(5);/相对于前一层计算单元j的净输入(6);/计算每个单元j的输出(7)FOR输出层每个单元(8);/计算误差(9)FOR由最后一个到第一个隐藏层,对于隐藏层每个单元j(10);/计算关于下一个较高层k的误差(11)FOR网络中的每一个权(12);(13)FO
4、R网络中每个单元偏量(14)【例7-5】假设训练样本s的属性值为1,0,1,实际类别分别为1,两层前馈神经网络NT如图7.4所示,NT中每条有一向加权边的权重、每个隐藏层与输出层单元的偏置如表7-11所示,学习率为0.9。写出输入S训练NT的过程。首先算出单元4、5、6的输入、输出,具体结果见表7-12,然后计算4、5、6的误差,见表7-13;NT中每条有向加权边的新权重、每个隐藏层与输出层单元的新偏置见表7-14。图7.4两层前馈神经网络表7-11权重、单元的偏置单元j输入Ij输出Oj40.21+0.40+(-0.5)1+(-0.4)=-0.7 1/(l+e-(-0.7)=0.3325(-0
5、.3)l+0.10+0.2 1+0.2=0.11/(l+e-0.1)=0.5256(-0.3)0.332+(-0.2)0.525+0.1=-0.1051/(l+e-(-0.105)=0.474表7-12隐藏层与输出层每个单元的输入、输出表7-13隐藏层与输出层每个单元的误差单元j误 差 60.474(1-0.474)(l-0.474)=0.1311 50.525(l-0.525)(0.1311(-0.2)=-0.006540.332(l-0.332)(0.1311(-0.3)=-0.0087表7-14有向加权边的新权重、每个隐藏层与输出层单元的新偏置W46-0.3+0.90.13110.332
6、=-0.261W56-0.2+0.90.13110.525=-0.138W140.2+0.9(-0.00087)1=0.192W15-0.3+0.9(-0.0065)1=-0.306W240.4+0.9(-0.0087)0=0.4W250.1+0.9(-0.0065)0=0.1W34-0.5+0.9(-0.0087)1=-0.508W350.2+0.9(-0.0065)1=0.19460.1+0.90.1311=0.21850.2+0.9(-0.0065)=0.1944-0.4+0.9(-0.0087)=-0.4087.3.3 定义神经网络拓扑神经网络在开始训练之前,必须确定输人层的单元数、层
7、数,每个隐藏层的单元数和输出层的单元数,以确定网络拓扑结构。如何选取最佳的隐藏层数目,可以参考下面的公式其中,k为样本数,n为输入结点数,m为输出样本,为隐藏层结点数。7.3.4 神经网络工作过程所有神经网络的工作过程主要分两个阶段:工作阶段和学习阶段 (1)工作阶段,此时各连接权值固定,处理单元状态变化,以求达到稳定状态;(2)学习阶段,各处理单元状态保持不变,各连接权值可修改。教师示教学习方式,需要给定一组样本(输入输出数据对),网络根据实际输出与样本的比较,决定连接权的调整方式。无教师示教学习方式,外部不提供正确的输出,网络仅仅是根据其特有的网络结构和学习规则,对属于同一类的模式进行自动分类。