QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 2669|回复: 4
打印 上一主题 下一主题

[问题求助] 数模小白关于BP的一些问题

[复制链接]
字体大小: 正常 放大

1

主题

10

听众

40

积分

升级  36.84%

  • TA的每日心情

    2016-1-29 14:03
  • 签到天数: 16 天

    [LV.4]偶尔看看III

    自我介绍
    暂无

    群组2015国赛优秀论文解析

    跳转到指定楼层
    1#
    发表于 2015-4-19 15:43 |只看该作者 |倒序浏览
    |招呼Ta 关注Ta
    %PA 6月6:0:0   计算的MATLAB 程序如下:BP神经网络预测! U* n$ s# F  K& S
    %6月6位于第28行8 r6 E  M8 S- O/ I4 E  K' w
    clc,clear
    9 r' T  J) ~9 `4 x6 O9 Cload ('data.mat')%原始数据以列向量的方式存放在workplace文件中
    % t7 g  O6 D4 d1 JPA=PA(2:29,:);; v9 f/ n8 h) N/ \" v8 j
    %数据的标准化
    ( z; |5 {: G& W4 C2 r6 X5 kN=size(PA);
    5 o  W6 C* X1 i% E  k, Y' vfor j=1:N(1,2)* V: E9 x' i6 x  I* Q
        PAHminmax=minmax(PA(:,j)');
    0 @( B# s# ]" B8 U$ |( J' W) J0 ?" G9 N    for i=1:N(1,1)
    ( p3 s6 s6 ]6 k/ Y& b* ^; h        PA(i,j)=(PA(i,j)-PAHminmax(1,1))/(PAHminmax(1,2)-PAHminmax(1,1));
    4 z2 s: P, f2 ]0 Z  U9 h. d    end
    " q, \6 Z/ ~, |end4 n/ @3 n$ s3 G9 {: \* Y1 ^: K# L4 ]
    %以每天的从0时计数起,每隔十五分钟作为输入
      B9 s, f; [' J1 vP=PA(7:27,:);+ S3 ]0 ^  O, d' a6 a+ s
    %以6月6的间隔十五分钟的发电量作为目标向量0 `0 S1 g6 h( L8 E1 n3 |" q% q8 K
    T=PA(28,:);& V. h: {* h/ g' M: U8 O1 D+ L
    %创建一个BP神经网络,每一个输入向量的取值范围为[0 ,1],隐含层有22个神经元,
    2 l5 U1 u$ L) c4 H+ x%输出层有一个神经元,隐含层的激活函数为tansig,输出层的激活函数为%logsig,
    % f4 y% r* k+ N%训练函数为梯度下降函数,即标准学习算法0 u) n2 b% u4 C1 ^3 Y
    for i=1:21
    ' w% W4 |0 w4 a# Y* v    a(i,1)=0;
    $ f& K0 S* V2 e    a(i,2)=1;
    / B" Y& B* ]; _+ p7 r0 ~end
    ) U2 v6 E% y( tnet=newff(a,[21,1],{'tansig','logsig'},'traingd');
    4 F7 m/ H9 i* u. G8 t* Fnet.trainParam.epochs=30000;
    : s4 \) ^  N: i! bnet.trainParam.goal=0.01;/ G/ I# }2 @: |: P3 |6 ?5 Y1 Y+ H
    %设置学习速率为0.1
    : J" b9 u% D! g8 N$ `& j! ~6 T1 eLP.lr=0.1;0 G( G6 V" o" {* O8 }! H, S
    %训练网络
    " s3 J8 k7 \: X. X  qnet=train(net,P,T);+ s7 Q4 z& y: w, `8 t2 C
    %预测6月6的发电量数据
    : I6 v8 t9 b, @* sT1=sim(net,P);%预测值
    7 _0 X# e3 u) m4 m' z5 C" g%PA.6月6日发电量真实值
    ' O, ], }; f' [# _T0=PA(28,:);
    3 O3 d$ \4 \/ y: R- j%预测值与实际值的误差
    ; d: _. Z6 d- }/ ufor i=1:N(1,2)
    : c* L1 b( j, e% d" j! a% [3 T5 y    error(1,i)=T1(1,i)-T0(1,i);' I3 O$ m' a  N5 g( d
    end
    ) S& s6 [" U; h3 J' T, i# N! y%绘制误差图
    * d9 H8 Y  `' f  Pfigure(1)
    - W. w5 @6 z2 d# p- t) splot(1:N(1,2),error(1,1:N(1,2)),'-*'): q: T: q+ O( G# Y# e. a
    grid on) Z4 N9 V1 s/ g4 j) K
    xlabel('时点x'),ylabel('发电功率误差y');
    4 c2 u0 k* L( I+ w( s9 ~' Atitle('PA6.6.0.0-6.6.23.45发电功率误差图像')
    7 J! P* e" w' f+ ~/ f%绘制实时函数图" T9 K9 s1 k7 d! j. b+ k
    figure(2)
    ) K& g/ a! s0 A) x1 x, fplot(1:N(1,2),T0(1,:),1:N(1,2),T1(1,:),'r')/ N& s6 y9 B# x" |
    grid on
    & z0 }+ j( H; Q2 ~$ B/ Ylegend('实际值','预测值',2)
    4 Q1 ~! ]: I5 S9 @xlabel('时点x'),ylabel('发电功率y');
    # H2 i4 k* [( j2 X: G. U2 O2 [title('PA6.6.0.0-6.6.23.45发电功率实时函数图像')
    0 o/ G0 M6 K% K) v5 V! n web('http://www.ilovematlab.cn/forum-238-1.html','-browser')
    ) \" }* k% a1 ~7 w5 d. n* K/ `- R( ~' q7 Q

    - K, q* O$ h4 }5 x1 E0 H' J& l- @1 K, ~! F9 K
    - u) X- y1 G+ [3 Q) p# A9 i
    一本书关于预测发电量的BP的程序。我稍微有点纳闷,既然你已经知道了6月6日的实际值,并且都拿相应的数据来作目标向量了,还利用神经网络来预测6月6日的发电量,意义何在?
    8 ^$ `% h$ ~& S* G, v$ z. }4 ?
    zan
    转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信
    fg8741142        

    0

    主题

    10

    听众

    41

    积分

    升级  37.89%

  • TA的每日心情
    擦汗
    2015-5-21 16:54
  • 签到天数: 9 天

    [LV.3]偶尔看看II

    邮箱绑定达人 社区QQ达人

    你要明白神经网络是干嘛用的,你这个代码做出来的网络,可能是预测那些不知道实际发电量的,6月6日的数据是用来训练网络的,同时对比误差查看网络的性能
    5 ~, K1 X- a1 h# P1 J$ ?
    回复

    使用道具 举报

    3

    主题

    12

    听众

    100

    积分

    升级  0%

  • TA的每日心情
    奋斗
    2015-7-18 17:29
  • 签到天数: 30 天

    [LV.5]常住居民I

    社区QQ达人

    误差也有分为训练误差和测试误差的,具体你可以参考统计学习方法相关资料。/ k' B0 V$ b% U3 S& {
    回复

    使用道具 举报

    木__易        

    4

    主题

    10

    听众

    907

    积分

    升级  76.75%

  • TA的每日心情
    开心
    2017-1-7 12:01
  • 签到天数: 220 天

    [LV.7]常住居民III

    2013国际赛参赛者

    社区QQ达人

    群组2015年美赛冲刺

    群组哈尔滨工业大学建模团

    群组国赛讨论

    回复

    使用道具 举报

    杨地雷        

    3

    主题

    10

    听众

    37

    积分

    升级  33.68%

  • TA的每日心情
    开心
    2016-1-13 16:53
  • 签到天数: 14 天

    [LV.3]偶尔看看II

    自我介绍
    建模组

    社区QQ达人

    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 注册地址

    qq
    收缩
    • 电话咨询

    • 04714969085
    fastpost

    关于我们| 联系我们| 诚征英才| 对外合作| 产品服务| QQ

    手机版|Archiver| |繁體中文 手机客户端  

    蒙公网安备 15010502000194号

    Powered by Discuz! X2.5   © 2001-2013 数学建模网-数学中国 ( 蒙ICP备14002410号-3 蒙BBS备-0002号 )     论坛法律顾问:王兆丰

    GMT+8, 2026-7-27 07:12 , Processed in 0.607117 second(s), 73 queries .

    回顶部