【MATLAB第19期】基于贝叶斯Bayes算法优化CNN-LSTM长短期记忆网络的单列时间序列模型及多输入单输出回归预测模型

简介: 【MATLAB第19期】基于贝叶斯Bayes算法优化CNN-LSTM长短期记忆网络的单列时间序列模型及多输入单输出回归预测模型

基于贝叶斯Bayes算法优化CNN-LSTM长短期记忆网络的单列时间序列模型及多输入单输出回归预测模型


前言


前面在【MATLAB第8期】讲解了基于贝叶斯Bayes算法优化LSTM长短期记忆网络的时间序列预测模型,即单输入数据时间序列预测,见本人CSDN主页。


前面在【MATLAB第10期】讲解了基于贝叶斯Bayes算法优化LSTM长短期记忆网络的多输入单输出回归预测模型思路框架,见本人CSDN主页。


思路


本文分别使用单列时间序列数据及多输入单输出数据,进行BO-CNNLSTM预测。贝叶斯原理及内容不多介绍。


1.时间序列预测模型


时间序列数据:单列数据

超参数优化:有大量的超参数可供调整和优化,使用贝叶斯优化来优化CNN-LSTM参数

optimVars = [
    optimizableVariable('NoFilter1',[8 64],'Type','integer')                         %卷积层1卷积核数量 
    optimizableVariable('NoFilter2',[8 64],'Type','integer')                         %卷积层2卷积核数量
    optimizableVariable('FilterSize1',[3 16],'Type','integer')                       %卷积层1卷积核大小
    optimizableVariable('FilterSize2',[3 16],'Type','integer')                       %卷积层2卷积核大小
    optimizableVariable('Lag',[3 9],'Type','integer')                                %时间滞后阶数范围                 
    optimizableVariable('MiniBatchSize',{'16' '32' '48' },'Type','categorical')      %批处理范围选择 
    optimizableVariable('learningrate',[1e-5 1e-1],'Type','real',"Transform","log")];%学习率优化选择

贝叶斯优化次数:10

贝叶斯优化结果:(参数简化,如最大运行时间仅设置为10*60)

测试集MAE=

1.3433

测试集RMSE=

1.9390


2.回归预测模型


使用多输入单输出数据

80%训练 20%测试

超参数优化:有大量的超参数可供调整和优化,使用贝叶斯优化来优化CNN-LSTM参数

%% 优化CNNLSTM结构参数


optimVars = [
    optimizableVariable('numHiddenUnits1',[50 200],'Type','integer')% LSTM第一层隐含层神经元数
    optimizableVariable('numHiddenUnits2',[50 200],'Type','integer')% LSTM第二层隐含层神经元数
    optimizableVariable('NoFilter1',[8 64],'Type','integer') %卷积层卷积核数量 
    optimizableVariable('FilterSize1',[3 16],'Type','integer')%卷积层卷积核大小
  ];

**


预测结果:

**


CNNLSTM训练集均方根误差(RMSE):3.2152

CNNLSTM训练集平均绝对误差(MAE):2.5149

CNNLSTM训练集平均相对百分误差(MAPE):5.0728%

CNNLSTM训练集R-square决定系数(R2):0.98159

CNNLSTM测试集均方根误差(RMSE):2.9023

CNNLSTM测试集平均绝对误差(MAE):2.1754

CNNLSTM测试集平均相对百分误差(MAPE):3.4288%

CNNLSTM测试集R-square决定系数(R2):0.96609

BO-CNNLSTM训练集均方根误差(RMSE):1.6549

BO-CNNLSTM训练集平均绝对误差(MAE):1.2913

BO-CNNLSTM训练集平均相对百分误差(MAPE):2.9743%

BO-CNNLSTM训练集R-square决定系数(R2):0.99484

BO-CNNLSTM测试集均方根误差(RMSE):2.4997

BO-CNNLSTM测试集平均绝对误差(MAE):2.098

BO-CNNLSTM测试集平均相对百分误差(MAPE):3.5159%

BO-CNNLSTM测试集R-square决定系数(R2):0.98186


相关文章
|
14天前
|
机器学习/深度学习 算法 数据安全/隐私保护
基于PSO粒子群优化的CNN-GRU的时间序列回归预测matlab仿真
- **算法理论:** 利用PSO优化的CNN-GRU,结合CNN的特征提取和GRU的记忆机制,进行时间序列预测。 - **CNN:** 通过卷积捕获序列的结构信息。 - **GRU:** 简化的LSTM,处理序列依赖。 - **预测步骤:** 1. 初始化粒子群,每粒子对应一组模型参数。 2. 训练并评估CNN-GRU模型的验证集MSE。 3. 使用PSO更新参数,寻找最佳配置。 4. 迭代优化直至满足停止准则。 ```
|
1月前
|
机器学习/深度学习 算法 数据可视化
m基于PSO-LSTM粒子群优化长短记忆网络的电力负荷数据预测算法matlab仿真
在MATLAB 2022a中,应用PSO优化的LSTM模型提升了电力负荷预测效果。优化前预测波动大,优化后预测更稳定。PSO借鉴群体智能,寻找LSTM超参数(如学习率、隐藏层大小)的最优组合,以最小化误差。LSTM通过门控机制处理序列数据。代码显示了模型训练、预测及误差可视化过程。经过优化,模型性能得到改善。
51 6
|
1月前
|
机器学习/深度学习 PyTorch 算法框架/工具
【从零开始学习深度学习】36. 门控循环神经网络之长短期记忆网络(LSTM)介绍、Pytorch实现LSTM并进行训练预测
【从零开始学习深度学习】36. 门控循环神经网络之长短期记忆网络(LSTM)介绍、Pytorch实现LSTM并进行训练预测
|
22天前
|
机器学习/深度学习 算法
基于PSO粒子群优化的CNN-LSTM的时间序列回归预测matlab仿真
**算法预览图省略** - **软件版本**: MATLAB 2022a - **核心代码片段**略 - **PSO-CNN-LSTM概览**: 结合深度学习与优化,解决复杂时间序列预测。 - **CNN**利用卷积捕获时间序列的空间特征。 - **LSTM**通过门控机制处理长序列依赖,避免梯度问题。 - **流程**: 1. 初始化粒子群,每个粒子对应CNN-LSTM参数。 2. 训练模型,以验证集MSE评估适应度。 3. 使用PSO更新粒子参数,寻找最佳配置。 4. 迭代优化直到满足停止条件,如最大迭代次数或找到优良解。
|
1月前
|
机器学习/深度学习 算法 计算机视觉
基于CNN卷积神经网络的金融数据预测matlab仿真,带GUI界面,对比BP,RBF,LSTM
这是一个基于MATLAB2022A的金融数据预测仿真项目,采用GUI界面,比较了CNN、BP、RBF和LSTM四种模型。CNN和LSTM作为深度学习技术,擅长序列数据预测,其中LSTM能有效处理长序列。BP网络通过多层非线性变换处理非线性关系,而RBF网络利用径向基函数进行函数拟合和分类。项目展示了不同模型在金融预测领域的应用和优势。
|
1月前
|
机器学习/深度学习 算法 数据可视化
基于GA遗传优化的CNN-LSTM的时间序列回归预测matlab仿真
摘要:该内容展示了基于遗传算法优化的CNN-LSTM时间序列预测模型在matlab2022a中的应用。核心程序包括遗传算法优化过程、网络训练、误差分析及预测结果的可视化。模型通过GA调整CNN-LSTM的超参数,提升预测准确性和稳定性。算法流程涉及初始化、评估、选择、交叉和变异等步骤,旨在找到最佳超参数以优化模型性能。
|
2月前
|
机器学习/深度学习 存储 算法
基于CNN+LSTM深度学习网络的时间序列预测matlab仿真,并对比CNN+GRU网络
该文介绍了使用MATLAB2022A进行时间序列预测的算法,结合CNN和RNN(LSTM或GRU)处理数据。CNN提取局部特征,RNN处理序列依赖。LSTM通过门控机制擅长长序列,GRU则更为简洁、高效。程序展示了训练损失、精度随epoch变化的曲线,并对训练及测试数据进行预测,评估预测误差。
|
2月前
|
机器学习/深度学习 算法
【MATLAB】基于VMD-SSA-LSTM的回归预测模型
【MATLAB】基于VMD-SSA-LSTM的回归预测模型
89 4
|
2月前
|
机器学习/深度学习 算法
【MATLAB】基于EMD-PCA-LSTM的回归预测模型
【MATLAB】基于EMD-PCA-LSTM的回归预测模型
46 0
【MATLAB】基于EMD-PCA-LSTM的回归预测模型
|
2月前
|
算法
MATLAB|【免费】融合正余弦和柯西变异的麻雀优化算法SCSSA-CNN-BiLSTM双向长短期记忆网络预测模型
这段内容介绍了一个使用改进的麻雀搜索算法优化CNN-BiLSTM模型进行多输入单输出预测的程序。程序通过融合正余弦和柯西变异提升算法性能,主要优化学习率、正则化参数及BiLSTM的隐层神经元数量。它利用一段简单的风速数据进行演示,对比了改进算法与粒子群、灰狼算法的优化效果。代码包括数据导入、预处理和模型构建部分,并展示了优化前后的效果。建议使用高版本MATLAB运行。

热门文章

最新文章