数学建模社区-数学中国

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

作者: deerli    时间: 2010-1-12 12:14
标题: bp神经网络原理简介及matlab程序
虽然水平有限,但还是想写出来,望大家给些建议。并对于其中参考的资料作者表示感谢。
  p5 b7 S' U" D% o) `很多地方仍不是很清楚。请高人指点下,先谢了!
8 l. S+ }! D8 V  w  a, _% `! j(1)编写出的很多系统都不是特别稳定,不知是数据问题、传递函数问题还是节点数量问题。有没有一定的规则?
1 W. @0 H2 ~4 v  \6 {9 K. v(2)怎样从matlab训练过程中观察net的结构和学习率设定是否合理?- A8 U! c, G. m( W8 S
(3)net的结构中,隐层数量的增加(如从1层变为2层)会对网络产生什么样的影响?

bp神经网络.doc

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


作者: 彩虹天堂    时间: 2010-1-12 12:52
回复 1# deerli / \9 T/ `5 U  S4 v/ v
2 X# f# Q& N1 M; F

  B' D6 q& X7 k, w3 s7 R    不知道
作者: 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 6 @* \. P6 Y4 \, c' c) Z; i

% R% c# [7 R% d; D3 @' e0 L
: w( V9 Y7 H& h, n4 j5 I! F# F" ?1 o    我也在做这个,慢慢研究研究。
作者: 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
顶个先。谢谢楼主!; S' f& q' ~+ n3 g" v4 M

作者: 347196468    时间: 2010-8-14 21:16
%获得网络的输入样本P和目标样本T8 ~& w) C( K; Q/ g) e2 A' }2 C* S/ g' r( v8 G; u
P=[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& z
5 A$ ]& r( D3 _0 l6 [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% m3 T9 c: A% t4 Y" L0 v$ \4 p$ b. S
1 0.6 0.1 0 0 0 0   0 0 0 0.4 1 0.6 0;
% U, u, v8 K" s: Z5 D; j7 s$ G9 u2 S) 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
4 e$ z2 f  _) |0 0.6 0.6 0 0 0 0   1 0.5 0 0 0 0 0;; G6 ?) Q# P: @. f4 i& c
' o) i0 ?) z1 s# }' Y7 ~0 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/ N- g* ^( o5 r% ]7 M9 ~
0 0.6 0.6 0 0 0 0   0 0 0 0.4 1 0.6 0;3 B  i/ H/ Y7 |1 Q4 r  Y
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
' w& u+ G! w6 \' F% Z5 [7 l, Y0 0 0.6 1 0 0 0    1 0.5 0 0 0 0 0;, z- V" R. H( }" s: c% u
+ s/ }$ }2 u' J' O& Y0 0 0.6 1 0 0 0    0 0.5 1 0.4 0 0 0;# M  Z5 O( [9 s" S. Q/ V8 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* X8 J+ g5 n. a  C4 @, t: w
0 0 0.6 1 0 0 0    0 0 0 0 0 0 0.8;
" u. d' C! p. A- _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
* c6 w; H- ~' S9 L0 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
. B; M: r+ E- q( ~( x# t8 q0 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: ]  l9 g' u  f4 b# j+ ]
0 0 0 0 1 0.6 0    0 0 0 0 0 0 0.8]';/ Q' c' j* D1 Y9 w. a5 [( v5 W* p2 V! _( `* ?/ Z
T=[1 0.5 0 0 0 0 0 0;+ F, _7 y% q  B" Z4 p! O5 x: x) C% Q
0 0 0 0.2 0.6 1 0.6 0.2;3 e. v7 k: }! G& H
' 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
+ }* [& {+ a' e/ Z  Z0 0 0 0.2 0.6 1 0.6 0.2;
" q+ P/ j2 o6 n9 y( r* ^' Y% D6 e/ B1 ^( h6 V) |0.4 0.8 1 0.8 0.4 0.2 0 0;
5 I  i1 K) B9 Y+ {! W  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  R/ {# @5 y+ x" G# [5 u
0 0 0 0 0 0.2 0.5 0.8;
8 z# `) S+ K9 @3 v7 g4 @# D' m) a8 J+ Z, ~8 {1 q3 Y! `( g0 0 0 0.2 0.6 1 0.6 0.2;6 V' d1 d. C/ k$ l& `
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 [; a9 w9 Q- ?7 Z& g  h( P9 }
0 0 0 0.2 0.6 1 0.6 0.2;  ^. B, T6 ?$ Z: k5 P% b1 d" Z- W
4 m6 e3 Y* J! u( n. u3 U0 0 0 0 0 0.2 0.5 0.8;
6 c" H  C% j1 H( Y! U- O7 d4 S. 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
8 [- g7 g9 z& i6 h& ?, `0 A0 0 0 0.2 0.6 1 0.6 0.2;, Q& Q; h+ \' @+ D9 W, _6 t' U. w% w6 w+ N0 Z# x
0 0 0 0.2 0.6 1 0.6 0.2;% a& I% x. Y* b! S3 Z
4 k4 @  k$ q. x- q# }0 0 0 0 0 0.2 0.5 0.8;) T: H) X) E! U9 q; T$ T) U+ F
; M+ J5 J' ?6 ?* Z0 k: e# x0 0 0 0 0 0.2 0.5 0.8]';, b) v2 ?; ^% m$ K) d6 r& U
( x0 l- }8 I4 t* e%根据Kolmogorov定理,输入层有14个节点,所以中间层有29个节点$ f5 v3 N( Z/ H" ~- n: M5 p6 j8 O
%中间层神经元的传递函数为'tansig'
2 h# Q& ~( B) O! G7 k/ t4 F  _$ S% C' Z& c% }) G# y/ ~%输出层有8个节点,其神经元传递函数为logsig
$ H" T, Q6 _* s. ?2 Z$ M, \; `2 P* v% b( k0 h- u7 H6 H) `%训练函数采用traingdx3 j6 v0 O9 x% @: H) T
0 C& m3 c0 \* Nnet=newff(minmax(P),[29,8],{'tansig','logsig'},'traingdx');- ?/ b# _# j0 f* p8 n" w/ h" V8 v: L1 L/ Q! `7 \
%训练步数为1000次" ?8 _& L' `% A% T; |1 ?6 e3 ~; T7 E$ o) j2 l, x
%训练目标误差为0.001
% h8 O, _/ L, y; e3 |. G  ]! [) p+ D+ cnet.trainParam.epochs=1000;* |  r9 y5 [5 H2 N5 i+ Q6 @) Q1 p+ c0 [7 @2 R; N
net.trainParam.goal=0.001;
/ K" U1 y; Z, X2 |1 @. ~% J) F* |; H% t7 b: r8 W, G9 O+ i5 {* Lnet=train(net,P,T);; \7 P2 W, `. E+ h, o/ B# I1 l) M* n7 Q: l! W" e; v5 o
Y=sim(net,P);5 }7 M0 c. j8 L
: ]' a& `$ b' K& z& a%求训练值在每一个点上的误差: \5 F' N/ k7 o
! ]  W- O; C; k& @. T. ~for i=1:16% B# g; Y$ h: c& O  k3 n
8 B* m8 \- W: _! N/ j    x(i)=norm(Y(:,i));) j" M/ b2 C2 j! T5 f- Q& I: W# T
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