数学建模社区-数学中国

标题: 【回归预测-Lstm预测】基于长短期记忆网络LSTM实现电价时间序列单步预测附matlab代码 [打印本页]

作者: 杨利霞    时间: 2022-9-8 10:28
标题: 【回归预测-Lstm预测】基于长短期记忆网络LSTM实现电价时间序列单步预测附matlab代码
【回归预测-Lstm预测】基于长短期记忆网络LSTM实现电价时间序列单步预测附matlab代码# q9 d3 x- Q1 P  d4 p' t
6 T& ]" A1 Y2 F5 @- ?2 K8 |
1 内容介绍
6 p' E. P1 M" |​时间序列数据往往反映了某个事件发展的规律,蕴含着丰富的潜在信息。长短期记忆(LSTM)神经网络由于其网络结构的特殊性可以储存信息,解决长期依赖问题,常被用于时间序列预测。对LSTM的研究有利于高效挖掘出时序数据中的重要信息,对社会、经济等各个方面的发展均有着重要的影响。: y- a  w" |, q. V* {, J

! N6 L2 u( Y+ ~8 U2 部分代码
: g' }" b; m* Z! v: \5 A5 M* r  Vclear, clc, close all;: g! |" a1 t, a9 h3 L( v' y8 c

: @' b; w: _% @" E. K& t+ W" ^data=xlsread('西班牙电价.csv');5 p( ?( y9 Q$ X. l: }9 ?' w

2 C; r$ H, b' P) r; |" o: Mdata1=data;
( d; X1 b3 P% w0 g% p/ H* x6 t* m& K0 P2 i2 [+ ^0 t8 l
numTimeStepsTrain = floor(89);%89数据训练 ,3个用来验证1 l8 A9 r  @2 E  C. _6 z7 o! |

) O% P' K* W) F: A% XdataTrain = data(1:numTimeStepsTrain+1,;% 训练样本
! x/ q1 y3 P: ]( \# h& I3 Y/ r' l  G, \! C3 e# K3 ~' p0 b% E- R
dataTest = data(numTimeStepsTrain:end,; %测试样本 $ v+ P2 |1 A! E% \, }8 J9 G$ ]) ]0 p

( c' C' p* d# f5 k+ c! F) d2 I%训练数据标准化处理 * C5 O9 X  v/ q4 b* Y

  b  R8 M7 n# A( N9 Ymu = mean(dataTrain,'ALL');
* l7 F" L$ T# b# M* d% c' w# l8 u+ Q- c
sig = std(dataTrain,0,'ALL');! Z" W# A9 P0 p. A2 u* W
3 @2 T4 U; S( c* o0 t) E2 e+ D
dataTrainStandardized = (dataTrain - mu) / sig;
# \: a" y; K/ ]- \9 W
* \) t" v+ Q+ B0 L6 DXTrain = dataTrainStandardized(1:end-1,;% 训练输入
+ M, Q" z9 E' {  V; e3 x9 [. ]4 d8 C5 k1 e) [
YTrain = dataTrainStandardized(2:end,;% 训练输出
" J- A/ M3 Q. l' Y% u
+ g; g6 B4 I$ J7 r%% define the Deeper LSTM networks1 x( N9 k5 {# c1 Z1 y; O- x
& n6 p% ^5 x" ?( ?" p
numFeatures= 1;%输入节点
$ C1 W  d) V; A$ ~& X; h
/ O; A- d: P- w5 @$ H1 U3 nnumResponses = 1;%输出节点
$ a# D& h: M/ X3 i1 I! l  R0 S/ o8 e
8 U9 M, D7 i* o/ ?$ ?' @# HnumHiddenUnits = 500;%隐含层神经元节点数
: u9 `, T% C4 m. |; @2 n
) c- D+ T7 K7 N; q6 k* Y% i  Z* r2 zfigure(1)
0 X$ a- k7 ?/ k$ S* ?  C, j  b+ r5 ~7 H  g4 P6 b" q" X
plot(dataTrain(1:end-1,1));hold on;
* b( z6 F( X" M- \& y. @* Z+ }, e% n1 c# h4 r. Y" q: h- n, U
idx = (numTimeStepsTrain)numTimeStepsTrain+numTimeStepsTest1);
1 J8 c4 I2 S3 m8 S  {
. d$ C4 Z7 o. i9 f. dplot(idx,[(data(numTimeStepsTrain,1))' YPred1(1,],'--d');1 I- C6 y' H1 X9 T  x+ V" ?' k

8 \  S' \2 t9 D0 m+ i, a# sxlabel("时间/天")( S" k5 N3 ]* ]6 A

! W# n6 p6 A8 I& F* D; d+ f) Lylabel("电价"); ~8 a6 g7 i4 y' c

% K0 B9 H9 t* z& Mlegend('实际值','预测值'). i0 e$ O$ J  T  F: L* t4 v8 }
- o' ^+ B" O8 W9 ^/ T
figure(2)
( [( Z  r* ?; \" [4 T: u9 N  B- p; k+ ]. d4 l/ [9 ~) Y' i" _- _
subplot(2,1,1). O  x$ o. [1 ~

+ G0 D4 B' R" f7 L8 d# h4 N5 N) eplot(YTest(1,)+ w+ h6 G7 M' O* P8 e4 n: [% j

9 h6 B9 U7 ^+ T: s' a- `# Shold on% P  c0 [% M0 {6 R/ D7 R, {
( j3 x* l( \: {* [6 ]8 p
plot(YPred(1,,'.-')1 B4 d. v0 |* S3 T

# e7 L' ^- W) X% C- r2 qhold off
; n8 ?; s* \! k( V, w4 P) u6 V
; Z) t1 E& X  s4 E# Y2 o# q; Z/ ~legend(["实际值" "预测值"])
8 F* }7 ^" @- z4 o% s
' P* X) P- K% R6 m7 Y  g% }xlabel("时间/天")
0 F, x; s+ m6 i& ?7 ~9 {0 S& r/ D
ylabel("电价")" w% Y& v( r% d! K8 ~) d0 s& H! q

* ~# v1 L, w. `; s- nylim([5000 20000])5 o9 o( v" G' q, [
7 K3 Z) \( ?- H6 r
subplot(2,1,2)! {+ E2 \4 e. T9 ]+ i4 k
$ ]$ Q9 n+ a0 `+ p# }4 I: Y
stem(YPred(1, - YTest(1,): i  U# w! I" q. }3 T7 r+ [
4 {$ x/ k9 l( [# V
xlabel("时间/天")+ z$ Q* w7 R1 @! m

) ]8 S3 ^2 N* i4 h0 Eylabel("误差")4 _( l. f- s( T) @8 R2 _3 z1 S

! b' v  q; R9 p5 I% D1 ztitle("误差百分数 = " + error). x3 o# [  B, d6 E  w0 T

9 D- w4 z& B1 M* h( g- v, f& o3 运行结果& ^$ ~8 J# h) v0 D# {4 e, G
111.png ) o5 O$ }, W. Y. A1 Z

: Z, v" [+ C1 K3 E$ W3 j: |4 K
" \% v5 n/ h3 A, ?  J4 G7 a% N/ }1 J# S5 K+ ^$ S1 O& w
4 参考文献3 y. V4 [7 U  z2 w, R9 O
[1]魏昱洲, 许西宁. 基于LSTM长短期记忆网络的超短期风速预测[J]. 电子测量与仪器学报, 2019(2):8.
) r/ p0 Q* B% m+ J- W3 L% v5 M7 E' s8 b6 f
博主简介:擅长智能优化算法、神经网络预测、信号处理、元胞自动机、图像处理、路径规划、无人机、雷达通信、无线传感器等多种领域的Matlab仿真,相关matlab代码问题可私信交流。+ `( f0 U- ~% a* R
部分理论引用网络文献,若有侵权联系博主删除。- D/ U2 u5 w2 R( i8 r
————————————————6 j' s5 M/ D  N9 L* F
版权声明:本文为CSDN博主「matlab_dingdang」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
  }0 X4 c* ~% f0 m原文链接:https://blog.csdn.net/matlab_dingdang/article/details/126754796# l* h  Y, M2 G

( j2 ]- c0 S3 D" t# _1 F! J
' j' `0 J2 Z- V

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

22.png






欢迎光临 数学建模社区-数学中国 (http://www.madio.net/) Powered by Discuz! X2.5