找回密码
 立即注册
查看: 274|回复: 0

【MATLAB第23期】基于贝叶斯Bayes算法优化CNN-LSTM ...

[复制链接]
发表于 2023-3-11 15:53 | 显示全部楼层 |阅读模式
## 基于贝叶斯Bayes算法优化CNN-LSTM长短期记忆网络的单列时间序列模型及多输入单输出回归预测模型


## 前言


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

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

## 思路

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

## 1.时间序列预测模型

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

```bash
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结构参数  
```bash
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

## 代码获取方式

【获取下载链接】
点击上方可获取下载链接

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Unity开发者联盟 ( 粤ICP备20003399号 )

GMT+8, 2024-11-16 17:57 , Processed in 0.065191 second(s), 23 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表