QQ登录

只需要一步,快速开始

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

【回归预测-Lstm预测】基于长短期记忆网络LSTM实现电价时间序列单步预测附matlab代码

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

5273

主题

82

听众

17万

积分

  • TA的每日心情
    开心
    2021-8-11 17:59
  • 签到天数: 17 天

    [LV.4]偶尔看看III

    网络挑战赛参赛者

    网络挑战赛参赛者

    自我介绍
    本人女,毕业于内蒙古科技大学,担任文职专业,毕业专业英语。

    群组2018美赛大象算法课程

    群组2018美赛护航培训课程

    群组2019年 数学中国站长建

    群组2019年数据分析师课程

    群组2018年大象老师国赛优

    跳转到指定楼层
    1#
    发表于 2022-9-8 10:28 |只看该作者 |倒序浏览
    |招呼Ta 关注Ta
    【回归预测-Lstm预测】基于长短期记忆网络LSTM实现电价时间序列单步预测附matlab代码
    + a9 f  r9 D* O  E6 Q6 }: ~* `5 @( _, m/ J, s# l' }  G# ?$ W1 m
    1 内容介绍' l; j: t& d$ U! C$ {$ t& y% t
    ​时间序列数据往往反映了某个事件发展的规律,蕴含着丰富的潜在信息。长短期记忆(LSTM)神经网络由于其网络结构的特殊性可以储存信息,解决长期依赖问题,常被用于时间序列预测。对LSTM的研究有利于高效挖掘出时序数据中的重要信息,对社会、经济等各个方面的发展均有着重要的影响。2 X1 w) V) l- l5 P
    * K% `, }+ u: f  x* k
    2 部分代码
    5 S. U. i% x8 vclear, clc, close all;
    & [: i+ ?1 a' P$ ~& Y) \5 ]9 B/ v) W' j  f
    data=xlsread('西班牙电价.csv');0 U& `: h0 e% W9 o* p; c; P
    ; h( J; E. j# J8 v: E4 e; f
    data1=data;
    ' |; Q6 _; e3 q3 \$ u& [$ d& i" z; F5 X. m
    numTimeStepsTrain = floor(89);%89数据训练 ,3个用来验证
    . L/ ^/ L8 _1 J2 I: T7 {4 v# x! X( F. r; u. s. v
    dataTrain = data(1:numTimeStepsTrain+1,;% 训练样本1 k; h# b" Q1 V* b$ h4 F1 I5 F! ?1 P3 X) P

    , o5 n7 b0 s, ]2 d7 L+ hdataTest = data(numTimeStepsTrain:end,; %测试样本 - Z' {7 q- S, N6 A2 u3 f

    ' H9 u6 P& P- k3 s& F3 w%训练数据标准化处理
    . L9 l& z4 ]) S* n1 L
    " _; P# c/ S- D; O2 ]0 x# hmu = mean(dataTrain,'ALL');
    ; I1 L' C& n  H# Q+ t+ {! l2 n9 h* E9 Z
    sig = std(dataTrain,0,'ALL');, Q2 T) h# i/ p2 B& C/ Y
    ( R$ m9 L! D$ X; I6 ^9 M
    dataTrainStandardized = (dataTrain - mu) / sig;' Z% L/ j/ W, _9 o$ O; b$ k

    + O' b+ o6 h7 v0 E) n# }XTrain = dataTrainStandardized(1:end-1,;% 训练输入
    ' R) L. J/ r* \6 m
    1 s. Y2 W: G6 sYTrain = dataTrainStandardized(2:end,;% 训练输出5 |2 L  o# h% g4 G0 z1 U; G8 H% G- E

    3 j0 R2 x5 m' t4 t* Y%% define the Deeper LSTM networks% r* Q9 A8 y  Z7 I5 Y

    5 i& d  ~* Y; B1 x3 `numFeatures= 1;%输入节点3 z: W* R( H& Z) V+ V
    : ]2 Q! y: s4 w4 j
    numResponses = 1;%输出节点7 Z- u2 H/ c3 |: y6 J
    9 r6 o9 B2 C# E' I" k
    numHiddenUnits = 500;%隐含层神经元节点数
    " {: L5 n6 Q! T* Q! k6 m( p3 x3 \, u0 N. C' J( L2 y
    figure(1)
    ; F* p5 \/ a2 l5 u. H( X( z9 [$ |* G; O$ l# t$ \: U1 f
    plot(dataTrain(1:end-1,1));hold on;! f; \1 T$ ?) X& ^9 G( o2 A9 i

    6 }" u$ X5 b0 G& E. Y+ ~idx = (numTimeStepsTrain)numTimeStepsTrain+numTimeStepsTest1);- y: D1 s+ E! s8 ~, X+ [
    # T% a7 T; d4 F* O0 }( w9 o. h
    plot(idx,[(data(numTimeStepsTrain,1))' YPred1(1,],'--d');
    ! q0 h! ^5 s8 C" u7 U7 A/ m7 p0 p& |) d# x6 p# J& @  I
    xlabel("时间/天")7 b0 a. J$ o1 c/ k( w" ^
      l  L8 H. s! _( d) f" ^% \/ y
    ylabel("电价")
    : j  A7 _+ c6 A: B0 W6 u8 W4 e- d
    ( `+ T& {' _* Ulegend('实际值','预测值')3 z) {, W+ f0 y9 D) G0 j, C+ K: V( E
    . K1 F: P- f: u
    figure(2)  k1 [8 T& Y* E( A& M+ K& ^; A
    $ t" n8 z1 l2 A3 ]. f$ a+ a; B! e
    subplot(2,1,1)
    5 q$ \; W$ @0 _9 x5 p
    : O; \9 w# _" W3 pplot(YTest(1,)0 |1 T4 L; h' _3 R
    ! y2 U, B- d% a& r& D
    hold on" Y2 ^- z% n( c) M6 n2 P+ T
    ; L8 W$ t% n1 w  ^/ z: D
    plot(YPred(1,,'.-')
    % W0 b  |& g. I! Q" f' B& v  _% C0 `* T
    # H! A& t8 h) ^3 \hold off: |9 i1 s8 K, U% o

    + ?9 X3 _8 I0 m" O1 r4 ylegend(["实际值" "预测值"])" C7 j- Y' `) M5 U
    9 h1 u8 ~. u+ l$ {. x% z( m& R
    xlabel("时间/天")$ B, r4 g( d  I9 O$ L! N! m

      t6 V$ z* h; b" w) b& O% r  Hylabel("电价")
    7 Q/ g( B( }3 g  v
    $ j8 ~3 P! j/ ]: q6 }0 Q: jylim([5000 20000])
    ; a7 Q* T0 N- F, L. p0 Y' h7 n$ H$ ~
    subplot(2,1,2)9 ?2 j9 f& y( o7 Y! ?

    8 q7 d- t, o! P* @# Xstem(YPred(1, - YTest(1,)
    , }9 {4 j  S& C  ]
    / T2 Z- |# d8 N5 c6 W4 e  \xlabel("时间/天")
    3 l  h# @. f/ V, \1 ~4 P! w6 |8 j+ q) y
    ylabel("误差")! e' t8 a/ f! Y" ^
    2 V, e" M8 A6 A, M9 x
    title("误差百分数 = " + error)
    . ?5 O) c% _! V& m9 D
    " D/ [5 a; {$ p3 运行结果" _- Q2 O. {- {" b  w+ m
    111.png
    2 z9 ^) H; @/ s2 V# ^1 t2 c0 R! J9 }  N8 [* j8 M# A; M
    3 w7 O" ]1 p2 k
    - a7 s& M+ D3 D) X
    4 参考文献
    , t# O% b  Q9 }7 ?[1]魏昱洲, 许西宁. 基于LSTM长短期记忆网络的超短期风速预测[J]. 电子测量与仪器学报, 2019(2):8./ g1 i) o; A+ E0 a4 B  S5 I
    4 o- h+ X2 \0 Y: f: R# _/ }. I
    博主简介:擅长智能优化算法、神经网络预测、信号处理、元胞自动机、图像处理、路径规划、无人机、雷达通信、无线传感器等多种领域的Matlab仿真,相关matlab代码问题可私信交流。
    7 M. Y' n6 }  g$ Z# v8 t; w部分理论引用网络文献,若有侵权联系博主删除。
    " z' \) U9 i+ L, ^————————————————
    2 R' K8 N( \# [' G1 M9 L版权声明:本文为CSDN博主「matlab_dingdang」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
    $ g: r4 O6 F) `' C! m4 J3 q原文链接:https://blog.csdn.net/matlab_dingdang/article/details/126754796
      I# c% y- C2 W2 R* N5 q) c, X3 s. w3 e' {. L0 s3 P; u. R
    / S" e6 X  k0 h9 [, r: U2 l

    22.png (19.79 KB, 下载次数: 531)

    22.png

    zan
    转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信
    您需要登录后才可以回帖 登录 | 注册地址

    qq
    收缩
    • 电话咨询

    • 04714969085
    fastpost

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

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

    蒙公网安备 15010502000194号

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

    GMT+8, 2025-8-3 20:34 , Processed in 0.469815 second(s), 53 queries .

    回顶部