声明:文章是从本人公众号中复制而来,因此,想最新最快了解各类智能优化算法及其改进的朋友,可关注我的公众号:强盛机器学习,不定期会有很多免费代码分享~
之前的一期推文中,我们推出了Attention模型全家桶。将CNN/TCN/LSTM/BiGRU-Attention四种多变量回归模型打包到全家桶中,方便大家选择最适合自己数据的模型。
CNN/TCN/LSTM/BiGRU-Attention到底哪个模型效果最好?注意力机制全家桶来啦!一次购买永久更新!
这个全家桶中,四个模型是以四个文件的形式分别运行的。最近,后台有小伙伴提出,想要将四种模型统一放在一张图中,方便进行对比,选择最适合自己数据的模型,也方便把对比图放在论文里,提升美观度。
因此,本期推文给大家带来将四种预测模型的结果放在一张图中的代码文件,此份代码已直接加入到先前的全家桶中,之前已经购买过全家桶的小伙伴可直接免费下载。
为了保证此次实验的公平性,四种模型统一选用2019年3月某地的一个风电功率数据集,这是一个典型的多变量时间序列数据集,特征包括风速、温度、气压等等,15min一个点。同时,设置延时步长(即滑动窗口)为3。
当然,如果有小伙伴想要更换自己的数据,只需最后一列放想要预测的列,其余列放特征即可,无需更改代码(时间不用放,因为程序不会读取时间),非常方便。
另外,在模型超参数方面,统一设置最大迭代次数为100,Adam 梯度下降算法,初始学习率为0.01,其余参数均为默认参数。
废话不多数,首先直接看下效果图。
上图是与真实值的对比,肯定是越贴近真实值越好。这里因为四种模型预测精度都比较高,所以都非常贴近。
这是四种模型的误差柱状图,包括MAE、MAPE、RMSE,每种模型都用了不同的颜色区分,非常美观。由于横轴的三种误差指标均是越小越好,因此柱状图的柱子越短,说明模型误差越小,性能越好。
花里胡哨的图来了,越花里胡哨吧,就越容易吸引审稿人。这种带箭头的叫雷达图,每个模型都被分配到了雷达的不同位置。至于怎么看,就是箭头越短,说明模型的误差越小。
这是雷达图的第二种形式,将所有误差指标和模型放到了一个雷达中。具体来说,越靠近圆心,则表明模型的误差越小,性能越好。
当你论文篇幅不够的时候,也可以多放些图来补充工作量,上面这个图姑且叫做二维坐标图,横轴为误差指标MAE,纵轴为R2,R2肯定越大越好,而MAE肯定越小越好。因此,图中点越靠近左上方,表明模型的性能越好,而越靠近右下角,则说明模型的预测效果越差。
最后,运行完成后控制台中会显示各个模型的误差与预测指标。
总体上看,四种模型整体性能差异不大,LSTM-Attention模型稍弱一些,而CNN-Attention相对来说更好一些,但这也有可能是随机数的差异。同时,由于深度学习天然的黑箱特性,也不绝对的得到其中一个模型一定好于另一个模型的结论。
关键是,要把自己的数据集代入,看看到底哪个模型适配你的数据集。在没有尝试之前,没有任何人能给出你哪个模型最好的答案。
另外也想提醒大家的一点是,如果一个模型效果不佳,并不代表这个模型没有任何用处,大家在写论文的时候,完全可以把它当作对比模型进行对比,从而增强文章所选模型的说服力。
以上所有图片,均可全部运行出图。文件夹内文件也非常清晰,四种模型分成了四个main文件,并保存相应预测值到mat文件。
如需将四种算法的预测结果绘制到一张图中,则运行plotFigure文件即可,非常适合新手小白。
想要以上Matlab代码(包含风电数据集)的,只需点击下方小卡片,再后台回复关键词:
注意力全家桶