当前位置: 首页 > article >正文

时序预测模型测试总结

0.背景描述

公司最近需要在仿真平台上增加一些AI功能,针对于时序数据,想到的肯定是时序数据处理模型,典型的就两大类:LSTM 和 tranformer 。查阅文献,找到一篇中石化安全工程研究院有限公司的文章,题目为《基于TA-ConvBiLSTM的化工过程关键工艺参数预测》,想着对该论文思路进行复现。并与lstm 做对比,看看引入CNN 、时间注意力机制后和双向LSTM 是否对模型预测精度有提升效果。

1.模拟生成数据

模型训练需要数据,因此,我按照文章要求,模拟生成了一组数据集(9000),74列特征,目标值是某炉温度

2. 使用xgboost  对特征进行筛选

使用model.feature_importances_ 方法,即可获取重要性排序

可以看到这些特征中,有49列特征具有相关性,因此,对特征进行选择

3. 使用lstm 进行预测

特征值分别使用

case1 : 

# 选择特征(去掉目标变量和非相关列)

# features_df = data.drop(['Target','Time_Step','Day_Cycle','Week_Cycle','Target_Lag_1','Target_Lag_2','Target_Lag_3','Target_Lag_4','Target_Lag_5'], axis=1)

case2 

# 选择特征(去非相关列)

features_df = data.drop(['Time_Step','Day_Cycle','Week_Cycle','Target_Lag_1','Target_Lag_2','Target_Lag_3','Target_Lag_4','Target_Lag_5'], axis=1)

case3 

# 选择特征(xgboost 删选出来的特征 + Target)

features_df = data['Feature_4', 'Feature_7', 'Feature_47', 'Feature_38', 'Feature_23', 'Feature_42', 'Feature_43', 'Feature_37', 'Feature_40', 'Feature_49', 'Feature_25', 'Feature_46', 'Feature_26', 'Feature_1' , 'Feature_21', 'Feature_48', 'Feature_29', 'Feature_30', 'Feature_34', 'Feature_27', 'Feature_35', 'Feature_44', 'Feature_32', 'Feature_16', 'Feature_41', 'Feature_39', 'Feature_28', 'Feature_45' , 'Feature_36', 'Feature_24', 'Feature_12', 'Feature_18', 'Feature_31', 'Feature_33', 'Feature_15', 'Feature_17', 'Feature_20', 'Feature_22', 'Feature_19', 'Feature_9', 'Feature_13', 'Feature_14', 'Feature_11', 'Feature_6', 'Feature_3', 'Feature_5', 'Feature_10', 'Feature_2', 'Feature_8', 'Feature_63','Target']

三种情况下,

# 模型参数

input_size = features_df.shape[1]

hidden_size = 128 # 32 ->0.2582

num_layers = 2

look_forward = 1

learning_rate = 0.001

num_epochs = 1000

分别测试结果:

case1 :

R² Score: 0.2863155879831444

case2:

R² Score: 0.911497674937094

case3:

R2 Score: 0.9679
MSE: 0.0017

三种情况下,R2逐渐提升,总结:

1.将目标值作为特征量,能显著提高拟合度;(从0.2->0.9)

2.通过删选去掉冗余特征,在一定程度上提高拟合度。(0.91->0.96)

4. 使用TA-conv-BiLSTM 进行预测

R2 Score: 0.9781
MSE: 0.0012

由此看出,使用TA-ConvBilstm后,拟合度和均方误差都有明显提升

http://www.lryc.cn/news/2401573.html

相关文章:

  • 第四十五天打卡
  • springboot mysql/mariadb迁移成oceanbase
  • npm install 报错:npm error: ...node_modules\deasync npm error command failed
  • Filebeat收集nginx日志到elasticsearch,最终在kibana做展示(二)
  • halcon c# 自带examples报错 Matching
  • 服务器重启后配置丢失怎么办?
  • Postgresql常用函数操作
  • 用 NGINX 搭建高效 IMAP 代理`ngx_mail_imap_module`
  • 湖北理元理律所债务优化实践:法律技术与人文关怀的双轨服务
  • Springboot——整合websocket并根据type区别处理
  • Qiskit:量子计算模拟器
  • 龙虎榜——20250605
  • PDF 转 HTML5 —— HTML5 填充图形不支持 Even-Odd 奇偶规则?(第二部分)
  • 大数据离线同步工具 DataX 深度实践与 DataX Web 可视化指南
  • 记一个判决书查询API接口的开发文档
  • 残月个人拟态主页
  • 热门消息中间件汇总
  • AiPy实战:10分钟用AI造了个音乐游戏!
  • Python Rio 【图像处理】库简介
  • 贪心算法应用:分数背包问题详解
  • PHP舆情监控分析系统(9个平台)
  • 金孚媒重磅推出德国顶级媒体原生广告整合服务,覆盖12家主流媒体
  • Mnist手写数字
  • 《一生一芯》数字实验三:加法器与ALU
  • Go 语言并发编程基础:Goroutine 的创建与调度
  • 三甲医院“AI平台+专家系统”双轮驱动模式的最新编程方向分析
  • 第12期_网站搭建_几时网络验证1.3二改源码包2024 软件卡密系统 虚拟主机搭建笔记
  • [论文阅读] (38)基于大模型的威胁情报分析与知识图谱构建论文总结(读书笔记)
  • SpringBoot EhCache 缓存
  • flutter 中Stack 使用clipBehavior: Clip.none, 超出的部分无法响应所有事件