QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 2710|回复: 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神经网络预测% K) ]9 ^6 ?! H! ?' P6 k
    %6月6位于第28行8 h" J) A6 b! P4 }3 `
    clc,clear1 ^8 v4 X) ?3 Q' c  F, z: a
    load ('data.mat')%原始数据以列向量的方式存放在workplace文件中
    ; Q& T1 I3 O, LPA=PA(2:29,:);2 O8 d. W" L% b( v, P1 {$ {4 f
    %数据的标准化
    + b" E; J% Y7 P: {! RN=size(PA);& `9 Z$ u) B  v$ _
    for j=1:N(1,2)
    3 p4 T+ S& Y9 i0 W* Z) \. _    PAHminmax=minmax(PA(:,j)');* m0 c! V! f/ ^9 t. H4 ^
        for i=1:N(1,1)
    : L6 x! |* _5 f        PA(i,j)=(PA(i,j)-PAHminmax(1,1))/(PAHminmax(1,2)-PAHminmax(1,1));) O- F# ~% t* s$ @; M7 u/ S
        end4 B5 X6 A# S# M4 ?. _) W% i% Z
    end- n2 ]* W& F; ~1 ^# C
    %以每天的从0时计数起,每隔十五分钟作为输入+ }" H  c4 M$ v* U2 u2 o: o' O8 c
    P=PA(7:27,:);
    4 G, o- E/ z. i* P0 g" b%以6月6的间隔十五分钟的发电量作为目标向量
    0 D1 u+ S! q0 ^( D: @6 u* ZT=PA(28,:);8 _; ?; K5 M# o  h0 T
    %创建一个BP神经网络,每一个输入向量的取值范围为[0 ,1],隐含层有22个神经元,# ~/ c9 p4 s* z& t
    %输出层有一个神经元,隐含层的激活函数为tansig,输出层的激活函数为%logsig,
    ( E3 f/ Y, i4 L! `! _' p; c* J* l%训练函数为梯度下降函数,即标准学习算法5 M: m' N  e- u$ \
    for i=1:21
    # J8 l( j! o8 ~- [- g+ x4 {    a(i,1)=0;' P  x) ]2 {; @
        a(i,2)=1;; T9 w1 {, }- i4 Z
    end
    2 V+ H, r. u) i1 q8 ynet=newff(a,[21,1],{'tansig','logsig'},'traingd');
    # D* J" n2 z" h- enet.trainParam.epochs=30000;
    $ G  d$ k2 M1 R* a# V( d2 u; H/ fnet.trainParam.goal=0.01;
    3 J- v, `) V  q9 S6 D1 V0 ?%设置学习速率为0.1
    , D) U. S' C4 h1 t* ^LP.lr=0.1;4 W$ p: S& E1 N
    %训练网络. I. ]) B8 S% ]$ e& d% e
    net=train(net,P,T);
    8 T+ ?- G. _0 q( f6 R5 v7 o; n) L& F%预测6月6的发电量数据
    2 o+ a  ~& t/ f5 W* X% P( |T1=sim(net,P);%预测值9 q6 \& h; ^% ^1 T" d& z
    %PA.6月6日发电量真实值) A  x& T4 e7 ^6 v3 i' b* x# ?5 _
    T0=PA(28,:);
    ! u* \3 v7 B! W0 D  ^%预测值与实际值的误差, f; l! q6 I9 K2 k+ m+ S; b
    for i=1:N(1,2)
    * ?' C. G$ z9 U' _! @3 q! @    error(1,i)=T1(1,i)-T0(1,i);* ?5 Q. c6 C) I
    end
    % Q. p' I% `# V- I3 G%绘制误差图
    9 G8 S7 z8 C' T5 \5 ^+ ~figure(1)
    ' Y& z0 J& q4 D/ P) x/ o# U) Eplot(1:N(1,2),error(1,1:N(1,2)),'-*')
    . Q7 I- D7 g& l) C( Q$ Y. O" Vgrid on
    . C6 `* ~1 C! z5 Q. o3 Y0 axlabel('时点x'),ylabel('发电功率误差y');
    + J" J: E! G0 ]5 E! u  @title('PA6.6.0.0-6.6.23.45发电功率误差图像')1 K8 c5 e- G& |" _
    %绘制实时函数图; n& @' e- T/ F' p9 u8 A
    figure(2)
    8 Y) Q) R6 Y7 k6 A* wplot(1:N(1,2),T0(1,:),1:N(1,2),T1(1,:),'r')( _5 Y* p/ Q3 Q3 J
    grid on0 w- M1 w8 B* b6 D
    legend('实际值','预测值',2)
    # j8 X2 O9 v. e. [1 yxlabel('时点x'),ylabel('发电功率y');
    : h1 [2 m4 z# W+ ~title('PA6.6.0.0-6.6.23.45发电功率实时函数图像')% u- F; b5 a% H/ q: V
    web('http://www.ilovematlab.cn/forum-238-1.html','-browser')5 g- y( J3 |2 \: c2 E. z

    5 q$ @$ u2 a( ?
    2 N; @9 [/ ^) A3 g/ \' U- W& ^2 b8 D& r% A5 V- t

    3 L; j# o  ~0 V$ d8 k; q, R( Z; t5 X一本书关于预测发电量的BP的程序。我稍微有点纳闷,既然你已经知道了6月6日的实际值,并且都拿相应的数据来作目标向量了,还利用神经网络来预测6月6日的发电量,意义何在?4 i& F: i- z- a) ~

    4 U& H5 U8 ~) _1 w5 V: 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日的数据是用来训练网络的,同时对比误差查看网络的性能% d6 M3 G- w$ L0 [
    回复

    使用道具 举报

    3

    主题

    12

    听众

    100

    积分

    升级  0%

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

    [LV.5]常住居民I

    社区QQ达人

    误差也有分为训练误差和测试误差的,具体你可以参考统计学习方法相关资料。
    4 I: O: E$ c8 M# \1 M9 b! ?
    回复

    使用道具 举报

    木__易        

    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 19:29 , Processed in 0.472194 second(s), 73 queries .

    回顶部