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

【CEEMDAN-VMD-GRU】完备集合经验模态分解-变分模态分解-门控循环单元预测研究(Python代码实现)

💥💥💞💞欢迎来到本博客❤️❤️💥💥

🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。

⛳️座右铭:行百里者,半于九十。

📋📋📋本文目录如下:🎁🎁🎁

目录

💥1 概述

1.1 完备集合经验模态分解原理

1.2 变分 模 态 分 解

1.3 GRU

📚2 运行结果

🎉3 参考文献

🌈4 Python代码实现


💥1 概述

1.1 完备集合经验模态分解原理

早期的 EMD 方法具有较强的自适应性,能够有效地分解时间序列;但是,算法在运算过程中

容易出现模态混叠现象。EEMD 分解方法的思想是:在原始信号中加入白噪声[16],使极值点分布更均衡;最终分量在EMD 的基础上进行集成平均而得。但是,这种方法具有计算量大且重构时残留噪音大的缺陷。CEEMDAN 是 EEMD 的改进算法。该算法通过添加有限次数的自适应白噪声,解决了集合平均次数限制下的重构误差较大的问题。

1.2 变分 模 态 分 解

变分 模 态 分 解 ( variational mode decomposition,VMD) 算法是由 Dragomiretskiy 等提出的一种自动自适应、非递归的信号处理方法。此算法克服了 EMD 及其改进算法端点效应和模态分量

混叠的问题,可以将非稳定性、非线性且复杂度高的信号分解为多个相对平稳的子序列,在求解过

程中可自适应匹配最佳中心特征,极大程度地迎合高频率复杂信号的分解。

1.3 GRU

循环神经网络(Recurrent neural network,RNN)是经典的神经网络之一。由于 RNN 隐藏层

在不同样本序列的同一个神经元之间存在记忆传递,因此 RNN 在处理时间序列的线性回归问题具有优势:即,可以将前一刻神经元受到的影响输送到下一次学习中。但是,传统的 RNN 在进行反向传播时,如果输入数据的序列比较长,就会出现梯度消失、梯度爆炸等问题。

长短期记忆网络(Long short term memory,LSTM)和 GRU 的优势,在于其通过“门”结构极大地避免梯度消失问题,可以有效地分析长期依赖关系。

LSTM 包含 3 个门结构:遗忘门,输入门、输出门[21]。GRU 在 LSTM 的基础上减少了单元中门的个数,化简了单元复杂度,因此其运行效果要好于 LSTM。GRU 是由更新门和重置门构成,其内部结构如图 1 所示。

📚2 运行结果

 

部分代码:

# 7.Predict Co-IMF0 by matrix-input GRU
time0 = time.time()
df_vmd_co_imf0['sum'] = df_integrate_result['co-imf0']
co_imf0_predict_raw, co_imf0_gru_evaluation, co_imf0_train_loss = GRU_predict(df_vmd_co_imf0)
print('======Co-IMF0 Predicting Finished======\n', co_imf0_gru_evaluation)
time1 = time.time()
print('Running time: %.3fs'%(time1-time0))
co_imf0_predict_raw.plot(title='Co-IMF0 Predicting Result')
co_imf0_train_loss.plot(title='Co-IMF0 Training Loss')# 8.Predict Co-IMF1 and Co-IMF2 by vector-input GRU
co_imf1_predict_raw, co_imf1_gru_evaluation, co_imf1_train_loss = GRU_predict(df_integrate_result['co-imf1'])
print('======Co-IMF1 Predicting Finished======\n', co_imf1_gru_evaluation)
time2 = time.time()
print('Running time: %.3fs'%(time2-time1))
co_imf1_predict_raw.plot(title='Co-IMF1 Predicting Result')
co_imf1_train_loss.plot(title='Co-IMF1 Training Loss')co_imf2_predict_raw, co_imf2_gru_evaluation, co_imf2_train_loss = GRU_predict(df_integrate_result['co-imf2'])
print('======Co-IMF2 Predicting Finished======\n', co_imf2_gru_evaluation)
time3 = time.time()
print('Running time: %.3fs'%(time3-time2))
co_imf2_predict_raw.plot(title='Co-IMF2 Predicting Result')
co_imf2_train_loss.plot(title='Co-IMF2 Training Loss')

🎉3 参考文献

部分理论来源于网络,如有侵权请联系删除。

[1]金子皓,向玲,李林春,胡爱军.基于完备集合经验模态分解的SE-BiGRU超短期风速预测[J].电力科学与工程,2023,39(01):9-16.

[2]蒋富康,陆金桂,刘明昊,丰宇.基于CEEMDAN和CNN-LSTM的滚动轴承故障诊断[J].电子测量技术,2023,46(05):72-77.DOI:10.19651/j.cnki.emt.2210775.

🌈4 Python代码实现

相关文章:

【CEEMDAN-VMD-GRU】完备集合经验模态分解-变分模态分解-门控循环单元预测研究(Python代码实现)

💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…...

OpenText Exceed TurboX(ETX)—— 适用于 UNIX、Linux 和 Windows 的远程桌面解决方案

由于新技术的采用,以及商业全球化和全球协作的现实,几乎所有企业(无论其规模和所处行业)的员工的工作方式、时间和地点都发生了重大变化。业务领导者正在推动其 IT 部门提出解决方案,以帮助其远程员工提高工作效率&…...

【人工智能】— 逻辑回归分类、对数几率、决策边界、似然估计、梯度下降

【人工智能】— 逻辑回归分类、对数几率、决策边界、似然估计、梯度下降 逻辑回归分类Logistic Regression ClassificationLogistic Regression: Log OddsLogistic Regression: Decision BoundaryLikelihood under the Logistic ModelTraining the Logistic ModelGradient Desc…...

k8s pod “cpu和内存“ 资源限制

转载用于收藏学习:原文 文章目录 Pod资源限制requests:limits:docker run命令和 CPU 限制相关的所有选项如下: Pod资源限制 为了保证充分利用集群资源,且确保重要容器在运行周期内能够分配到足够的资源稳定运行&#x…...

datagrip 连接 phoenix

jar替换完后尽量重启datagrip. 然后重新连接即可. 不重启貌似报错... 效果:...

黑客入侵的常法

1.无论什么站,无论什么语言,我要渗透,第一件事就是扫目录,最好一下扫出个上传点,直接上传 shell ,诸位不要笑,有时候你花很久搞一个站,最后发现有个现成的上传点,而且很容…...

VB报警管理系统设计(源代码+系统)

可定时显示报警系统是一个能够定时并及时报警,提醒人们安全有效地按计划完成任务的系统。本论文从软件工程的角度,对可定时显示报警系统做了全面的需求分析,简要说明了该系统的构思、特点及开发环境;阐述了系统的主要功能,论述了它的设计与实现,并且叙述了系统的测试与评…...

Redis入门 - Redis Stream

原文首更地址,阅读效果更佳! Redis入门 - Redis Stream | CoderMast编程桅杆Redis入门 - Redis Stream Redis Stream 是 Redis 5.0 版本新增加的数据结构。 Redis Stream 主要用于消息队列(MQ,Message Queue)&#xf…...

微服务中常见问题

Spring Cloud 组件 Spring Cloud五大组件有哪些? Eureka:注册中心 Ribbon:负载均衡 Feign:远程调用 Hystrix:服务熔断 Zuul/Gateway:服务网关 随着SpringCloud Alibaba在国内兴起,我们项目中…...

更新删除清理购物车

目录 1 更新购物车 2 取会员门店购物车项 3 取会员门店购物车项(无缓存) 4 删除门店购物车某项 5 删除门店购物车多项 6 清理门店购物车 7 清理门店购物车 8 添加商品至购物车 9 添加商品至购物车...

基于Intel NUC平台的字符设备陀螺仪GX5-25驱动程序

陀螺仪GX5-25连接到Intel NUC上可能需要进行一些设备树的修改和编写驱动程序的工作。这是因为陀螺仪GX5-25可能需要特定的设备树配置和驱动程序来与Intel NUC的硬件和操作系统进行通信。 如果陀螺仪GX5-25没有官方的Linux驱动程序或文档,您可能需要自己编写驱动程序…...

建立小型医学数据库(总结)

建立小型医学数据库 小型医学数据库可以用于存储和管理医学数据,如患者病历、药品信息、试验结果等。这对于医疗机构和科研机构来说非常必要,可以提高数据管理和共享的效率,进而促进医学研究和诊疗水平的提升。 建立小型医学数据库有以下基本…...

Git学习笔记

文章目录 一. 引入1. SCM软件2. 概念 二. GitHubDesktop三. Git1. 版本号 (底层原理)1.1 视频笔记1.2 实操记录 2. Git命令2.0 汇总2.1 仓库操作2.2 文件操作2.3 分支操作2.4 标签操作2.5 远程仓库 四. idea操作 一. 引入 1. SCM软件 2. 概念 集中式版本控制 文件冲突 可以上…...

vue面试题1. 请说下封装 vue 组件的过程?2. Vue组件如何进行传值的?3. Vue 组件 data 为什么必须是函数?4. 讲一下组件的命名规范

1. 请说下封装 vue 组件的过程? 首先,组件可以提升整个项目的开发效率。能够把页面抽象成多个相对独立的模块,解决了我们传统项目开发:效率低、难维护、复用性等问题。 分析需求:确定业务需求,把页面中可以…...

Docker使用记录

文章目录 Docker基本使用Docker配置查看状态卸载安装使用 apt 存储库安装在 Ubuntu 上安装 Docker 桌面(非必要) Docker实例使用现有的镜像查找镜像拖取镜像列出镜像列表更新镜像导出镜像删除镜像导入镜像清理镜像查看容器导出容器导入容器-以镜像的方式创建容器重启容器进入容…...

OpenCV(图像处理)-基于Python-形态学处理-开运算、闭运算、顶帽、黑帽运算

1. 形态学2. 常用接口2.1 cvtColor()2.2 图像二值化threshod()自适应阈值二值化adaptiveThreshod() 2.3 腐蚀与膨胀erode()getStructuringElement()dilate() 2.4开、闭、梯度、顶帽、黑帽运算morphologyEx() 1. 形态学 OpenCV形态学是一种基于OpenCV库的数字图像处理技术&…...

chatgpt赋能python:Python支持跨平台软件开发

Python支持跨平台软件开发 作为一种高级编程语言,Python 以其丰富的库和跨平台支持而备受开发人员欢迎。Python 通过将应用程序的可移植性最大化,使得开发人员可以轻松地在不同的操作系统平台上构建和部署软件。 跨平台支持 Python 支持各种不同的操作…...

哈工大计算机网络课程网络层协议详解之:CIDR与路由聚集

哈工大计算机网络课程网络层协议详解之:CIDR与路由聚集 文章目录 哈工大计算机网络课程网络层协议详解之:CIDR与路由聚集CIDR与路由聚集CIDR路由聚集 CIDR与路由聚集 CIDR CIDR:无类域间路由(CIDR:Classless InterDo…...

C++ 教程(19)——日期 时间

C 日期 & 时间 C 标准库没有提供所谓的日期类型。C 继承了 C 语言用于日期和时间操作的结构和函数。为了使用日期和时间相关的函数和结构&#xff0c;需要在 C 程序中引用 <ctime> 头文件。 有四个与时间相关的类型&#xff1a;clock_t、time_t、size_t 和 tm。类型…...

React 应用 Effect Hook 函数式中操作生命周期

React Hook入门小案例 在函数式组件中使用state响应式数据给大家演示了最简单的 Hook操作 那么 我们继续 首先 Hook官方介绍 他没有破坏性是完全可选的 百分比兼容 也就说 我们一起的 类 class的方式也完全可以用 只要 react 16,8以上就可以使用 Hook本身不会影响你的react的理…...

Qwen3-VL-Reranker-8B应用场景:科研数据集图文代码混合检索

Qwen3-VL-Reranker-8B应用场景&#xff1a;科研数据集图文代码混合检索 1. 科研检索的痛点与解决方案 科研工作者在日常研究中经常面临这样的困境&#xff1a;手头有大量包含文本、图像、代码片段的研究资料&#xff0c;想要快速找到相关内容却异常困难。传统的文本检索工具只…...

别再让AI失忆了!手把手教你用Mem0为ChatGPT添加长期记忆(附Next.js实战代码)

为Next.js聊天应用注入长期记忆&#xff1a;Mem0集成实战指南 当你的AI助手开始记住用户的咖啡偏好和生日祝福时&#xff0c;整个交互体验会发生质的变化。本文将带你从零开始&#xff0c;在Next.js应用中实现这种"记忆魔法"。 1. 环境准备与Mem0初始化 首先创建一个…...

深度学习标量、向量、矩阵与张量(三)

1. 定位导航 线性代数是深度学习最核心的数学工具——没有之一。神经网络的前向传播本质上就是矩阵乘法加非线性激活&#xff1b;反向传播本质上就是链式法则在矩阵/向量上的应用&#xff1b;PCA、SVD、特征分解等工具贯穿从数据预处理到模型分析的全过程。 本篇是最基础的一篇…...

音频标注:从原理到产业,AI听懂世界的“翻译官”

音频标注&#xff1a;从原理到产业&#xff0c;AI听懂世界的“翻译官” 引言 在人工智能的浪潮中&#xff0c;计算机视觉的“看”和自然语言处理的“读”已广为人知&#xff0c;而让机器学会“听”——理解并解析复杂的声音世界&#xff0c;正成为新的前沿。这一切的基石&…...

从源码到上架:手把手教你用Android Studio打包绿豆TVBox APK,并修改Logo、启动图和包名

从零打造个性化TV应用&#xff1a;Android Studio深度定制指南 在流媒体内容消费爆发的时代&#xff0c;拥有一个专属的影视聚合平台成为许多技术爱好者的追求。绿豆TVBox这类开源项目为开发者提供了快速入门的跳板&#xff0c;但真正实现个性化部署需要跨越从源码编译到定制化…...

目标检测新手必看:如何用Python手写IOU计算函数(附完整代码)

目标检测实战&#xff1a;从零编写Python版IOU计算函数 刚接触目标检测时&#xff0c;最让人困惑的莫过于那些神秘的评估指标。其中IOU&#xff08;交并比&#xff09;就像一把尺子&#xff0c;能量化算法预测框与真实框的贴合程度。但纸上得来终觉浅&#xff0c;今天我们就用P…...

企业级流程引擎如何重塑低代码开发?基于Vite+Vue3的可视化建模实践

企业级流程引擎如何重塑低代码开发&#xff1f;基于ViteVue3的可视化建模实践 【免费下载链接】vite-vue-bpmn-process 基于 Vite TypeScript Vue3 NaiveUI Bpmn.js 的流程编辑器&#xff08;前端部分&#xff09;。支持高度自定义&#x1f680;&#x1f680;&#x1f680;。…...

Windows 10下5分钟搞定环回适配器安装,轻松连接eNSP模拟器

Windows 10环回适配器极简安装指南&#xff1a;无缝对接eNSP模拟器实战 网络技术学习者和工程师们经常需要在本地搭建实验环境&#xff0c;而环回适配器作为虚拟网络设备的关键组件&#xff0c;能够为eNSP等模拟器提供稳定的连接基础。本文将彻底解决Windows 10环境下环回适配…...

深入浅出ESP32蓝牙HID协议:从报文解析到游戏手柄开发

深入浅出ESP32蓝牙HID协议&#xff1a;从报文解析到游戏手柄开发 在物联网设备与人机交互技术深度融合的今天&#xff0c;蓝牙HID协议已成为连接智能硬件与终端设备的重要桥梁。ESP32作为一款集成Wi-Fi和蓝牙双模通信的微控制器&#xff0c;凭借其出色的性价比和丰富的开发资源…...

SpringBoot 3.2.0 项目里整合 Flowable 7.1.0,我踩过的那些坑和最佳实践

SpringBoot 3.2.0 项目里整合 Flowable 7.1.0&#xff0c;我踩过的那些坑和最佳实践 最近在重构公司内部的工作流系统时&#xff0c;我决定采用 SpringBoot 3.2.0 和 Flowable 7.1.0 的组合。本以为只是简单的依赖引入和配置&#xff0c;没想到从 POM 文件开始就踩了不少坑。这…...