将四种算法的预测结果绘制在一张图中

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

        之前的一期推文中,我们推出了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代码(包含风电数据集)的,只需点击下方小卡片,再后台回复关键词:

注意力全家桶

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/335276.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

TREK高压发生器维修高压电源615-3-L-JX 615-3

美国TREK高压电源维修故障分析应注意两点: 故障分析检测和故障硬件更换,由高压电源故障和工作表现初步判断故障的类型和哪些硬件出了问题,初步判断缩小检测范围,通过排除法和更替新配件准确找到故障硬件。维修过程需要对trek电源维…

C语言学习笔记之指针(一)

目录 什么是指针? 指针和指针类型 指针的类型 指针类型的意义 指针-整数 指针的解引用 指针 - 指针 指针的关系运算 野指针 什么是野指针? 野指针的成因 如何规避野指针? 二级指针 什么是指针? 在介绍指针之前&#…

【ai】livekit:Agents 1 : Agents Framework 与 LiveKit 核心 API 原语

agents 官方文档LiveKit Agents LiveKit Agents is an end-to-end framework for building realtime, multimodal AI “agents” that interact with end-users through voice, video, and data channels. This framework allows you to build an agent using Python.是一个端到…

2024年6月1日(星期六)骑行禹都甸

2024年6月1日 (星期六)骑行禹都甸(韭葱花),早8:30到9:00,昆明氧气厂门口集合,9:30准时出发【因迟到者,骑行速度快者,可自行追赶偶遇。】 偶遇地点:昆明氧气厂门口集合 ,…

010-Linux磁盘介绍

文章目录 1、名词 2、类型 3、尺寸 4、接口/协议/总线 5、命名 6、分区方式 MBR分区 GPT分区 1、名词 磁盘是计算机主要的存储介质,可以存储大量的二进制数据,并且断电后也能保持数据不丢失。早期计算机使用的磁盘是软磁盘(Floppy D…

三方语言中调用, Go Energy GUI编译的dll动态链接库CEF

如何在其它编程语言中调用energy编译的dll动态链接库,以使用CEF 或 LCL库 Energy是Go语言基于LCL CEF开发的跨平台GUI框架, 具有很容易使用CEF 和 LCL控件库 interface 便利 示例链接 正文 为方便起见使用 python 调用 go energy 编译的dll 准备 系统&#x…

C++:vector的模拟实现

✨✨✨学习的道路很枯燥,希望我们能并肩走下来! 文章目录 目录 文章目录 前言 一、vector的模拟实现 1.1 迭代器的获取 1.2 构造函数和赋值重载 1.2.1 无参构造函数 1.2.2 有参构造函数(对n个对象的去调用他们的构造) 1.2.3 迭代器区…

【UnityShader入门精要学习笔记】第十五章 使用噪声

本系列为作者学习UnityShader入门精要而作的笔记,内容将包括: 书本中句子照抄 个人批注项目源码一堆新手会犯的错误潜在的太监断更,有始无终 我的GitHub仓库 总之适用于同样开始学习Shader的同学们进行有取舍的参考。 文章目录 使用噪声上…

亮相CCIG2024,合合信息文档解析技术破解大模型语料“饥荒”难题

近日,2024中国图象图形大会在古都西安盛大开幕。本届大会由中国图象图形学学会主办,空军军医大学、西安交通大学、西北工业大学承办,通过二十多场论坛、百余项成果,集中展示了生成式人工智能、大模型、机器学习、类脑计算等多个图…

Compose第一弹 可组合函数+Text

目标: 1.Compose是什么?有什么特征? 2.Compose的文本控件 一、Compose是什么? Jetpack Compose 是用于构建原生 Android 界面的新工具包。 Compose特征: 1)声明式UI:使用声明性的函数构建一…

opencascade 快速显示AIS_ConnectedInteractive源码学习

AIS_ConcentricRelation typedef PrsDim_ConcentricRelation AIS_ConcentricRelation AIS_ConnectedInteractive 简介 创建一个任意位置的另一个交互对象实例作为参考。这允许您使用连接的交互对象,而无需重新计算其表示、选择或图形结构。这些属性是从您的参考对…

蓝桥杯嵌入式国赛笔记(4):多路AD采集

1、前言 蓝桥杯的国赛会遇到多路AD采集的情况,这时候之前的单路采集的方式就不可用了,下面介绍两种多路采集的方式。 以第13届国赛为例 2、方法一(配置通道) 2.1 使用CubeMx配置 设置IN13与IN17为Single-ended 在Parameter S…

今日好料推荐(大数据湖体系规划)

今日好料推荐(大数据湖体系规划) 参考资料在文末获取,关注我,获取优质资源。 大数据湖体系规划 一、大数据湖简介 大数据湖(Data Lake)是一个集中式的存储库,用于存储来自各种来源的结构化和…

蓝桥杯杨辉三角

PREV-282 杨辉三角形【第十二届】【蓝桥杯省赛】【B组】 (二分查找 递推): 解析: 1.杨辉三角具有对称性: 2.杨辉三角具有一定规律 通过观察发现,第一次出现的地方一定在左部靠右的位置,所以从…

快速下载极客时间课程

仅供学习,切勿商用 1. 下载 下载geektime-downloader,安装到指定文件夹,注意路径尽量不要出现汉字 不想去github上下载的可以直接下载文章顶部的软件安装包。 2. 执行命令 在安装geektime-downloader目录下,点击鼠标右键&…

Spring和Servlet的整合

Servlet对象是谁创建的? 由服务器端创建的 程序启动调用加载spring配置文件代码 Web应用程序启动也需要加载Spring配置文件 Web开发中有三大组件: 1、servlet 2、filter 3、listener(request,session,application&…

在docker中运行SLAM十四讲程序

《十四讲》的示例程序依赖比较多,而且系统有点旧。可以在容器中运行。 拉取镜像 docker pull ddhogan/slambook:v0.1这个docker对应的github:HomeLH/slambook2-docker 拉下来之后,假如是Windows系统,需要使用XLaunch用于提供X11…

无人机操作界面来了,起点就很高呀。

无人机操作界面设计需要考虑以下几个方面: 易用性:无人机操作界面应该简单直观,易于操作和理解。操作按钮和控键应该布局合理,易于触摸或点击。重要的操作功能应该易于找到和使用,避免用户迷失或困惑。实时反馈&#…

jupyter notebook更改位置

1.找到jupyer的配置文件 一般在c盘用户的.jupter文件夹下 2. 用记事本打开这个配置文件,定位到c.NotebookApp.notebook_dir /path_to_your_directory 替换你的位置 3.找到jupyer图标的位置,打开属性 添加要存放的位置在目标文件的末尾,重新…

9.3 Go语言入门(变量声明和函数调用)

Go语言入门(变量声明和函数调用) 目录二、变量声明和函数调用1. 变量声明1.1 使用 var 关键字声明1.2 简短声明1.3 零值1.4 常量 2. 函数调用2.1 函数定义2.2 多个返回值2.3 命名返回值2.4 可变参数2.5 匿名函数和闭包 目录 Go 语言(Golang&a…