基于TCN-SENet +BiGRU-GlobalAttention并行预测模型
前言
本文基于前期介绍的电力变压器(文末附数据集),介绍一种基于TCN-SENet +BiGRU-GlobalAttention并行预测模型,以提高时间序列数据的预测性能。电力变压器数据集的详细介绍可以参考下文:
1 模型整体结构
模型整体结构如下所示:
分支一:通过基于通道注意力机制(SENet)的TCN模型网络,来自适应地调整通道特征的权重,使模型能够自动学习到不同通道的重要性,提取了多特征序列中与预测目标相关的重要空间特征;
分支二:多特征序列数据同时通过基于GlobalAttention优化的BiGRU网络,GlobalAttention是一种用于加强模型对输入序列不同部分的关注程度的机制。在 BiGRU 模型中,全局注意力机制可以帮助模型更好地聚焦于输入序列中最相关的部分,从而提高模型的性能和泛化能力。在每个时间步,全局注意力机制计算一个权重向量,表示模型对输入序列各个部分的关注程度,然后将这些权重应用于 BiGRU 输出的特征表示,通过对所有位置的特征进行加权,使模型能够更有针对性地关注重要的时域特征, 提高了模型对多特征序列时域特征的感知能力;
特征融合:然后两个分支提取的空间特征和全局时域特征通过堆叠融合,使模型能够更好地融合不同层次的特征表示,提高模型性能和泛化能力。
通道注意力机制
Squeeze-and-Excitation Networks
全局注意力机制:Global Attention Mechanism
2 多特征变量数据集制作与预处理
2.1 导入数据
2.2 制作数据集
制作数据集与分类标签
3 基于TCN-SENet +BiGRU-GlobalAttention并行的高精度预测模型
3.1 定义网络模型
注意:输入数据形状为 [64, 7, 7], batch_size=32,7代表序列长度(滑动窗口取值), 维度7维代表7个变量的维度。
3.2 设置参数,训练模型
50个epoch,训练误差极小,多变量特征序列TCN-SENet +BiGRU-GlobalAttention并行融合网络模型预测效果显著,模型能够充分提取时间序列的空间特征和时序特征,收敛速度快,性能优越,预测精度高,能够从序列时空特征中提取出对模型预测重要的特征,效果明显!
注意调整参数:
- 可以适当增加TCN层数和隐藏层的维度,微调学习率;
- 调整BiGRU层数和每层神经元个数,增加更多的 epoch (注意防止过拟合)
- 可以改变滑动窗口长度(设置合适的窗口长度)
4 模型评估与可视化
4.1 结果可视化
4.2 模型评估
4.3 特征可视化
点击下载:原文完整数据、Python代码
https://mbd.pub/o/bread/ZZ6UlJxv
本文转载自 建模先锋,作者: 小蜗爱建模