数据预测基于matlab双向长短时记忆(biLSTM)数据预测含Matlab源码 1793期

Posted 紫极神光

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据预测基于matlab双向长短时记忆(biLSTM)数据预测含Matlab源码 1793期相关的知识,希望对你有一定的参考价值。

一、双向长短时记忆(biLSTM)简介

1 LSTM网络基本原理
LSTM在RNN的基础上增加了单元状态,并引入内部“门”机制调节信息流,避免RNN出现的“梯度爆炸”和“梯度消失问题”。LSTM的结构算法为:
ft=σ(Wf·[ht-1,xt]+bf) (4)
it=σ(Wi·[ht-1,xt]+bi) (5)
c˜t=tanh(Wc)⋅[ht−1,xt]+bc)         (6)ct=ft⋅ct−1+it⋅c˜t         (7)ot=σ(W0⋅[ht−1,xt]+bo)         (8)ht=ot⋅tanh(ct)         (9)
式中,ft、it、c˜、ct、ot、ht分别为遗忘门、输入门、临时状态量、状态量、输出和最终输出单元值;W和b分别为各“门”对应的权重和偏置项;xt为输入向量;σ为将实数映射到[0,1]的sigmoid函数;tanh为将实数映射到[-1,1]的双曲正切函数。

图1 LSTM与Bi-LSTM网络的对比示意图

2 双向LSTM基本原理
Bi-LSTM网络是标准LSTM网络的扩展,当网络学习完整的时序规律时,Bi-LSTM网络可以在不增加数据量的情况下,学习序列数据与时间步长之间的双向依赖关系。如图1所示,Bi-LSTM网络和LSTM网络的主要区别在于后者只保存过去的信息,而Bi-LSTM网络结合这两种隐含状态,可以同时保存过去和未来的信息。

图2 位移预测流程图

二、部分源代码

clc
clear
close all
%%
load final.mat
for i=1:size(record,2)
    record(:,i)=record(:,i)/max(record(:,i));
end


三、运行结果





四、matlab版本及参考文献

1 matlab版本
2014a

2 参考文献
[1] 包子阳,余继周,杨杉.智能优化算法及其MATLAB实例(第2版)[M].电子工业出版社,2016.
[2]张岩,吴水根.MATLAB优化算法源代码[M].清华大学出版社,2017.
[3]周品.MATLAB 神经网络设计与应用[M].清华大学出版社,2013.
[4]陈明.MATLAB神经网络原理与实例精解[M].清华大学出版社,2013.
[5]方清城.MATLAB R2016a神经网络设计与应用28个案例分析[M].清华大学出版社,2018.
[6]张明岳,李丽敏,温宗周.基于变分模态分解和双向长短时记忆神经网络模型的滑坡位移预测[J].山地学报. 2021,39(06)

以上是关于数据预测基于matlab双向长短时记忆(biLSTM)数据预测含Matlab源码 1793期的主要内容,如果未能解决你的问题,请参考以下文章

数据预测基于matlab双向长短时记忆BiLSTM(多输入单输出)数据预测含Matlab源码 1826期

LSTM预测基于matlab鲸鱼算法优化双向长短时记忆BiLSTM航空发动机寿命预测 (多输入单输出)含Matlab源码 2288期

回归预测 | MATLAB实现BO-CNN-BiLSTM贝叶斯优化卷积双向长短期记忆网络数据回归预测

注意力机制 | CNN-BiLSTM-Attention基于卷积-双向长短期记忆网络结合注意力机制多输入单输出回归预测(Matlab程序)

区间预测 | MATLAB实现BiLSTM双向长短期记忆神经网络分位数回归多输入单输出

多维时序 | MATLAB实现GTO-CNN-BiLSTM人工大猩猩部队优化卷积双向长短期记忆神经网络多变量多步时间序列预测