【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


相关文章
|
9月前
|
机器学习/深度学习 算法 安全
【光伏功率预测】基于EMD-PCA-LSTM的光伏功率预测模型(Matlab代码实现)
【光伏功率预测】基于EMD-PCA-LSTM的光伏功率预测模型(Matlab代码实现)
437 1
|
10月前
|
机器学习/深度学习 数据采集 数据挖掘
基于 GARCH -LSTM 模型的混合方法进行时间序列预测研究(Python代码实现)
基于 GARCH -LSTM 模型的混合方法进行时间序列预测研究(Python代码实现)
356 2
|
9月前
|
机器学习/深度学习 数据采集 并行计算
多步预测系列 | LSTM、CNN、Transformer、TCN、串行、并行模型集合研究(Python代码实现)
多步预测系列 | LSTM、CNN、Transformer、TCN、串行、并行模型集合研究(Python代码实现)
958 2
|
8月前
|
机器学习/深度学习 自然语言处理 PyTorch
21_RNN与LSTM:序列建模的经典方法
在自然语言处理领域,处理序列数据是一个核心挑战。传统的机器学习方法难以捕捉序列中的时序依赖关系,而循环神经网络(Recurrent Neural Network,RNN)及其变种长短期记忆网络(Long Short-Term Memory,LSTM)通过其独特的循环结构,为序列建模提供了强大的解决方案。本教程将深入探讨RNN和LSTM的原理、实现方法和最新应用,帮助读者全面掌握这一NLP核心技术。
681 0
|
10月前
|
机器学习/深度学习 数据采集 运维
基于WOA-CNN-BiLSTM-Attention、CNN-BiLSTM-Attention、WOA-CNN-BiLSTM、CNN-BiLSTM、BiLSTM、CNN6模型单变量时序预测一键对比研究
基于WOA-CNN-BiLSTM-Attention、CNN-BiLSTM-Attention、WOA-CNN-BiLSTM、CNN-BiLSTM、BiLSTM、CNN6模型单变量时序预测一键对比研究
338 7
|
9月前
|
机器学习/深度学习 计算机视觉
基于CNN和大气散射模型的图像去雾
基于CNN和大气散射模型的图像去雾
|
10月前
|
机器学习/深度学习 算法 物联网
基于WOA-CNN-LSTM-Attention、CNN-LSTM-Attention、WOA-CNN-LSTM、CNN-LSTM、LSTM、CNN6模型多变量时序预测一键对比研究(Matlab代码)
基于WOA-CNN-LSTM-Attention、CNN-LSTM-Attention、WOA-CNN-LSTM、CNN-LSTM、LSTM、CNN6模型多变量时序预测一键对比研究(Matlab代码)
387 0
|
9月前
|
机器学习/深度学习 传感器 数据采集
基于贝叶斯优化CNN-LSTM混合神经网络预测(Matlab代码实现)
基于贝叶斯优化CNN-LSTM混合神经网络预测(Matlab代码实现)
1297 0
|
9月前
|
机器学习/深度学习 传感器 数据采集
【故障识别】基于CNN-SVM卷积神经网络结合支持向量机的数据分类预测研究(Matlab代码实现)
【故障识别】基于CNN-SVM卷积神经网络结合支持向量机的数据分类预测研究(Matlab代码实现)
559 0
|
11月前
|
机器学习/深度学习 人工智能 PyTorch
零基础入门CNN:聚AI卷积神经网络核心原理与工业级实战指南
卷积神经网络(CNN)通过局部感知和权值共享两大特性,成为计算机视觉的核心技术。本文详解CNN的卷积操作、架构设计、超参数调优及感受野计算,结合代码示例展示其在图像分类、目标检测等领域的应用价值。
596 7

热门文章

最新文章