QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 2568|回复: 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神经网络预测. j/ q: B: F2 J. b  ~0 D4 F
    %6月6位于第28行
    1 y1 e, x+ r0 R, f! Bclc,clear. h+ D$ f: w" o% @; x" K5 Q
    load ('data.mat')%原始数据以列向量的方式存放在workplace文件中
    6 ~3 j6 l" d3 y: v3 |8 _% E! dPA=PA(2:29,:);
      J! `% [5 @$ H* C4 ~1 P( ~%数据的标准化: o9 J1 V4 w8 q
    N=size(PA);" x3 f+ t/ d+ ~7 i& q
    for j=1:N(1,2)3 L! e. `) G: Y
        PAHminmax=minmax(PA(:,j)');% L- i( P4 e; [) Q7 U7 @+ D
        for i=1:N(1,1)
    4 e0 m- g8 c! x6 }% G        PA(i,j)=(PA(i,j)-PAHminmax(1,1))/(PAHminmax(1,2)-PAHminmax(1,1));
    & ~) c4 D8 g! a7 D, Y    end
    5 J4 f' J6 z+ H: e- U; d) gend
    1 b# f4 k/ E4 R2 S%以每天的从0时计数起,每隔十五分钟作为输入
    ' q  `/ O( M: d! |: y/ S( [6 oP=PA(7:27,:);
    * b3 t- P9 V: r8 [- ]%以6月6的间隔十五分钟的发电量作为目标向量5 h) u8 Y; l- T6 `; p% w! E3 f1 R
    T=PA(28,:);8 B0 j  J' ~# q+ L/ z
    %创建一个BP神经网络,每一个输入向量的取值范围为[0 ,1],隐含层有22个神经元,
    / `" K/ G. C8 T* s. ?%输出层有一个神经元,隐含层的激活函数为tansig,输出层的激活函数为%logsig,
    & [! _7 W6 W, N, J4 B( B' A4 J%训练函数为梯度下降函数,即标准学习算法
    - l, S4 ]7 W# V) N/ ?$ vfor i=1:21
    4 E9 G1 f, ~- n8 s    a(i,1)=0;
    ' V# n  g3 O) a  @4 r! n    a(i,2)=1;$ [3 {7 @; X* i* B
    end. \# L7 U1 o& i' h* X
    net=newff(a,[21,1],{'tansig','logsig'},'traingd');  L9 }) N; Y8 J7 a' y4 x5 c9 }
    net.trainParam.epochs=30000;  \% b! c2 O" [  f$ [; d+ ^
    net.trainParam.goal=0.01;( e9 G" O% C$ K; A
    %设置学习速率为0.1
    % Z; A2 `+ }$ K& vLP.lr=0.1;; Y$ r( ~+ V3 G, f5 F3 E! b
    %训练网络- {8 _  X: p5 s- f) a
    net=train(net,P,T);$ m( X* P2 r% y8 l
    %预测6月6的发电量数据, w! S3 N$ J! P
    T1=sim(net,P);%预测值
      b$ s$ e; D1 Y" M%PA.6月6日发电量真实值, W6 X; i/ S2 z/ @
    T0=PA(28,:);, V8 s* S& q2 _. d6 N$ W- i$ `
    %预测值与实际值的误差: U, U3 I2 E1 d6 y- ~
    for i=1:N(1,2); F+ I* x$ y4 h4 C$ M
        error(1,i)=T1(1,i)-T0(1,i);* L# h3 ]7 h$ T* w
    end
    . _8 m+ F( `# |% ^4 J7 t%绘制误差图
    * l% f( `, F5 |figure(1)
    $ R1 {+ ?/ T) p& X1 k7 @- G0 i% l( ~plot(1:N(1,2),error(1,1:N(1,2)),'-*')
    % ?7 m+ n& ?2 i% u. Rgrid on
    9 o. `% j( n$ jxlabel('时点x'),ylabel('发电功率误差y');- b( W$ a% A; T% r1 @
    title('PA6.6.0.0-6.6.23.45发电功率误差图像')
    0 ?2 ~4 ~, t: b. d%绘制实时函数图
    ) \! s! ?# i9 W: s, Lfigure(2)' \4 P- v2 _) W! E
    plot(1:N(1,2),T0(1,:),1:N(1,2),T1(1,:),'r')" ^2 P0 l: A9 N; E: r& O9 B
    grid on+ E. D6 H2 q2 [% Q! r9 {, |% l+ W
    legend('实际值','预测值',2)! |7 p8 o- q2 Z" n8 |
    xlabel('时点x'),ylabel('发电功率y');
    1 |6 R( M# J6 V/ N8 O3 Ititle('PA6.6.0.0-6.6.23.45发电功率实时函数图像')
    : D7 C" R8 K& r web('http://www.ilovematlab.cn/forum-238-1.html','-browser')
    * y/ e( l+ H0 d" S& H9 a5 {  i
    7 U1 ?* T2 B) D3 U7 J0 b* z, e  T$ q! U/ I' m
    % ~9 U* q; V' J1 S( x" Q9 I/ o! ^
    " ?. D, t3 T: q, }
    一本书关于预测发电量的BP的程序。我稍微有点纳闷,既然你已经知道了6月6日的实际值,并且都拿相应的数据来作目标向量了,还利用神经网络来预测6月6日的发电量,意义何在?
    . m$ D9 P7 T' L+ e; \# [: _. K7 P9 I8 V8 f0 d* v; K
    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日的数据是用来训练网络的,同时对比误差查看网络的性能( g& v- Y3 ~, _! P9 O: i- p' G) ~5 X0 p
    回复

    使用道具 举报

    3

    主题

    12

    听众

    100

    积分

    升级  0%

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

    [LV.5]常住居民I

    社区QQ达人

    误差也有分为训练误差和测试误差的,具体你可以参考统计学习方法相关资料。
    $ g/ v" [) X7 C* b/ u/ W; U- E
    回复

    使用道具 举报

    木__易        

    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-4-22 23:24 , Processed in 0.609796 second(s), 74 queries .

    回顶部