QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 2202|回复: 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代码  z" O" Y# n5 q  ]3 e

    4 A6 u: r' ?% R. M/ d6 p1 内容介绍; K, s4 r; z6 H" H$ k5 N6 y2 D
    ​时间序列数据往往反映了某个事件发展的规律,蕴含着丰富的潜在信息。长短期记忆(LSTM)神经网络由于其网络结构的特殊性可以储存信息,解决长期依赖问题,常被用于时间序列预测。对LSTM的研究有利于高效挖掘出时序数据中的重要信息,对社会、经济等各个方面的发展均有着重要的影响。. X- o4 b9 f5 a
    9 B1 @* {* T/ y) U2 s. P3 s8 u
    2 部分代码
    : F# ]/ y3 [, p3 j2 c  Uclear, clc, close all;
    5 z6 d- {9 l9 |5 N/ {, q6 T5 I  _' E2 F$ U/ |$ l6 a  {; T
    data=xlsread('西班牙电价.csv');4 i: b- c* P# x; e8 Z# p& J* J! m
      F6 ~! m2 h! A% P3 p( ]
    data1=data;
    ; J5 Y- F  R' V" f, `8 g* _6 N9 q6 i! {6 M6 |4 K
    numTimeStepsTrain = floor(89);%89数据训练 ,3个用来验证/ v/ X' O8 Y- c9 i% K2 t/ m

    & z! B( Z0 B' RdataTrain = data(1:numTimeStepsTrain+1,;% 训练样本
    3 ?2 l8 a* |6 t7 B/ m7 p- M! b1 a
    dataTest = data(numTimeStepsTrain:end,; %测试样本
    ' ~; T5 F2 p9 y" D/ l6 i% {" V3 Q' E  @* D' M9 x! Z* i5 |, K$ }- l2 f
    %训练数据标准化处理
    2 Q, b8 o& @/ V' `* F$ m; z3 _0 L
    mu = mean(dataTrain,'ALL');
    * p& r9 v* K! X$ J9 w* w
    8 ?- p: i6 u/ J# g* `sig = std(dataTrain,0,'ALL');
    6 j8 y) s; [9 F6 W8 R
    7 I  G- b7 u% H  udataTrainStandardized = (dataTrain - mu) / sig;6 H. \% h9 v' G2 N; N+ i

    , f9 [; f, u  X! V5 s0 R4 CXTrain = dataTrainStandardized(1:end-1,;% 训练输入
    7 P' W+ N" f+ P7 m# p2 b1 v$ b) k# a' S
    ' b: g; G0 H' U$ c: O& HYTrain = dataTrainStandardized(2:end,;% 训练输出
    ) E& Y+ |2 S: f  d: ^: T1 o1 G. X5 r0 A; r) }' e2 d6 v2 x
    %% define the Deeper LSTM networks
    - q0 V( V( g3 f0 K0 @0 }1 \6 d; I  F+ |; c
    numFeatures= 1;%输入节点
    ; k' o4 T; R7 L: w6 }3 t) n/ e8 b' Y. K) L# A
    numResponses = 1;%输出节点
      Q7 {! l5 q) j) ?: m
    0 j0 G, ^4 a4 C# VnumHiddenUnits = 500;%隐含层神经元节点数 . X7 f: T9 Y+ A+ k# @

    6 W* f& p# Z" x- {figure(1)1 X" ^  g* K3 a0 L

    ( R# _2 E3 ?, \# m" l- c0 V* hplot(dataTrain(1:end-1,1));hold on;; \* O! x. d- i1 N: L1 P

    + b" K. B) [, y  Pidx = (numTimeStepsTrain)numTimeStepsTrain+numTimeStepsTest1);" k: S/ s4 X- ]  u- n

    . e# h4 S! {; V1 Aplot(idx,[(data(numTimeStepsTrain,1))' YPred1(1,],'--d');
    - l# S- l9 G/ k5 B' }6 R
    . }" g6 A0 _7 Y9 c/ Q( Yxlabel("时间/天")
    ) x" p! @6 k0 R: l; n# ^
      _; s8 [- _2 g7 D  ~: aylabel("电价")
    0 W1 C# S4 b9 I, G& o
    $ W# N& q6 ?) A4 ]5 P( Xlegend('实际值','预测值')
    * n& G! v. x7 {* M7 |% ]: b; r- z' s% r: K/ A) c9 R% _
    figure(2)
    3 \. G: n! }; B) i/ c2 I
    ! @: D, D. |# I" Y0 u7 dsubplot(2,1,1)' q( a0 k  l9 R# Z7 j6 m. J

    6 O0 ]/ u, h1 S9 Kplot(YTest(1,)& K+ I  p+ q, E  t

    - u0 g/ X; w5 ^' }  i- N9 ?1 Thold on
    % P3 Q( S) z2 x' L8 A8 L7 u7 B* @4 D, {" p" v8 y: H% }
    plot(YPred(1,,'.-'); w* i( r  ~* z8 Y

    6 W$ i1 b% |: i2 R) v4 A1 Phold off( b/ E% `) v; X/ b7 y/ ?5 O
    1 U$ y. j; c/ b( Y* W2 W1 }" H
    legend(["实际值" "预测值"])
    9 Z/ W& q6 O6 O3 h- `, y7 O& q
    # [! `$ f5 y# c% o7 _1 h# i. txlabel("时间/天")( k2 y; h" ]1 y$ A5 r* q' g

    $ [" h4 `$ w8 {# iylabel("电价")
    0 ~4 u1 F! C" z- L0 B5 y0 M+ ~- j3 G' s' d% U; \4 y, [
    ylim([5000 20000])
    6 i4 y8 j( n2 A4 c
    3 O5 N( \+ t5 E) Z% p" ssubplot(2,1,2)% B" K0 W. q) Z$ k
    $ M, M! p9 ^; q0 E& i4 o' E) R( G4 i
    stem(YPred(1, - YTest(1,)
    4 T2 R& _; j: x% g: a* }/ A2 t8 {1 C$ U  a7 D; c8 r! R& t/ [& ]9 s
    xlabel("时间/天")
    + u# ]" a" M% N" J9 y9 H2 ~; {
    4 F- h& t! p8 M; _+ s; K, hylabel("误差")
    1 w4 y6 K# V1 }" a: v, S2 ^
    6 q% O6 E! R; A* _title("误差百分数 = " + error)
    6 x" @  z" v- @% A# Y; `5 L4 _" A. N) \; x# K1 s# x, u
    3 运行结果' O" P, c9 O0 s. R1 y
    111.png   S# H7 e1 j5 J* _) f* J; l& z7 g
    + {) C7 w2 T0 y. e6 G% j$ {
    , n% Q$ Z6 O9 {: b

    4 Y) ~6 p6 X9 H1 v8 g4 参考文献
      H; N: M! z! l7 Q/ p6 b[1]魏昱洲, 许西宁. 基于LSTM长短期记忆网络的超短期风速预测[J]. 电子测量与仪器学报, 2019(2):8.' S, e- Z! L! L; C6 V

    8 r0 c! d8 `9 e+ [博主简介:擅长智能优化算法、神经网络预测、信号处理、元胞自动机、图像处理、路径规划、无人机、雷达通信、无线传感器等多种领域的Matlab仿真,相关matlab代码问题可私信交流。
    " c: {) N. }3 P部分理论引用网络文献,若有侵权联系博主删除。
    : a* d$ Z. J/ g& x! I————————————————( A) c: Z" M8 y( S8 a. `  |% [
    版权声明:本文为CSDN博主「matlab_dingdang」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
    # N$ S% _# G* A1 J6 y1 }0 E原文链接:https://blog.csdn.net/matlab_dingdang/article/details/1267547960 V7 |* C% n! Y
    . W, m& O+ Q% h# L5 k3 d6 }& |
    . R/ Q9 N) T, E5 `. @

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

    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, 2026-4-12 23:22 , Processed in 1.698668 second(s), 55 queries .

    回顶部