数学建模社区-数学中国

标题: bp神经网络原理简介及matlab程序 [打印本页]

作者: deerli    时间: 2010-1-12 12:14
标题: bp神经网络原理简介及matlab程序
虽然水平有限,但还是想写出来,望大家给些建议。并对于其中参考的资料作者表示感谢。
: J# u1 g7 v4 [, C& V很多地方仍不是很清楚。请高人指点下,先谢了!
( L+ X6 B4 U+ {3 P8 i/ W. k(1)编写出的很多系统都不是特别稳定,不知是数据问题、传递函数问题还是节点数量问题。有没有一定的规则?4 T. x- I& @& u& [; p2 k+ F# |, q" m
(2)怎样从matlab训练过程中观察net的结构和学习率设定是否合理?
+ P' f) C% D3 X7 i. U$ m(3)net的结构中,隐层数量的增加(如从1层变为2层)会对网络产生什么样的影响?

bp神经网络.doc

356 KB, 下载次数: 305, 下载积分: 体力 -2 点


作者: 彩虹天堂    时间: 2010-1-12 12:52
回复 1# deerli
* w$ |( t' c* \; v4 {5 X
: L9 s% H" t( _  k7 G6 l7 D
8 s. C" {! i* s5 b! X    不知道
作者: hanshaoping    时间: 2010-1-28 09:53
为了矩阵币让我刷下 !!!!!!!!!!!!!!!!!!
作者: hanshaoping    时间: 2010-1-28 09:53
不错的东西,下来慢慢研究!!!!!
作者: 王迪_88    时间: 2010-1-28 11:25
这个东西貌似很难,放弃了~~~~~~~~~~~~~~~~~~~~~~~~~~
作者: Evam    时间: 2010-1-29 23:54
好难啊6^^^^^^^^^^^^^^^^^^…………………………
作者: hupanfeng    时间: 2010-2-18 15:48
谢谢楼主~~~~~~~~~~~~~~~~~~~~~~~~~
作者: tears2010    时间: 2010-4-26 17:41
回复 1# deerli 0 t) m( W# c" s, b
# Q8 x. e3 L+ D" T/ |

! ]. R6 D) X$ \) ^7 D/ {    我也在做这个,慢慢研究研究。
作者: viayy    时间: 2010-5-5 12:46
什么时候我才是小学生呢,这个我也研究神经网络模式识别的
作者: 轻舞飞shy    时间: 2010-5-17 14:28
谢谢楼主分享啊,不错,学习中…………
作者: w117950089    时间: 2010-5-20 12:30
rqw rwrq wr wqr qwrwqr wrw qrwqrwqrwqrwqr
作者: nicefall    时间: 2010-6-7 13:50
顶个先。谢谢楼主!& U; A, }0 r+ j+ ?3 }  u0 u1 L

作者: 347196468    时间: 2010-8-14 21:16
%获得网络的输入样本P和目标样本T8 ~& w) C( K; Q/ g) e2 A' }
% u( v0 E$ s+ G6 U' OP=[1 0.6 0.1 0 0 0 0   1 0.5 0 0 0 0 0;4 K3 v* b+ @: I" G2 C& ?2 S& z2 R5 n7 _& l( f. D
1 0.6 0.1 0 0 0 0   0 0.5 1 0.4 0 0 0;9 |( R: l2 i; {7 p. o2 J% m
4 P$ `1 O! Q- E1 0.6 0.1 0 0 0 0   0 0 0 0.4 1 0.6 0;1 N. h5 g7 P( g$ _: w
) A, ^* Z% o  j1 0.6 0.1 0 0 0 0   0 0 0 0 0 0 0.8;) W( b  h! d6 V3 J9 O& b% K( I/ A* [& Z9 Q0 L$ m3 l
0 0.6 0.6 0 0 0 0   1 0.5 0 0 0 0 0;; G6 ?) Q# P: @. f4 i& c
7 r: M& N  ?5 Y9 a$ p8 [1 I9 s0 0.6 0.6 0 0 0 0   0 0.5 1 0.4 0 0 0;$ N  F( j  A$ |- d1 k$ G/ K+ k" Y; Q. f0 r, d5 H0 O
0 0.6 0.6 0 0 0 0   0 0 0 0.4 1 0.6 0;  q2 L' |- V- A7 b: o+ B! _0 s8 {
6 Q* |! h# _4 H2 z2 U6 _0 0.6 0.6 0 0 0 0   0 0 0 0 0 0 0.8;% V, f5 |% e2 r3 ^& D
1 u5 |3 k5 J3 d% |% I& V0 0 0.6 1 0 0 0    1 0.5 0 0 0 0 0;5 y3 x! k- L3 K( ^/ _7 l
+ s/ }$ }2 u' J' O& Y0 0 0.6 1 0 0 0    0 0.5 1 0.4 0 0 0;
( k  Z/ \$ ^, x# V' y- F! J/ [, B* f0 0 0.6 1 0 0 0    0 0 0 0.4 1 0.6 0;" h( s# ?% u' g$ h* X0 z! m5 Z1 i4 y6 I$ g# t
0 0 0.6 1 0 0 0    0 0 0 0 0 0 0.8;
: G7 N3 z& e+ S- _7 x- i' b" f* G5 P- G0 0 0 0 1 0.6 0    1 0.5 0 0 0 0 0;! p$ q8 S1 V+ @9 t7 i. o+ c
; V8 a* d7 Z& G, G: z' S0 0 0 0 1 0.6 0    0 0.5 1 0.4 0 0 0;5 e* _9 w. i: p' ]; U. H+ K# f
6 I% `+ z9 b4 i) |0 0 0 0 1 0.6 0    0 0 0 0.4 1 0.6 0;  ^9 S7 i) L" N1 r+ {0 g& I
  Z2 _8 A+ }4 o: l4 q6 b6 P0 0 0 0 1 0.6 0    0 0 0 0 0 0 0.8]';/ Q' c' j* D1 Y9 w. a5 [/ _0 o0 Q8 F* c. \- s
T=[1 0.5 0 0 0 0 0 0;+ F, _7 y% q  B" Z" V( x0 {6 p2 K' N2 x) w2 w
0 0 0 0.2 0.6 1 0.6 0.2;- ?4 }6 C( W5 H; @' T% j
' M5 N0 I, R/ x! D0 |1 g0 0 0 0.2 0.6 1 0.6 0.2;2 F- g1 H, Q6 j1 {  Y
( f8 O+ f/ l" ?0 0 0 0.2 0.6 1 0.6 0.2;
( {2 Y/ u7 f9 U* B; w1 i% D6 e/ B1 ^( h6 V) |0.4 0.8 1 0.8 0.4 0.2 0 0;
& ~. o5 z8 a" v, D  h1 k7 Z/ Y! w( R  I* }0 0 0 0.2 0.6 1 0.6 0.2;/ y8 U  A! f( O( H( m
0 T# R4 w- m5 i7 x- _0 j) a; s0 0 0 0 0 0.2 0.5 0.8;
# B' J9 O& z4 l6 x/ a0 d: M) a8 J+ Z, ~8 {1 q3 Y! `( g0 0 0 0.2 0.6 1 0.6 0.2;
  Y4 s* J* ?( X- [& {2 P- E1 M8 K8 Y) ?/ M- m0 0 0 0.2 0.6 1 0.6 0.2;( K1 W& p9 b7 r6 a7 [; a
. m- w( m6 y) ^/ L0 0 0 0.2 0.6 1 0.6 0.2;, g* K9 t7 g6 U) R) J
4 m6 e3 Y* J! u( n. u3 U0 0 0 0 0 0.2 0.5 0.8;0 o  o" a5 ?/ ~2 J
. e2 {, q! g& u! D* o) @! t( l4 Z0 0 0 0 0 0.2 0.5 0.8;5 }/ y1 N  S, m# m, Z
9 Z6 j. r* z( {0 0 0 0.2 0.6 1 0.6 0.2;, Q& Q; h+ \' @+ D9 W, _6 t
+ r( t' F3 M. U0 0 0 0.2 0.6 1 0.6 0.2;% a& I% x. Y* b! S3 Z  @0 I9 A/ e( c. l- A
0 0 0 0 0 0.2 0.5 0.8;
8 p/ T; ]% g+ ]5 _0 B9 ]; M+ J5 J' ?6 ?* Z0 k: e# x0 0 0 0 0 0.2 0.5 0.8]';3 ]' N$ h$ o# V. X5 l; @
( x0 l- }8 I4 t* e%根据Kolmogorov定理,输入层有14个节点,所以中间层有29个节点$ f5 v3 N( Z/ H
( A( e9 a& m: M) s- d7 P, K* A: R' s3 W%中间层神经元的传递函数为'tansig') @$ ^3 G8 d) Y
4 F  _$ S% C' Z& c% }) G# y/ ~%输出层有8个节点,其神经元传递函数为logsig
7 X- K4 T7 L, L, }. ?, \; `2 P* v% b( k0 h- u7 H6 H) `%训练函数采用traingdx
6 N3 n$ Q" n" U5 h5 p1 P* |: }0 C& m3 c0 \* Nnet=newff(minmax(P),[29,8],{'tansig','logsig'},'traingdx');- ?/ b# _# j0 f* p8 n" w/ h" V
/ e  G2 l) f1 C0 O9 e1 ]' q# s%训练步数为1000次" ?8 _& L' `% A% T; |1 ?6 e
9 `9 R) F1 w0 d6 R%训练目标误差为0.0010 D  S; p2 j9 p0 I( g$ E
  ]! [) p+ D+ cnet.trainParam.epochs=1000;* |  r9 y5 [5 H2 N5 i+ Q6 @2 V! ^/ U$ T5 ]
net.trainParam.goal=0.001;
- Y2 h4 h4 ]  I' K; H% t7 b: r8 W, G9 O+ i5 {* Lnet=train(net,P,T);; \7 P2 W, `. E+ h, o/ B# I1 l) M5 D8 r9 \2 q) f  z
Y=sim(net,P);, I) D  |5 S( |1 r0 Z- I. p- ^
: ]' a& `$ b' K& z& a%求训练值在每一个点上的误差: \5 F' N/ k7 o
& Y; K* |( C! _, [+ }# Bfor i=1:16
' g0 ^3 E1 Z: |- H; ~/ P, {# Y8 B* m8 \- W: _! N/ j    x(i)=norm(Y(:,i));+ _- R9 i" N$ n" Q7 C/ L! z7 L( A
5 o( Z9 A; [  n* ^* P% e
作者: zeta    时间: 2010-9-9 17:09
谢谢楼主~~~~~~~~~~~~~~~~~~~~~~~~~
作者: camel888    时间: 2010-10-28 09:32
  我也在做这个,慢慢研究研究。
作者: dingsw    时间: 2010-11-11 09:05
刚开始学,非常需要,谢谢
作者: qbx123    时间: 2010-12-12 18:48
我也在做这个,慢慢研究研究。
作者: mutou1991    时间: 2010-12-14 18:49
谢谢楼主了
作者: 星空☆_畅想    时间: 2011-3-17 15:13
太不厚道了,还要扣分。哎
作者: 筱之之园    时间: 2011-3-26 13:00
分享,研究中
作者: 谁丶渲染年华    时间: 2011-3-28 13:51

作者: ohyeszq    时间: 2011-5-5 16:39
zhengzaizhao xiexiefenxiang
作者: studyzfr    时间: 2013-7-2 19:33
试看看~~~~~~~
作者: 追梦狮者    时间: 2013-8-29 16:31
一起研究研究啊,初级a
作者: 狼之魂汪洋    时间: 2014-8-5 09:33
不知道,,,,,,,,,,,
作者: charles.Liao    时间: 2014-8-5 16:31
看看  顶楼主




欢迎光临 数学建模社区-数学中国 (http://www.madio.net/) Powered by Discuz! X2.5