基于BP神经网络的数据分类_第1页
基于BP神经网络的数据分类_第2页
基于BP神经网络的数据分类_第3页
基于BP神经网络的数据分类_第4页
基于BP神经网络的数据分类_第5页
已阅读5页,还剩29页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、基于基于BP神经网络的神经网络的数据分类数据分类姓名:丁莉学号:30856015指导老师:周润景日期:2009.7.1 1.1 BP网络简介 1.2 BP网络模型 1.3 学习规则 1.4 网络程序设计 1.5 BP网络应用123451.1 BP1.1 BP网络简介网络简介n反向传播网络(Back-Propagation Network,简称BP网络)是将W-H学习规则一般化,对非线性可微分函数进行权值训练的多层网络 n权值的调整采用反向传播(Back-propagation)的学习算法n它是一种多层前向反馈神经网络,其神经元的变换函数是S型函数n输出量为0到1之间的连续量,它可实现从输入到输

2、出的任意的非线性映射n在人工神经网络的实际应用中,BP网络广泛应用于函数逼近、模式识别/分类、数据压缩等,80%90%的人工神经网络模型是采用BP网络或它的变化形式,它也是前馈网络的核心部分,体现了人工神经网络最精华的部分。其主要思想是从后向前(反向)逐层传播输出层的误差,以间接计算出隐层误差。算法分为两个部分:第一部分(正向传播过程)输入信息从输入层经隐层逐层计算各单元的输出值;第二部分(反向传播过程)输出误差逐层向前计算出隐层各单元的误差,并用此误差修正前层权值。1.1 BP1.1 BP网络简介网络简介1.2 1.2 网络模型网络模型一个具有r个输入和一个隐含层的神经网络模型结构1.2 1

3、.2 网络模型网络模型nBP网络具有一层或多层隐含层,除了在多层网络上与其他的模型有不同外,其主要差别也表现在激活函数上。nBP网络的激活函数必须是处处可微的,因此它不能采用二值型的阀值函数0,1或符号函数1,1nBP网络经常使用的是S型的对数或正切激活函数和线性函数1.3 1.3 学习规则学习规则nBP神经网络是一前向结构无反馈的非线性映射系统,能较好地拟合非线性系统的输入与输出关系。BP网络学习规则的指导思想是:对网络权值和阈值的修正要沿着表现函数下降最快的方向负梯度方向。n其中xk是当前的权值和阈值矩阵,gk是当前表现函数的梯度,ak是学习速率。1kkkkxxa g1.3 1.3 学习规

4、则学习规则n假设输入为P,输入神经元有r个,隐含层内有s1个神经元,激活函数为F1,输出层内有s2个神经元,对应的激活函数为F2,输出为A,目标矢量为T1.3 1.3 学习规则学习规则n信息的正向传递隐含层中第i个神经元的输出输出层第k个神经元的输出定义误差函数111(11 ),1,2, 1riijjijafwpbis1212(212 ),1,2, 2skkiikiafwabks2211( , )22skkkE w Bta1.3 1.3 学习规则学习规则n利用梯度下降法求权值变化及误差的反向传播输出层的权值变化其中同理可得2122222(2 ), 1kkikikkikkikiiaEEwwawt

5、afaa 2222kikkkkkktafe feta2222222kkikikkikkkiaEEbbabtaf 1.3 1.3 学习规则学习规则n利用梯度下降法求权值变化及误差的反向传播隐含层权值变化其中同理可得221211121122kiijijkiijskkkijijjaaEEwwaawtafwfpp 211,21sijiikikikiijefewb1.3 1.3 学习规则学习规则n对于f1为对数S型激活函数,n对于f2为线性激活函数 111nfne 1220111nnnneefnee 111( )fnf n 21fnn1.4 1.4 网络程序设计网络程序设计(1)网络的初始化(2)训练参

6、数初始化(3)网络训练(4)网络仿真(5)显示结果下面进行分步介绍:1.4 1.4 网络程序设计网络程序设计n以上所有的学习规则与训练的全过程,可以用MATLAB中的函数trainbp.m来完成它的使用只需定义有关参数:显示间隔次数,最大循环次数,目标误差,以及学习速率。调用后返回训练后权值,循环总数和最终误差TPdisp_freq max_epoch err_goal lrW,B,epochs,errorstrainbp(W,B,F,P,T,TP)1.4 1.4 网络程序设计网络程序设计n在训练之前要对网络进行初始化,并设置好训练参数。网络的输入向量:网络的目标向量:网络初始化程序:12,k

7、npa aa12,kqtyyy();netinit net1.4 1.4 网络程序设计网络程序设计%创建一个BP网络,隐含层有s1个神经元,传递函数为tansig,中间层有s2个神经元,传递函数为logsig,训练函数为批梯度下降函数traingdnnet=newff(minmax(p),s1,s2,tansig,logsig,traingd);%训练步数为X%目标误差为En net.trainParam.epochs=X;n net.trainParam.goal=E;1.5 BP1.5 BP网络应用网络应用nBP网络的输入和输出层的神经元数目由输入和输出向量的维数确定。输入向量由A,B,C

8、这三列决定,所以输入层的神经元数目为3。 输出结果有四种模式,在这里设为1、2、3、4代表4种输出,因此输出层的神经元个数为4。隐含层节点数的确定:n其中m为输入层节点数,n为输出层节点数,a为【1,10】之间的常数。因为此处是3输入4输出的神经网络,所以隐含层节点数选择12。1snma1.5 BP1.5 BP网络应用网络应用n源程序代码源程序代码: :% %构建训练样本中的输入向量构建训练样本中的输入向量p pp1=1739.94 373.3 1756.77 864.45 222.85 877.88 1803.58;p1=1739.94 373.3 1756.77 864.45 222.85

9、 877.88 1803.58; 1675.15 3087.05 1652 1647.31 3059.54 2031.66 1583.12; 1675.15 3087.05 1652 1647.31 3059.54 2031.66 1583.12; 2395.96 2429.47 1514.98 2665.9 2002.33 3071.18 2163.05; 2395.96 2429.47 1514.98 2665.9 2002.33 3071.18 2163.05;p2=2352.12 401.3 363.34 1571.17 104.8 499.85 2297.28;p2=2352.12

10、401.3 363.34 1571.17 104.8 499.85 2297.28; 2557.04 3259.94 3477.95 1731.04 3389.83 3305.75 3340.14; 2557.04 3259.94 3477.95 1731.04 3389.83 3305.75 3340.14; 1411.53 2150.98 2462.86 1735.33 2421.83 2196.22 535.62; 1411.53 2150.98 2462.86 1735.33 2421.83 2196.22 535.62;p3=2092.62 1418.79 1845.59 2205.

11、36 2949.16 1692.62 1680.67;p3=2092.62 1418.79 1845.59 2205.36 2949.16 1692.62 1680.67; 3177.21 1775.89 1918.81 3243.74 3244.44 1867.5 1575.78; 3177.21 1775.89 1918.81 3243.74 3244.44 1867.5 1575.78; 584.32 2772.9 2226.49 1202.69 662.42 2108.97 1725.1; 584.32 2772.9 2226.49 1202.69 662.42 2108.97 172

12、5.1;p4=2802.88 172.78 2063.54 1449.58 1651.52 341.59 291.02 237.63;p4=2802.88 172.78 2063.54 1449.58 1651.52 341.59 291.02 237.63; 3017.11 3084.49 3199.76 1641.58 1713.28 3076.62 3095.68 3077.78; 3017.11 3084.49 3199.76 1641.58 1713.28 3076.62 3095.68 3077.78; 1984.98 2328.65 1257.21 3405.12 1570.38

13、 2438.63 2088.95 2251.96; 1984.98 2328.65 1257.21 3405.12 1570.38 2438.63 2088.95 2251.96;p=p1 p2 p3 p4;p=p1 p2 p3 p4;1.5 BP1.5 BP网络应用网络应用n% %构建训练样本中的目标向量构建训练样本中的目标向量t t t1=0 1 0 0 1 0 0; t1=0 1 0 0 1 0 0; 1 0 1 0 0 0 1; 1 0 1 0 0 0 1; 0 0 0 0 0 0 0; 0 0 0 0 0 0 0; 0 0 0 1 0 1 0; 0 0 0 1 0 1 0; t2=0

14、 1 1 0 1 1 0; t2=0 1 1 0 1 1 0; 1 0 0 1 0 0 0; 1 0 0 1 0 0 0; 0 0 0 0 0 0 1; 0 0 0 0 0 0 1; 0 0 0 0 0 0 0; 0 0 0 0 0 0 0; t3=0 0 0 0 0 0 0; t3=0 0 0 0 0 0 0; 0 0 1 0 0 1 1; 0 0 1 0 0 1 1; 1 0 0 1 1 0 0; 1 0 0 1 1 0 0; 0 1 0 0 0 0 0; 0 1 0 0 0 0 0; t4=0 1 0 0 0 1 1 1; t4=0 1 0 0 0 1 1 1; 0 0 0 0 1 0

15、0 0; 0 0 0 0 1 0 0 0; 1 0 1 0 0 0 0 0; 1 0 1 0 0 0 0 0; 0 0 0 1 0 0 0 0; 0 0 0 1 0 0 0 0; t=t1 t2 t3 t4; t=t1 t2 t3 t4;1.5 BP1.5 BP网络应用网络应用%创建一个BP网络,隐含层有12个神经元,传递函数为tansig%中间层有4个神经元,传递函数为logsig,训练函数为trainlmnet=newff(minmax(p),12,4,tansig,logsig,trainlm);%训练次数 默认为100net.trainParam.epochs=500;%训练的目标 默

16、认为0net.trainParam.goal=0.01;1.5 BP1.5 BP网络应用网络应用 % %神经网络训练神经网络训练 net=train(net,p,tnet=train(net,p,t);); % %测试样本进行分类测试样本进行分类 p_testp_test=1702.8 1877.93 867.81 1831.49 460.69 2374.98 =1702.8 1877.93 867.81 1831.49 460.69 2374.98 2271.89 1783.64 198.83 1494.63 1597.03 1598.93 1243.13 2271.89 1783.64 1

17、98.83 1494.63 1597.03 1598.93 1243.13 2336.31 354 2144.47 426.31 1507.13 343.07 2201.94 2232.43 2336.31 354 2144.47 426.31 1507.13 343.07 2201.94 2232.43 1580.1 1962.4 1495.18 1125.17 24.22 1269.07 1802.07 1817.36 1580.1 1962.4 1495.18 1125.17 24.22 1269.07 1802.07 1817.36 1860.45;1860.45; 1639.79 1

18、860.96 2334.68 1713.11 3274.77 3346.98 3482.97 1639.79 1860.96 2334.68 1713.11 3274.77 3346.98 3482.97 1597.99 3250.45 2072.59 1921.52 1921.08 1814.07 2640.26 1597.99 3250.45 2072.59 1921.52 1921.08 1814.07 2640.26 3300.12 2501.62 3105.29 1556.89 3271.72 3196.22 3077.87 3300.12 2501.62 3105.29 1556.

19、89 3271.72 3196.22 3077.87 1752.07 1594.97 1957.44 1594.39 3447.31 1910.72 1725.81 1752.07 1594.97 1957.44 1594.39 3447.31 1910.72 1725.81 1927.4 1782.88; 1927.4 1782.88; 2068.74 1975.3 2535.1 1604.68 2172.99 975.31 946.7 2261.31 2068.74 1975.3 2535.1 1604.68 2172.99 975.31 946.7 2261.31 2445.08 255

20、0.51 2126.76 1623.33 3441.07 1599.63 2373.61 2445.08 2550.51 2126.76 1623.33 3441.07 1599.63 2373.61 591.51 2057.8 1954.51 2036.94 935.53 1298.87 2463.04 1835.95 591.51 2057.8 1954.51 2036.94 935.53 1298.87 2463.04 1835.95 3498.02 2937.73 2145.01 2701.97 1966.35 2328.79 1875.83;3498.02 2937.73 2145.

21、01 2701.97 1966.35 2328.79 1875.83; y=sim(net,p_test y=sim(net,p_test););nTRAINLM, Epoch 0/500, MSE 0.437703/0.01, Gradient 7675.18/1e-010nTRAINLM, Epoch 25/500, MSE 0.129899/0.01, Gradient 44.6286/1e-010nTRAINLM, Epoch 37/500, MSE 4.18645e-007/0.01, Gradient 0.00721979/1e-010nTRAINLM, Performance g

22、oal met.n可见网络经过37次训练后即可达到误差要求,结果如下图:1.5 BP网络应用网络应用n可以看到网络具有非常好的学习性能,网络输出与目标输出的误差已经达到了预先的要求。1.5 BP网络应用网络应用1.5 BP网络应用网络应用对预测样本值的仿真输出结果是ny =n Columns 1 through 10 0.0000 0.0000 0.0000 0.0000 1.0000 1.0000 1.0000 0.0138 1.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 0.0000 1.0000 0.0268 0.0000

23、第3种 第3种 第1种 第3种 第4种 0.0000 0.0000 0.0000 1.0000 0.0000 0.0000 0.0000 1.0000 0.0000 0.0138 1.0000 1.0000 0.0000 0.0000 0.0000 0.0001 0.0001 0.0000 0.0000 1.0000 第2种 第2种 第3种 第4种 第1种 1.5 BP网络应用网络应用nColumns 11 through 20 0.0000 0.0000 0.0038 0.0000 1.0000 0.9127 0.9992 0.0000 0.0002 0.0000 0.0000 0.0007

24、 0.0078 0.9996 0.0000 1.0000 0.0000 1.0000 0.0000 0.0000 第4种 第3种 第1种 第2种 第4种 0.0000 1.0000 0.0000 1.0000 0.0000 0.9997 0.0000 1.0000 0.0000 0.0000 0.0005 0.0000 0.0000 0.0000 1.0000 0.0000 0.0000 0.0000 0.0000 0.0001 第3种 第4种 第3种 第4种 第2种1.5 BP网络应用网络应用n Columns 21 through 30 0.0000 0.0000 0.0000 0.003

25、8 0.00370.0000 1.0000 0.9997 0.0000 0.0000 1.0000 0.0000 0.0000 0.0078 0.0076 0.0001 0.0000 0.9731 1.0000 1.0000 第2种 第3种 第3种 第1种 第1种1.0000 0.0000 0.0000 0.0000 0.00000.0000 0.0138 1.0000 1.0000 0.99960.0000 0.0000 0.0000 0.0000 0.00000.0000 1.0000 0.0000 0.0000 0.9294 第4种 第1种 第3种 第3种 第3种1.5 BP网络应用网络应用1.5 BP网络应用网络应用1.5 BP1.5 BP网络应用网络应用n将上面结果与正确分类结

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论