QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 2712|回复: 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神经网络预测& y; c' S' c1 R  d- F4 ^$ ?; S
    %6月6位于第28行- Z  b) N- q! G- Q2 F% r6 T% o
    clc,clear6 m& D" f& L  ^
    load ('data.mat')%原始数据以列向量的方式存放在workplace文件中$ T# b% Q1 m6 c5 `# K" P& d
    PA=PA(2:29,:);
    4 O! ]4 ]2 J4 b7 g) W# |8 w/ l%数据的标准化
    2 o- M0 z* u6 fN=size(PA);
    # y+ a1 P% \: E0 D( i- N' Vfor j=1:N(1,2)
    % b) h) A- {' ~9 G8 g0 T    PAHminmax=minmax(PA(:,j)');
    1 t3 j2 V' r5 q    for i=1:N(1,1)6 t* `' }. m! U$ Z
            PA(i,j)=(PA(i,j)-PAHminmax(1,1))/(PAHminmax(1,2)-PAHminmax(1,1));
    8 C- G. E$ u" E2 B/ D' ^    end
    - U/ m% Q8 p* z! O. e$ F+ S) Lend
    4 Z% P/ i# @1 Y7 j+ S8 n%以每天的从0时计数起,每隔十五分钟作为输入- s0 e6 E+ [  q5 y0 E9 v. M- Q
    P=PA(7:27,:);& b- k& L+ V) e% s$ s: {
    %以6月6的间隔十五分钟的发电量作为目标向量6 K" N* i. |2 h7 ]" I  o4 h
    T=PA(28,:);; n5 ?2 M, @" ?7 ?7 c
    %创建一个BP神经网络,每一个输入向量的取值范围为[0 ,1],隐含层有22个神经元,
    " A$ F3 w/ p" i& ]; m6 N. B%输出层有一个神经元,隐含层的激活函数为tansig,输出层的激活函数为%logsig,/ [# `9 a! V7 H4 f
    %训练函数为梯度下降函数,即标准学习算法3 U6 E, Y& n" F+ K5 r
    for i=1:21* b% m0 m9 B* ?) S
        a(i,1)=0;! H8 `/ Y1 o& b1 w& |- r1 T8 w- S
        a(i,2)=1;
    2 b6 t: R* C+ ^- p$ d- wend
    ( S3 P, b) p& R5 c' B9 Dnet=newff(a,[21,1],{'tansig','logsig'},'traingd');
    * v/ W* V1 u" X# D' Enet.trainParam.epochs=30000;
    - U5 ^! T. a' O* M! ~net.trainParam.goal=0.01;# K* R1 J9 d! L
    %设置学习速率为0.1
    ) v! P0 O( k* w% FLP.lr=0.1;
    * s# F6 k, z1 F& B6 ]%训练网络/ o5 k' H& }8 H+ n
    net=train(net,P,T);
    1 M, |5 |9 H! o%预测6月6的发电量数据
    , u) N6 ^& M2 W# S% h2 LT1=sim(net,P);%预测值5 i0 E% u& i' O# u- v( {
    %PA.6月6日发电量真实值
    4 n+ C. N2 @% o4 V# P+ sT0=PA(28,:);1 j3 i0 g/ e* X
    %预测值与实际值的误差* f: Z' o" Q2 ~) G% Q" q: ]
    for i=1:N(1,2)
    $ C4 S" e% {8 h+ j  ~    error(1,i)=T1(1,i)-T0(1,i);
    ; a% l2 Q" V) }9 b. b- ]end& n- S% @) {8 a" f' I) f' }
    %绘制误差图* r2 r: H  `  m# ~5 A  ?! a
    figure(1)4 N) [& o" s2 i
    plot(1:N(1,2),error(1,1:N(1,2)),'-*')
    0 l' }" y$ b0 ]  p' R" {" J" L" Hgrid on" d+ g. {2 j( m8 X$ o! j
    xlabel('时点x'),ylabel('发电功率误差y');
    2 w2 @( o% U9 Q' ^" Vtitle('PA6.6.0.0-6.6.23.45发电功率误差图像')
    * y8 Q6 o4 J$ ~4 I! h$ Y) Y& g. U%绘制实时函数图4 [8 Y) |/ f. w. f1 |" [) J
    figure(2)
    - v% x0 j. Y, Nplot(1:N(1,2),T0(1,:),1:N(1,2),T1(1,:),'r')" v" G5 ?" V/ b$ m
    grid on
    ; g# q8 k" W/ e: b! zlegend('实际值','预测值',2)
    7 x% e: A  L0 U5 P0 J! ^xlabel('时点x'),ylabel('发电功率y');: T0 X3 \; ^, A( K% q% X4 J
    title('PA6.6.0.0-6.6.23.45发电功率实时函数图像')
    ' {0 G; w; q# g3 `( F web('http://www.ilovematlab.cn/forum-238-1.html','-browser')
    , v. S( s( o5 f8 _
    6 \; V. I- J) f' t, y5 }3 b; f% @& c; Y5 a" h; _
    3 T" [: C0 T8 ~/ p- M0 [( I. ^0 \* G2 m

    5 h; M+ `0 G& {: W一本书关于预测发电量的BP的程序。我稍微有点纳闷,既然你已经知道了6月6日的实际值,并且都拿相应的数据来作目标向量了,还利用神经网络来预测6月6日的发电量,意义何在?' g% E" K, c  N, @! l, ^

    , c2 A8 p. g) ~
    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日的数据是用来训练网络的,同时对比误差查看网络的性能6 W% @+ a) N9 R1 |
    回复

    使用道具 举报

    3

    主题

    12

    听众

    100

    积分

    升级  0%

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

    [LV.5]常住居民I

    社区QQ达人

    误差也有分为训练误差和测试误差的,具体你可以参考统计学习方法相关资料。4 _: U# _' ]; Q% N( a
    回复

    使用道具 举报

    木__易        

    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-9-10 20:09 , Processed in 0.477042 second(s), 74 queries .

    回顶部