您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 项目/工程管理 > BP神经网络解决蚊子分类问题
一、问题描述:蚊子的分类问题。二、BP神经网络的标准学习算法:正向传播:输入样本---输入层---各隐层---输出层判断是否转入反向传播阶段:若输出层的实际输出与期望的输出不符。误差反传误差以某种形式在各层表示----修正各层单元的权值。网络输出的误差减少到可接受的程度或达到预先设定的学习次数为止。三、解决过程:1、训练样本已知的两类蚊子的数据如下图:确定模型输入/输出结构:两输入、单输出输入数据有15个,即p=1,2,……,15;j=1,2;对应15个输出。建模:(输入层、中间层、输出层、每层应选取多少个元素?)建立神经网络规定目标为:当t(1)=0.9时表示属于Apf类,当t(2)=0.1时表示属于Af类。2、具体训练步骤如下:令p=0,p为样本编号(1)网络初始化给各连接权值分别赋一个区间(0,1)内的随机数,设定误差函数E,给定计算精度值和最大学习次数M。(2)根据输入数据计算网络输出同理,输出神经元))1(exp(11)1()(),1()1(2231122uajajwuj(3)训练输出单元的权值PS:利用输出层各神经元的误差项&2(1)和隐含层各神经元的输出来修正权值。)3,2()2,2()1,2()3,1()2,1()1,1(1111111)3,1()2,1()1,1(2222)()3,(jjwii表示第i层第j个神经元的阈值其取,1)3(0a1)3(1a将各神经元的阈值作为固定输入3101010101131010101011)(),2()3()3,2()2()2,2()1()1,2()2()(),1()3()3,1()2()2,1()1()1,1()1(jjjajwawawawujajwawawawu))(()(11iufia))(exp(111iu=2,1i取学习速率η=0.1(或其他正数,可调整大小)其中p为第p个样本,j=1,2,3(4)训练隐藏单元的权值PS:利用隐含层各神经元的误差项和输入层各神经元的输入来修正权值。其中i=1,2,3j=1,2,3上述4个步骤为:使用第一个样本调整输出层和隐藏层各个神经元的权值。(5)计算全局误差当用完所有样本时,判断网络误差是否满足要求。当误差达到预设精度或学习次数大于预设最大次数,则结束算法。否则,返回(2),进入下一圈学习。注:仅计算一圈(p=1,2,…,15)往往是不够的,直到误差达到预设精度或学习次数大于设定的最大次数时停止。本例中,共计算了147圈,迭代了2205次。最后计算结果是:xexf11)(取激励函数则)](1)[()1()(2'xfxfeexfxx))1(())1()1(()1(2'22ufat2222)))1(exp(1/())1(exp())1()1((uuat计算),1()1(2jWP)()1(),1(),1()1(1)1(2)(2)1(2jajWjWppppj=1,2,3)()1(1ip),1()1()](1)[(),1()1()]([)()1(2)1(211)1(2)1(21')1(1iWiaiaiWiufippppp)()(),(),()1(0)1(1)(1)1(1jaijiWjiWpppp211)]1()1([21)(2)(2ppatEEppppp网络模型的解为:四、实现结果评价:成功使用BP神级网络学习方法建模并解决蚊子的分类问题。2764.02875.05787.05765.05976.75921.51W9829.34838.04075.82W2764.0)2(2875.0)1(5787.0)2(5765.0)2(5976.7)1(5921.5)1(001001aauaau))(()(11iufia))(exp(111iu2,1i=))1(exp(11)1(9829.3)2(4838.0)1(4075.8)1(22112uaaau
本文标题:BP神经网络解决蚊子分类问题
链接地址:https://www.777doc.com/doc-2900995 .html