BiTCN-Attention一键实现回归预测+8张图+特征可视化图!注意力全家桶再更新!

        声明:文章是从本人公众号中复制而来,因此,想最新最快了解各类智能优化算法及其改进的朋友,可关注我的公众号:强盛机器学习,不定期会有很多免费代码分享~

目录

原理简介

数据介绍

结果展示

全家桶代码目录

代码获取


之前的一期推文中,我们推出了Attention模型全家桶。将CNN/TCN/LSTM/BiGRU-Attention四种多变量回归模型打包到全家桶中,方便大家选择最适合自己数据的模型。同时,也给了将四种模型的预测结果放到一张图的代码。

今天,我们对注意力全家桶进行更新,将最新推出的BiTCN-Attention模型加入到全家桶中,同时,应后台小伙伴的要求,我们在模型中加入了特征图可视化,不仅能够帮助我们理解模型内部特征、方便诊断和调试模型,更能吸引审稿人的注意力、增加文章的工作量!

此份代码已直接加入到先前的全家桶中,之前已经购买过全家桶的小伙伴可直接免费下载。也跟以前的形式一样,直接Excel替换数据即可!无需更改代码。

废话不多说,接下来介绍下原理与效果图。

原理简介

TCN由具有相同输入和输出长度的扩张因果卷积层组成,结合了CNN和RNN的优势。因果卷积的示意图如下图所示:

然而,传统的TCN只对输入序列进行正向卷积计算,只提取正向数据特征,忽略了反向中的隐含信息。在输入序列的每一层卷积之后,扩张因子呈指数增长。经过几次卷积,BiTCN获得了更大的接受域。BiTCN接受域的增加带来了梯度消失和收敛缓慢等问题。残差块的引入可以避免这些问题,同时实现对序列的高效特征提取。剩余块如图3所示。因此,采用双向时间卷积结构BiTCN来捕捉前后方向的隐藏特征,以更好地获得序列的长时间依赖性!BiTCN的网络结构如下图所示!非常新颖!

自注意力机制在传统注意力机制的基础上进行了进一步改良,通过并行计算,同时计算一句话中所有元素之间的相似性得分,从而获取全局的信息而非单一上下文的信息,这使得自注意力机制能够更全面地理解整个序列的语义,并更好地捕捉元素之间的复杂关系,其相关公式如下所示:

式中:Wq、Wk、Wv为线性变化矩阵;Q、K、V分别为查询向量(query)、键向量(key)和值向量(value);dk为查询向量和键向量的维度。最后,将注意力权重和值向量进行加权求和,得到自注意力机制的输出。

为了更清晰地展现网络结构与原理,此处将程序中运行出的网络结构图放出,方便大家直观感受此模型结构。

数据介绍

本期采用的数据是经典的回归预测数据集,是为了方便大家替换自己的数据集,各个变量采用特征1、特征2…表示,无实际含义,最后一列即为输出。

更换自己的数据时,只需最后一列放想要预测的列,其余列放特征即可(特特征数量不限),无需更改代码,非常方便!

结果展示

设置最大训练次数为200次,初始学习率为0.01,L2正则化系数为0.0001,卷积核个数为64,卷积核大小为5,空间丢失因子为0.1,残差块个数为1,利用上文的回归预测数据集进行预测,划分80%为训练集,20%为测试集,得到的结果如下所示:

测试集预测效果图:

训练集预测效果图:

特征可视化图:

误差直方图:

预测误差图:

四张线性拟合图:

网络结构图:

预测结果显示:

可以看到,BiTCN-Attention在该回归数据集上的预测精度还是不错的,R2达到了0.9以上,MAPE指标仅为0.05,MAE、RMSE也仅为个位数,如果再做几个对比模型,那么文章不就蹭蹭发了吗~

以上结果展示中所有图片,作者都已精心整理过代码,都可以一键运行main直接出图!不信的话可以看下面文件夹截图,非常清晰明了!

适用平台:要求Matlab2023a版本及以上,没有的文件夹里已免费提供安装包!

全家桶代码目录

目前,全家桶在之前4个模型以及1个画图程序的基础上又增加了一个,共6个,之后还会推出更多更新颖的模型!

正如上文提到的,如果你想快速发paper,或者想要尝试到底哪个模型才最适合你的数据、精度最高,或者需要很多对比模型衬托你的模型的优越性,那么全家桶包含的这么多模型可以说完全符合你的需求!

购买后如果以后推出其他注意力模型,直接免费下载,无需再次付费。

但如果你之后再买,一旦推出新模型,价格必然会上涨。因此,需要创新的小伙伴请尽早下手。

代码获取

1.已将本文算法加入注意力全家桶中,点击下方小卡片,再后台回复关键字:

注意力全家桶

2.如果实在只想要BiTCN-Attention单品的同学,点击下方小卡片,再后台回复关键字,不区分大小写:

BiTCNAttention

更多代码链接:更多代码链接

  • 8
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值