QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 2611|回复: 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神经网络预测
    $ W; [: ^+ h6 `, c/ r, u%6月6位于第28行, F% ~. `$ o& ]
    clc,clear
    ! d1 P$ t8 j. b) l! ?1 k2 Oload ('data.mat')%原始数据以列向量的方式存放在workplace文件中
    % T+ O& p) M; {. \' ZPA=PA(2:29,:);
    ; V! s" x! R/ L) G  x%数据的标准化$ E3 W5 @) k, g" {. Q
    N=size(PA);
      A5 w- D8 S5 V& M: ?3 D3 x0 ifor j=1:N(1,2)
    8 W4 {0 a5 Y3 a9 h: ?1 ?    PAHminmax=minmax(PA(:,j)');* z  h1 G0 b7 T, \" v
        for i=1:N(1,1)1 }) _1 l0 {  a# ]: [) d& T
            PA(i,j)=(PA(i,j)-PAHminmax(1,1))/(PAHminmax(1,2)-PAHminmax(1,1));
    ! J5 V# I+ R* c6 d5 ]/ }6 P* _    end
    & \) H: q  H4 m$ Vend. J6 g! c0 w& ^2 n' B
    %以每天的从0时计数起,每隔十五分钟作为输入$ Q! y' }! I& l
    P=PA(7:27,:);/ z# F* H: t. _3 Z" U7 [; f2 m1 |& Q
    %以6月6的间隔十五分钟的发电量作为目标向量+ V! r  r! C: e( ~  _
    T=PA(28,:);
    - [" g, w: ~) Y- c%创建一个BP神经网络,每一个输入向量的取值范围为[0 ,1],隐含层有22个神经元,, C& I, {5 |5 V/ j1 g
    %输出层有一个神经元,隐含层的激活函数为tansig,输出层的激活函数为%logsig,
    0 d- L8 T/ I# a5 b% F%训练函数为梯度下降函数,即标准学习算法1 Y' d) o, n  c, s3 t" j: M
    for i=1:21
    4 l+ K3 ^& B# ]! |    a(i,1)=0;2 @6 J- m/ y" ]5 ?
        a(i,2)=1;7 s& H( X' `* W! _! V+ a
    end
    9 q/ y1 c0 S0 ^0 q2 m) p  Onet=newff(a,[21,1],{'tansig','logsig'},'traingd');
    / |/ O# b6 V& I9 v& r9 t/ c! y# znet.trainParam.epochs=30000;
    " C& `4 Q  J# _! m6 vnet.trainParam.goal=0.01;
    3 `( k4 v) W- ?%设置学习速率为0.1
    - _& }9 k1 Q" ^LP.lr=0.1;
    : g* Q9 Y3 W, D%训练网络/ r* e. C+ d) G6 I# v, B: z
    net=train(net,P,T);9 i" i& {, C: L2 y
    %预测6月6的发电量数据, |+ O8 c! Z, C1 V, ?. a& c
    T1=sim(net,P);%预测值
    . n* R3 G5 _# f7 a%PA.6月6日发电量真实值
    / p1 o* C, {1 ^* I; l1 w7 r3 gT0=PA(28,:);" t4 I+ b3 p5 y, ^  ]
    %预测值与实际值的误差
    : O! h) f. y6 m: {/ @for i=1:N(1,2)
    0 u$ C( N1 a5 \) C% F. r/ p6 B$ ^    error(1,i)=T1(1,i)-T0(1,i);+ E, N# D6 C& t- m
    end' R4 V$ u2 C, G% T! y% n
    %绘制误差图: |$ ]2 c/ Z8 h7 E% U
    figure(1)4 V8 _' y. F/ Q% C
    plot(1:N(1,2),error(1,1:N(1,2)),'-*')
    8 S/ M2 q: e9 L" N& ugrid on7 f4 i1 A/ y6 r) e+ d% `9 X6 T
    xlabel('时点x'),ylabel('发电功率误差y');: D2 ~4 D- |/ i( O+ u& r& l
    title('PA6.6.0.0-6.6.23.45发电功率误差图像')
    4 [- v3 P( D1 ]: x9 Z& ^2 x%绘制实时函数图2 g' O3 b' Q8 B4 e( Y
    figure(2)1 d/ E" r; Y" z+ W: ~- e' j
    plot(1:N(1,2),T0(1,:),1:N(1,2),T1(1,:),'r')
    & ?6 W. Y, Q! O/ i0 w0 i) T$ m# Bgrid on
    * ]8 t6 m& B# f4 u9 a4 J0 _legend('实际值','预测值',2)" u0 \5 H! w" S2 m5 Q$ @% c
    xlabel('时点x'),ylabel('发电功率y');, H' ^- e$ G& U8 p2 y, D0 S
    title('PA6.6.0.0-6.6.23.45发电功率实时函数图像')
    $ v& x- `& h' m3 R web('http://www.ilovematlab.cn/forum-238-1.html','-browser'), w3 V1 H. I6 z8 [

    5 {  Y7 q* [" d( H' A) F% O: c& L+ ^1 Y1 K2 h4 _* Z
    , u% Z/ @: e/ |% r3 B
    : T5 R! g) y0 b6 J: t
    一本书关于预测发电量的BP的程序。我稍微有点纳闷,既然你已经知道了6月6日的实际值,并且都拿相应的数据来作目标向量了,还利用神经网络来预测6月6日的发电量,意义何在?
    & T; b4 B7 e6 |0 \
    8 p9 |" k& Y- d1 C& h' r" Y2 D$ |
    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日的数据是用来训练网络的,同时对比误差查看网络的性能% v2 Y, g2 Y- C& h9 {# Z8 c0 B
    回复

    使用道具 举报

    3

    主题

    12

    听众

    100

    积分

    升级  0%

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

    [LV.5]常住居民I

    社区QQ达人

    误差也有分为训练误差和测试误差的,具体你可以参考统计学习方法相关资料。3 I5 r4 U4 @& L8 k
    回复

    使用道具 举报

    木__易        

    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-6-4 12:01 , Processed in 0.472137 second(s), 74 queries .

    回顶部